.card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
}

.card--elevated {
  box-shadow: var(--shadow-md);
  border: none;
}

.card--interactive {
  cursor: pointer;
  transition: border-color var(--transition-fast), transform var(--transition-fast);
}

.card--interactive:hover {
  border-color: var(--color-border-strong);
}

.card--interactive:active {
  transform: scale(0.99);
}

.card__title {
  font-size: var(--fs-md);
  font-weight: var(--fw-semibold);
  margin-bottom: var(--space-2);
}

.card__subtitle {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
  margin-bottom: var(--space-3);
}

.card__body {
  font-size: var(--fs-base);
  color: var(--color-text);
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  padding: var(--space-1) var(--space-2);
  font-size: var(--fs-xs);
  font-weight: var(--fw-semibold);
  letter-spacing: 0.02em;
  text-transform: uppercase;
  border-radius: var(--radius-sm);
}

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

.badge--success {
  background: var(--status-floor-ready-bg);
  color: var(--status-floor-ready);
}

.badge--warning {
  background: var(--status-backstock-bg);
  color: var(--status-backstock);
}

.badge--danger {
  background: var(--no-backstock-bg);
  color: var(--no-backstock);
}

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

.horseshoe {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  font-size: var(--fs-sm);
  font-weight: var(--fw-medium);
  border-radius: var(--radius-md);
  border: 1px solid currentColor;
}

.horseshoe__dot {
  width: 10px;
  height: 10px;
  border-radius: var(--radius-full);
  background: currentColor;
}

.horseshoe--green { color: var(--status-floor-ready); }
.horseshoe--yellow { color: var(--status-backstock); }
.horseshoe--red { color: var(--status-processing); }
