/* Label "Gratis Ongkir" & "COD" di pojok kiri-bawah foto produk (js/promo-badges.js).
 * Overlay absolute: tidak mendorong konten, jadi tidak ada layout shift.
 * Badge sale/new tetap di kiri-ATAS dan wishlist di kanan-atas — tidak bertabrakan. */
.jl-pb { position:absolute; left:8px; bottom:8px; z-index:3; display:flex; flex-direction:column; align-items:flex-start; gap:4px; pointer-events:none; max-width:calc(100% - 16px); }
.jl-pb-pill { position:relative; overflow:hidden; display:inline-flex; align-items:center; gap:4px; max-width:100%; padding:4px 9px 4px 6px; border-radius:999px; font:800 10px/1.2 'Poppins',system-ui,sans-serif; letter-spacing:.2px; white-space:nowrap; box-shadow:0 1px 3px rgba(17,24,39,.28), 0 0 0 1px rgba(255,255,255,.55); }
.jl-pb-ic { width:13px; height:13px; flex:none; }
/* Teks gelap di atas latar pastel: kontras > 4.5:1 (AA). Warna hijau checkout #16a34a dipakai di ikon & garis. */
.jl-pb-free { background:#dcfce7; color:#14532d; }
.jl-pb-free .jl-pb-ic { color:#16a34a; }
.jl-pb-cod  { background:#E4EEFF; color:#2E4466; }
.jl-pb-cod .jl-pb-ic { color:#3A567F; }
.jl-pb-long { display:none; }
/* Kilau halus satu kali saat muncul. */
.jl-pb-pill::after { content:''; position:absolute; inset:0; background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%); transform:translateX(-120%); animation:jl-pb-shine 1.1s ease-out .5s 1 forwards; }
@keyframes jl-pb-shine { to { transform:translateX(120%); } }
@media (prefers-reduced-motion: reduce) { .jl-pb-pill::after { animation:none; display:none; } }
@media (min-width:721px) {
  .jl-pb { left:10px; bottom:10px; gap:5px; }
  .jl-pb-pill { font-size:11px; padding:5px 11px 5px 7px; }
  .jl-pb-ic { width:14px; height:14px; }
  .jl-pb-long { display:inline; }
}
/* Bar ukuran muncul saat hover (all-products) — jangan saling menutupi. */
.prod-card:hover .prod-sizes-hover ~ .jl-pb { opacity:0; }
