:host {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs, 0.25rem);
  padding: 0.125rem var(--space-sm, 0.5rem);
  border-radius: var(--radius-sm, 8px);
  font-size: var(--font-size-xs, 0.75rem);
  font-weight: var(--font-weight-semibold, 600);
  line-height: var(--line-height-normal, 1.5);
  white-space: nowrap;
}

:host.app-badge--neutral {
  background: var(--bg-secondary, #f4f4f5);
  color: var(--text-secondary, #6b7280);
}

:host.app-badge--primary {
  background: color-mix(in srgb, var(--primary-color, #2f6e5d) 15%, transparent);
  color: var(--primary-color, #2f6e5d);
}

:host.app-badge--success {
  background: color-mix(in srgb, var(--success-color, #2e7d32) 15%, transparent);
  color: var(--success-color, #2e7d32);
}

:host.app-badge--warning {
  background: color-mix(in srgb, var(--warning-color, #b26a00) 15%, transparent);
  color: var(--warning-color, #b26a00);
}

:host.app-badge--danger {
  background: color-mix(in srgb, var(--error-color, #c0392b) 15%, transparent);
  color: var(--error-color, #c0392b);
}

:host.app-badge--info {
  background: color-mix(in srgb, var(--info-color, #1d6fa5) 15%, transparent);
  color: var(--info-color, #1d6fa5);
}
