/* =====================================================================
   Obra Certa · Favoritos (lista de desejos)
   - Estado ativo dos coraçõezinhos (cards + PDP), site-wide.
   - Grade de produtos salvos na tela "Favoritos" da conta.
   ===================================================================== */

/* ── Coração ativo (todos os contextos) ──────────────────────────── */
.nob-arc-card__wish.is-fav,
.mo-pcard__fav.is-fav,
.pdp-gal__icbtn.is-fav,
.pdp-rcard__fav.is-fav,
.pdp-fav-btn.is-fav{
  color:#e0245e;
  border-color:#e0245e;
}
.pdp-fav-btn.is-fav{ background:#fdeef2; }

/* Glifo de coração levemente maior p/ leitura nítida do ♥ */
[data-fav-glyph]{ font-size:16px; line-height:1; }

/* Micro-animação ao favoritar */
.is-fav-pulse{ animation:obFavPop .28s ease; }
@keyframes obFavPop{
  0%{ transform:scale(1); }
  40%{ transform:scale(1.28); }
  100%{ transform:scale(1); }
}

/* ── Botão "Salvar em favoritos" na PDP (ações da compra) ────────── */
.pdp-fav-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  height:52px; padding:0 22px; border-radius:13px;
  border:1.5px solid #d9d4e0; background:#fff; color:var(--lc-ink-2);
  font-weight:800; font-size:14.5px; cursor:pointer;
  transition:color .15s, border-color .15s, background .15s, transform .12s;
}
.pdp-fav-btn:hover{ border-color:#e0245e; color:#e0245e; transform:translateY(-1px); }
.pdp-fav-btn__ic{ font-size:18px; line-height:1; }

/* ── Grade de favoritos na conta ─────────────────────────────────── */
.ob-fav-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(168px, 1fr));
  gap:16px;
}
.ob-fav-card{
  position:relative;
  display:flex; flex-direction:column; gap:8px;
  padding:14px;
  border:1px solid var(--line, var(--lc-line));
  border-radius:14px;
  background:#fff;
}
.ob-fav-card__remove{
  position:absolute; top:8px; right:8px; z-index:2;
  width:32px; height:32px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:#fff; border:1px solid var(--line, var(--lc-line));
  color:var(--ink-3, var(--lc-ink-3)); cursor:pointer; padding:0;
  box-shadow:0 1px 3px rgba(20,8,40,.07);
  transition:color .15s, border-color .15s;
}
.ob-fav-card__remove:hover{ color:var(--hot, var(--lc-danger)); border-color:var(--hot, var(--lc-danger)); }
.ob-fav-card__thumb{
  display:block; aspect-ratio:1/1; border-radius:10px; overflow:hidden;
  background:var(--paper-2, var(--lc-paper-2));
}
.ob-fav-card__thumb img{ width:100%; height:100%; object-fit:cover; }
.ob-fav-card__name{
  font-size:14px; font-weight:800; line-height:1.35;
  color:var(--ink, var(--lc-ink)); text-decoration:none;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.ob-fav-card__name:hover{ color:var(--purple, var(--lc-primary)); }
.ob-fav-card__price{
  font-size:15px; font-weight:900; color:var(--purple, var(--lc-primary));
  margin-top:auto;
}
.ob-fav-card__price del{ color:var(--ink-4, var(--lc-ink-4)); font-weight:700; font-size:12.5px; margin-right:5px; }
.ob-fav-card .ob-acc-btn{ margin-top:6px; height:44px; font-size:13.5px; }

@media (max-width:600px){
  .ob-fav-grid{ grid-template-columns:repeat(2, 1fr); gap:12px; }
}
