@layer components {
  .card {
    background: var(--color-canvas);
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-medium);
    padding: var(--block-space-double);
    display: flex;
    flex-direction: column;
    gap: var(--block-space);
  }

  .card__title {
    font-size: var(--text-medium);
    font-weight: 600;
  }

  .stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: var(--block-space);
  }

  .stat-card {
    background: var(--color-canvas);
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-medium);
    padding: var(--block-space);
    display: flex;
    flex-direction: column;
    gap: 0.25em;
  }

  .stat-card__label {
    font-size: var(--text-x-small);
    color: var(--color-ink-dark);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }

  .stat-card__value {
    font-size: var(--text-x-large);
    font-weight: 700;
  }

  .badge {
    display: inline-flex;
    align-items: center;
    font-size: var(--text-x-small);
    font-weight: 600;
    padding: 0.2em 0.7em;
    border-radius: var(--radius-full);
    background: var(--color-canvas-subtle);
    color: var(--color-ink-dark);
  }

  .badge--positive {
    background: var(--color-positive-bg);
    color: var(--color-positive);
  }

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

  .badge--negative {
    background: var(--color-negative-bg);
    color: var(--color-negative);
  }

  .empty-state {
    text-align: center;
    color: var(--color-ink-dark);
    padding: var(--block-space-double);
  }
}
