/* Cards: the main surface for content blocks. */

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

.card__title { font-size: var(--text-xl); margin-block-end: var(--space-2); }

.card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-block-end: var(--space-3);
}

.card--flat { box-shadow: none; }
.card--tight { padding: var(--space-4); }
.card--wide { max-inline-size: 720px; }

.card-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

@media (max-width: 639px) {
  .card { padding: var(--space-4); border-radius: var(--radius-md); }
}
