/* CPRI Module 015 — small utility helpers (token-based; not a utility framework). */
.cpri-stack > * + * { margin-top: var(--sp-4); }
.cpri-stack-sm > * + * { margin-top: var(--sp-2); }
.cpri-row { display: flex; gap: var(--sp-4); }
.cpri-row--wrap { flex-wrap: wrap; }
.cpri-row--between { justify-content: space-between; }
.cpri-row--center { align-items: center; }
.cpri-flex-1 { flex: 1; min-width: 0; }
.cpri-text-muted { color: var(--text-muted); }
.cpri-text-sm { font-size: var(--fs-sm); }
.cpri-text-right { text-align: right; }
.cpri-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cpri-mt-0 { margin-top: 0; } .cpri-mb-0 { margin-bottom: 0; }
.cpri-mb-4 { margin-bottom: var(--sp-4); } .cpri-mb-6 { margin-bottom: var(--sp-6); }
.cpri-mt-6 { margin-top: var(--sp-6); }
.cpri-hidden { display: none; }
.cpri-divider { border-top: 1px solid var(--border); margin: var(--sp-5) 0; }
.cpri-pill { display: inline-block; padding: 2px var(--sp-2); background: var(--surface-subtle);
  border-radius: var(--radius-pill); font-size: var(--fs-xs); color: var(--text-secondary); }

/* Layout utilities (CSP-safe; replace inline styles). */
.cpri-container { max-width: var(--content-max); margin: 0 auto; padding: 0 var(--sp-6); }
.cpri-container--pad { padding: var(--sp-12) var(--sp-6); }
.cpri-w-full { width: 100%; }
.cpri-center { justify-content: center; }
.cpri-gap-2 { gap: var(--sp-2); }
.cpri-gap-3 { gap: var(--sp-3); }
.cpri-p0 { padding: 0; }
.cpri-list { padding-left: var(--sp-5); }
.cpri-list.cpri-stack > li + li { margin-top: var(--sp-2); }
.cpri-fs-lg { font-size: var(--fs-lg); }
.cpri-opacity-70 { opacity: 0.7; }

/* CSP-safe helpers replacing remaining inline styles. */
.cpri-stat--link { text-decoration: none; color: inherit; }
.cpri-stat--link:hover { text-decoration: none; box-shadow: var(--shadow-md); }
.cpri-divider--tight { margin: var(--sp-2) 0; }
.cpri-auth__main { width: 100%; max-width: 420px; }
.cpri-menu-name { padding: var(--sp-2) var(--sp-3); }
