@layer components{.badge{align-items:center;gap:var(--space-xs);min-width:0;max-width:100%;font-family:var(--font-sans);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);white-space:nowrap;text-overflow:ellipsis;border-radius:var(--radius-full);display:inline-flex;overflow:hidden}.badge--sm{padding:var(--space-2xs) var(--space-sm);font-size:var(--text-2xs)}.badge--md{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs)}.badge--default{background-color:var(--bg-tertiary);color:var(--text-primary)}.badge--healthy{background-color:color-mix(in srgb, var(--status-healthy) 20%, transparent);color:var(--status-healthy)}.badge--healthy .badge__dot{background-color:var(--status-healthy)}.badge--unhealthy{background-color:color-mix(in srgb, var(--status-unhealthy) 20%, transparent);color:var(--status-unhealthy)}.badge--unhealthy .badge__dot{background-color:var(--status-unhealthy)}.badge--degraded{background-color:color-mix(in srgb, var(--status-degraded) 20%, transparent);color:var(--status-degraded)}.badge--degraded .badge__dot{background-color:var(--status-degraded)}.badge--unknown{background-color:color-mix(in srgb, var(--status-unknown) 20%, transparent);color:var(--status-unknown)}.badge--unknown .badge__dot{background-color:var(--status-unknown)}.badge--stabilizing{background-color:color-mix(in srgb, var(--status-stabilizing) 20%, transparent);color:var(--status-stabilizing)}.badge--stabilizing .badge__dot{background-color:var(--status-stabilizing);animation:pulse var(--duration-pulse) linear infinite}.badge--stale{background-color:color-mix(in srgb, var(--status-degraded) 20%, transparent);color:var(--status-degraded)}.badge--stale .badge__dot{background-color:var(--status-degraded)}.badge--missing{background-color:color-mix(in srgb, var(--fulfillment-missing) 20%, transparent);color:var(--fulfillment-missing)}.badge--missing .badge__dot{background-color:var(--fulfillment-missing)}.badge--upgradable{background-color:color-mix(in srgb, var(--fulfillment-upgradable) 20%, transparent);color:var(--fulfillment-upgradable)}.badge--upgradable .badge__dot{background-color:var(--fulfillment-upgradable)}.badge--fulfilled{background-color:color-mix(in srgb, var(--fulfillment-fulfilled) 20%, transparent);color:var(--fulfillment-fulfilled)}.badge--fulfilled .badge__dot{background-color:var(--fulfillment-fulfilled)}.badge--fulfilledExternally{background-color:color-mix(in srgb, var(--fulfillment-external) 20%, transparent);color:var(--fulfillment-external)}.badge--fulfilledExternally .badge__dot{background-color:var(--fulfillment-external)}.badge--partial{background-color:color-mix(in srgb, var(--fulfillment-partial) 20%, transparent);color:var(--fulfillment-partial)}.badge--partial .badge__dot{background-color:var(--fulfillment-partial)}.badge--primary{background-color:color-mix(in srgb, var(--accent-primary) 20%, transparent);color:var(--accent-primary)}.badge--primary .badge__dot{background-color:var(--accent-primary)}.badge--warning{background-color:color-mix(in srgb, var(--status-degraded) 20%, transparent);color:var(--status-degraded)}.badge--warning .badge__dot{background-color:var(--status-degraded)}.badge--info{background-color:color-mix(in srgb, var(--accent-secondary) 20%, transparent);color:var(--accent-secondary)}.badge--info .badge__dot{background-color:var(--accent-secondary)}.badge--success{background-color:color-mix(in srgb, var(--status-healthy) 20%, transparent);color:var(--status-healthy)}.badge--success .badge__dot{background-color:var(--status-healthy)}.badge--running{background-color:color-mix(in srgb, var(--status-stabilizing) 20%, transparent);color:var(--status-stabilizing)}.badge--running .badge__dot{background-color:var(--status-stabilizing);animation:pulse var(--duration-pulse) linear infinite}.badge--pending{background-color:color-mix(in srgb, var(--text-muted) 20%, transparent);color:var(--text-muted)}.badge--pending .badge__dot{background-color:var(--text-muted)}.badge--completed{background-color:color-mix(in srgb, var(--status-healthy) 20%, transparent);color:var(--status-healthy)}.badge--completed .badge__dot{background-color:var(--status-healthy)}.badge--cancelled{background-color:color-mix(in srgb, var(--status-degraded) 20%, transparent);color:var(--status-degraded)}.badge--cancelled .badge__dot{background-color:var(--status-degraded)}.badge--outline{background-color:var(--bg-secondary);border:1px solid var(--border-default)}.badge__count{font-family:var(--font-mono);font-weight:var(--weight-semibold)}.badge--downloading{background-color:color-mix(in srgb, var(--accent-primary) 20%, transparent);color:var(--accent-primary)}.badge--downloading .badge__dot{background-color:var(--accent-primary);animation:pulse var(--duration-pulse) linear infinite}.badge--queued{background-color:color-mix(in srgb, var(--status-degraded) 20%, transparent);color:var(--status-degraded)}.badge--queued .badge__dot{background-color:var(--status-degraded)}.badge--grabbed{background-color:color-mix(in srgb, var(--status-unknown) 20%, transparent);color:var(--status-unknown)}.badge--grabbed .badge__dot{background-color:var(--status-unknown)}.badge--paused{background-color:color-mix(in srgb, var(--text-muted) 20%, transparent);color:var(--text-muted)}.badge--paused .badge__dot{background-color:var(--text-muted)}.badge--stalled{background-color:color-mix(in srgb, var(--status-degraded) 20%, transparent);color:var(--status-degraded)}.badge--stalled .badge__dot{background-color:var(--status-degraded)}.badge--downloaded{background-color:color-mix(in srgb, var(--status-healthy) 20%, transparent);color:var(--status-healthy)}.badge--downloaded .badge__dot{background-color:var(--status-healthy)}.badge--importing{background-color:color-mix(in srgb, var(--accent-secondary) 20%, transparent);color:var(--accent-secondary)}.badge--importing .badge__dot{background-color:var(--accent-secondary);animation:pulse var(--duration-pulse) linear infinite}.badge--imported{background-color:color-mix(in srgb, var(--status-healthy) 20%, transparent);color:var(--status-healthy)}.badge--imported .badge__dot{background-color:var(--status-healthy)}.badge--failed{background-color:color-mix(in srgb, var(--status-unhealthy) 20%, transparent);color:var(--status-unhealthy)}.badge--failed .badge__dot{background-color:var(--status-unhealthy)}.badge__dot{border-radius:var(--radius-full);background-color:currentColor;flex-shrink:0;width:6px;height:6px}@media (width<=480px){.badge--sm{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs)}.badge__dot{width:8px;height:8px}}}
