/* u.css — utility classes replacing inline style= attributes.
 *
 * WHY: the site is served with `style-src 'self'` and NO 'unsafe-inline'.
 * Every inline style= attribute was therefore DROPPED by the browser —
 * verified by rendering the same markup with and without the CSP: the
 * styled text rendered unstyled under it. 141 attributes across 20 live
 * pages were dead, including the site footer on each of them.
 *
 * These declarations are the originals, moved somewhere the browser will
 * honour them. Adding a new inline style= re-introduces the bug —
 * tests/test_no_inline_styles.py fails the suite if one appears.
 */

.u-bg-btc { background:#f7931a;color:#fff; }
.u-bg-cream { background:#f7f1e3; }
.u-bg-green { background:#3a6a4c; }
.u-bg-ink { background:#14110d; }
.u-block-center-plain { display:block;text-align:center;text-decoration:none; }
.u-center-note { text-align:center;margin-top:8px;color:var(--muted);font-size:13px; }
.u-center-soft { text-align:center;margin:14px 0 8px;font-size:14px;color:var(--text-soft); }
.u-codeblock { background:rgba(74,154,115,0.04);padding:14px 18px;border-radius:6px;font-family:Menlo,Consolas,monospace;font-size:14px; }
.u-confirm { color:var(--confirm); }
.u-endnote { color:var(--muted);font-size:13px;margin-top:48px; }
.u-endnote-ruled { color:var(--muted);font-size:13px;margin-top:48px;border-top:1px solid var(--line-soft);padding-top:18px; }
.u-eyebrow { font-size:12px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);margin:48px 0 8px; }
.u-fs-14 { font-size:14px; }
.u-green { color:#3a6a4c; }
.u-ink-medium { color:var(--ink);font-weight:500; }
.u-mt-14 { margin-top:14px; }
.u-mt-32 { margin-top:32px; }
.u-mt-40 { margin-top:40px; }
.u-mt-48 { margin-top:48px; }
.u-mt-6 { margin-top:6px; }
.u-mt-8 { margin-top:8px; }
.u-muted { color:var(--muted); }
.u-narrow { max-width:540px;margin:0 auto 60px;padding:0 8px; }
.u-plainlink { color:inherit;text-decoration:none; }
.u-right-note { text-align:right;margin-top:4px;color:var(--muted);font-size:12px; }
.u-sitefoot { text-align:center;color:var(--muted);font-size:13px;padding:32px 0; }
