/* LovelyHair — Badge (ported from Badge.jsx) */
.lh-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-body);
  font-weight: var(--weight-bold);
  line-height: 1;
  white-space: nowrap;
}

/* Shape */
.lh-badge--pill {
  border-radius: var(--radius-pill);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.lh-badge--square {
  border-radius: var(--radius-xs);
  letter-spacing: 0.02em;
}

/* Size */
.lh-badge--sm { font-size: 10px; padding: 2px 7px; }
.lh-badge--md { font-size: 11px; padding: 4px 10px; }
.lh-badge--lg { font-size: 12px; padding: 5px 13px; }

/* Tones — marketing (distinct color per product flag) */
.lh-badge--sale       { background: var(--badge-sale);       color: #fff; }
.lh-badge--bestseller { background: var(--badge-bestseller); color: #fff; }
.lh-badge--new        { background: var(--badge-new);        color: #fff; }
.lh-badge--trending   { background: var(--badge-trending);   color: #fff; }
.lh-badge--limited    { background: var(--badge-limited);    color: var(--lh-gold-light); }

/* Tones — status */
.lh-badge--brand      { background: var(--color-primary);    color: #fff; }
.lh-badge--gold       { background: var(--lh-gold);          color: var(--lh-stone-900); }
.lh-badge--success    { background: var(--color-instock);    color: #fff; }
.lh-badge--softgreen  { background: var(--lh-success-soft);  color: var(--color-instock); }
.lh-badge--neutral    { background: var(--surface-sunken);   color: var(--text-muted); }
.lh-badge--dark       { background: var(--lh-stone-900);     color: #fff; }
