.sr-only {
  position: absolute !important;
  inline-size: 0.0625rem !important;
  block-size: 0.0625rem !important;
  padding: 0 !important;
  margin: -0.0625rem !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.flow > * + * { margin-block-start: var(--density-gap); }
.cluster { display: flex; flex-wrap: wrap; gap: var(--density-gap); align-items: center; }
.grid-auto { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(18rem, 100%), 1fr)); gap: var(--density-gap); }
.scroll-region { max-inline-size: 100%; overflow: auto; overscroll-behavior: contain; }
.full-bleed { inline-size: 100vi; margin-inline: calc(50% - 50vi); }
.tabular { font-variant-numeric: tabular-nums; }
.muted { color: var(--color-foreground-muted); }
.danger { color: var(--color-danger); }
