/* Utilities: single-purpose helpers. Keep this file short. */
@layer utilities {
  .num { font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1; }
  .caps { font-size: var(--text-xs); font-weight: 500; letter-spacing: var(--tracking-caps); text-transform: uppercase; }
  .italic { font-style: italic; }
  .right { text-align: right; }
  .nowrap { white-space: nowrap; }
  .grow { flex-grow: 1; }
  .stack { display: flex; flex-direction: column; gap: var(--space-4); }
  .row { display: flex; align-items: center; gap: var(--space-3); }
  .visually-hidden {
    position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
    overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
  }

  @media print {
    .topbar, .topbar-rule, .page-header-actions, .filters, .pagination { display: none; }
    .page { padding: 0; max-width: none; }
    a { color: inherit; }
  }
}
