.adv-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: 0.25em 0.65em;
  font-size: var(--font-size-xs);
  font-weight: var(--weight-semibold);
  line-height: 1.4;
  border-radius: var(--radius-pill);
  background: var(--color-primary-soft);
  color: var(--color-primary);
  white-space: nowrap;
}
.adv-badge--outline {
  background: transparent;
  border: 1px solid var(--color-line-strong);
  color: var(--color-muted);
}
.adv-badge--solid {
  background: var(--color-primary);
  color: var(--color-primary-contrast);
}
.adv-badge--accent { background: var(--color-accent-soft); color: var(--color-accent); }
.adv-badge--success { background: var(--color-success-soft); color: var(--color-success); }
.adv-badge--warning { background: var(--color-warning-soft); color: var(--color-warning); }
.adv-badge--danger { background: var(--color-danger-soft); color: var(--color-danger); }
.adv-badge--info { background: var(--color-info-soft); color: var(--color-info); }
.adv-badge--new {
  background: var(--color-accent);
  color: #ffffff;
  font-size: var(--font-size-2xs);
  letter-spacing: var(--letter-wide);
  text-transform: uppercase;
}
.adv-badge--dot { padding-left: 0.25em; }
.adv-badge--dot::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: var(--radius-circle);
  background: currentColor;
  flex-shrink: 0;
}

.adv-status {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-xs);
  font-weight: var(--weight-medium);
  color: var(--color-muted);
}
.adv-status__dot {
  width: 8px;
  height: 8px;
  border-radius: var(--radius-circle);
  background: var(--color-muted-soft);
  flex-shrink: 0;
}
.adv-status--success .adv-status__dot { background: var(--color-success); }
.adv-status--warning .adv-status__dot { background: var(--color-warning); }
.adv-status--danger .adv-status__dot { background: var(--color-danger); }
.adv-status--info .adv-status__dot { background: var(--color-info); }