.status-badge,
.priority-badge,
.method-badge,
.badge,
.upcoming-item__priority {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  min-height: 1.85rem;
  padding: 0.35rem 0.7rem;
  border-radius: var(--radius-full);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  letter-spacing: var(--tracking-wide);
}

.status-badge--lg {
  min-height: 2.1rem;
  padding-inline: 0.9rem;
  font-size: var(--text-sm);
}

.status-badge--draft,
.status-badge--cancelled,
.status-badge--terminated,
.status-badge--inactive,
.status-badge--archived,
.priority-badge--low,
.badge--secondary {
  background: var(--color-gray-100);
  color: var(--color-gray-700);
}

.status-badge--pending,
.status-badge--pending_review,
.status-badge--reserved,
.status-badge--under_maintenance,
.priority-badge--high,
.upcoming-item__priority--high,
.upcoming-item__priority--urgent {
  background: var(--color-warning-100);
  color: var(--text-warning-strong);
}

.status-badge--active,
.status-badge--paid,
.status-badge--resolved,
.status-badge--occupied,
.priority-badge--normal,
.priority-badge--medium,
.badge--primary,
.upcoming-item__priority--normal {
  background: var(--color-success-100);
  color: var(--text-success-strong);
}

.status-badge--in_progress,
.status-badge--vacant,
.badge--info,
.upcoming-item__priority--low {
  background: var(--color-primary-100);
  color: var(--text-brand-primary);
}

.status-badge--overdue,
.priority-badge--urgent,
.method-badge--cash {
  background: var(--color-danger-100);
  color: var(--text-danger-strong);
}

.method-badge--mpesa {
  background: rgba(0, 166, 81, 0.12);
  color: #0f7a3b;
}

.method-badge--bank_transfer {
  background: var(--color-primary-100);
  color: var(--text-brand-primary);
}

.method-badge--card,
.method-badge--other {
  background: var(--color-gray-100);
  color: var(--text-secondary);
}
