/* Status pills + category tags */
.badge {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-1);
    padding: var(--spacing-1) var(--spacing-3);
    border-radius: var(--radius-pill);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    line-height: 1.4;
    white-space: nowrap;
}
.badge--info { background: var(--color-info-bg); color: var(--color-info); }
.badge--success { background: var(--color-success-bg); color: var(--color-success); }
.badge--warning { background: var(--color-warning-bg); color: var(--color-warning); }
.badge--danger { background: var(--color-danger-bg); color: var(--color-danger); }
.badge--neutral { background: var(--color-neutral-badge-bg); color: var(--color-neutral-badge); }

/* Category tag — squarer, uppercase */
.tag {
    display: inline-flex;
    align-items: center;
    padding: var(--spacing-05) var(--spacing-2);
    border-radius: var(--radius-sm);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: var(--color-neutral-badge-bg);
    color: var(--color-text-secondary);
}

/* Status dot (for "Completed"/"Pending" inline labels) */
.status-dot { display: inline-flex; align-items: center; gap: var(--spacing-2); font-weight: var(--font-weight-medium); }
.status-dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--color-neutral-badge); }
.status-dot--success::before { background: var(--color-success); }
.status-dot--warning::before { background: var(--color-warning); }
.status-dot--info::before { background: var(--color-info); }
.status-dot--danger::before { background: var(--color-danger); }
