.badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  padding: 4px 10px;
  font-size: var(--fs-xs);
  font-weight: 600;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-radius: var(--radius-sm);
  background-color: var(--color-bg);
  color: var(--color-text);
  border: var(--border-width) solid var(--color-border);
}

.badge--success {
  background-color: var(--color-status-available);
  color: #fff;
  border-color: var(--color-status-available);
}

.badge--warning {
  background-color: var(--color-status-reserved);
  color: #fff;
  border-color: var(--color-status-reserved);
}

.badge--danger {
  background-color: var(--color-status-sold);
  color: #fff;
  border-color: var(--color-status-sold);
}

.badge--info {
  background-color: var(--color-status-featured);
  color: #fff;
  border-color: var(--color-status-featured);
}

.badge--neutral {
  background-color: var(--color-bg);
  color: var(--color-text-muted);
  border-color: var(--color-border);
}


.badge-stack {
    position: absolute;
    top: 12px;
    left: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    z-index: 5;
    pointer-events: none;
}

.badge {
    display: inline-block;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 3px;
    line-height: 1.2;
    color: #fff;
    background: var(--color-secondary);
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    pointer-events: auto;
}

.badge--featured {
    background: var(--color-primary);
}

.badge--status.badge--reserved {
    background: #FF9800;
    color: #fff;
}

.badge--status.badge--sold {
    background: var(--color-price);
    color: #fff;
}

.badge--status.badge--available {
    background: var(--color-primary);
    color: #fff;
}

.inv-card {
    position: relative;
}

.inv-detail__media {
    position: relative;
}

.inv-detail__media .badge-stack {
    top: 16px;
    left: 16px;
}

.badge-stack--inline {
    position: static;
    flex-direction: row;
}
