/* Ícones dos cards, com rótulos acessíveis preservados. */
.catalog-card .sc-featured-icon,.hp-image>.sc-featured-icon{
 position:absolute;top:12px;left:12px;z-index:3;display:block;width:38px;height:38px;padding:0!important;
 border-radius:50%;background:rgba(255,255,255,.95)!important;
}
.sc-featured-icon::before{content:"";display:block;width:100%;height:100%;background:url('/assets/img/product-icons/destaque.png') center/125% no-repeat}
.catalog-card .favorite-card-btn,.hp-card .favorite-card-btn{
 font-size:0!important;background:#fff!important;color:transparent!important;border:1px solid #e4e4e4!important;
 width:42px;height:42px;border-radius:50%!important;padding:0!important;
}
.catalog-card .favorite-card-btn::before,.hp-card .favorite-card-btn::before{
 content:"";display:block;width:100%;height:100%;background:url('/assets/img/product-icons/favorito.png') center/105% no-repeat;
}
.catalog-card .favorite-card-btn.active::before,.hp-card .favorite-card-btn.active::before{background-image:url('/assets/img/product-icons/favorito-ativo.png')}
.hp-card{position:relative}
.hp-card .favorite-card-btn{position:absolute;top:12px;right:12px;z-index:5;cursor:pointer}
.favorite-card-btn:focus-visible{outline:2px solid #16877f;outline-offset:3px}

/* Ícones menores, livres de moldura; mantém área confortável para clicar. */
.catalog-card .sc-featured-icon,.hp-image>.sc-featured-icon{
 width:28px!important;height:28px!important;top:10px!important;left:10px!important;
 background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
}
.sc-featured-icon::before{background-size:125%!important}
.catalog-card .favorite-card-btn,.hp-card .favorite-card-btn,
.catalog-card .favorite-card-btn.active,.hp-card .favorite-card-btn.active{
 width:38px!important;height:38px!important;right:6px!important;top:6px!important;
 background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;
}
.catalog-card .favorite-card-btn::before,.hp-card .favorite-card-btn::before{
 width:26px!important;height:26px!important;margin:6px!important;background-size:105%!important;
}

/* Favorito: contorno branco; selecionado verde com borda branca. */
.catalog-card .favorite-card-btn::before,.hp-card .favorite-card-btn::before{
 background-image:url('/assets/img/product-icons/favorito.png');
 filter:brightness(0) invert(1);
}
.catalog-card .favorite-card-btn.active::before,.hp-card .favorite-card-btn.active::before{
 background-image:url('/assets/img/product-icons/favorito-ativo.png');
 filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff);
}

/* Estado não selecionado: coração branco preenchido com contorno verde. */
.catalog-card .favorite-card-btn::before,.hp-card .favorite-card-btn::before{
 background-image:url('/assets/img/product-icons/favorito-ativo.png');
 filter:brightness(0) invert(1) drop-shadow(1px 0 0 #25aba2) drop-shadow(-1px 0 0 #25aba2) drop-shadow(0 1px 0 #25aba2) drop-shadow(0 -1px 0 #25aba2);
}
.catalog-card .favorite-card-btn.active::before,.hp-card .favorite-card-btn.active::before{
 background-image:url('/assets/img/product-icons/favorito-ativo.png');
 filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff);
}

/* Destaque em faixa verde com ponta em seta. */
.catalog-card .sc-featured-icon,.hp-image>.sc-featured-icon{
 top:14px!important;left:0!important;width:108px!important;height:30px!important;
 border-radius:0!important;background:transparent!important;overflow:visible!important;
 filter:drop-shadow(0 2px 2px rgba(0,0,0,.16));
}
.catalog-card .sc-featured-icon::before,.hp-image>.sc-featured-icon::before{
 content:"DESTAQUE";display:flex;align-items:center;justify-content:center;
 width:100%;height:100%;box-sizing:border-box;padding:0 12px 0 5px;
 background:linear-gradient(90deg,#16877f,#25aba2 45%,#16877f)!important;
 clip-path:polygon(0 0,85% 0,100% 50%,85% 100%,0 100%);
 color:#fff;font:700 10px/1 Arial,Helvetica,sans-serif;letter-spacing:.8px;
}
