/* Badge Component Styles */ @layer components { .sb-badge { display: inline-flex; align-items: center; gap: 0.25rem; padding: 0.125rem 0.5rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 600; line-height: 1.5; } .sb-badge-dot { width: 0.375rem; height: 0.375rem; border-radius: 9999px; } .sb-badge-completed { background-color: var(--sb-success-light); color: var(--sb-success); } .sb-badge-completed .sb-badge-dot { background-color: var(--sb-success); } .sb-badge-failed { background-color: var(--sb-danger-light); color: var(--sb-danger); } .sb-badge-failed .sb-badge-dot { background-color: var(--sb-danger); } .sb-badge-running { background-color: var(--sb-info-light); color: var(--sb-info); } .sb-badge-running .sb-badge-dot { background-color: var(--sb-info); animation: pulse 1.5s ease-in-out infinite; } .sb-badge-stopped, .sb-badge-abandoned { background-color: var(--sb-warning-light); color: var(--sb-warning); } .sb-badge-stopped .sb-badge-dot, .sb-badge-abandoned .sb-badge-dot { background-color: var(--sb-warning); } .sb-badge-unknown { background-color: var(--sb-surface-hover); color: var(--sb-text-muted); } .sb-badge-unknown .sb-badge-dot { background-color: var(--sb-text-muted); } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } } }