/* Small, composable utility classes. Token-driven; no external framework. */

/* Screen-reader-only, but focusable when tabbed to. */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.stack {
  display: flex;
  flex-direction: column;
}
.stack > * + * {
  margin-top: var(--space-4);
}
.stack--lg > * + * {
  margin-top: var(--space-6);
}

.cluster {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

.text-muted {
  color: var(--color-text-muted);
}
.text-center {
  text-align: center;
}

.hide-sm {
  display: initial;
}
@media (max-width: 40rem) {
  .hide-sm {
    display: none;
  }
}

.mt-6 {
  margin-top: var(--space-6);
}
.mt-7 {
  margin-top: var(--space-7);
}
.mb-4 {
  margin-bottom: var(--space-4);
}
