/* Porcelain & Ink colours (design/tokens/themes.json); system fonts so the page loads nothing from elsewhere. */
:root { --bg: #F7F7F4; --s1: #FFFFFF; --tx: #24262B; --tx2: #666A73; --pr: #7185C5; --ln: #E7E8EC; color-scheme: light; }
@media (prefers-color-scheme: dark) {
  :root { --bg: #17191F; --s1: #22252D; --tx: #F3F4F6; --tx2: #A8ACB5; --pr: #9DACE6; --ln: #343842; color-scheme: dark; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--tx);
  font: 16px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 32px 16px 64px; }
h1 { font-size: 34px; line-height: 1.1; letter-spacing: -0.02em; margin: 8px 0 4px; }
h2 { font-size: 19px; margin: 32px 0 8px; }
p, li { color: var(--tx); }
.meta, .lead { color: var(--tx2); }
.lead { font-size: 18px; }
a { color: var(--pr); text-underline-offset: 3px; }
.brand { font-weight: 700; font-size: 14px; margin: 0; }
.brand a { color: var(--tx); text-decoration: none; }
.dot { display: inline-block; width: 8px; height: 8px; border-radius: 4px; background: var(--pr); margin-right: 8px; vertical-align: 1px; }
.summary { background: var(--s1); border: 1px solid var(--ln); border-radius: 14px; padding: 4px 20px 8px; margin-top: 24px; }
.summary h2 { margin-top: 16px; }
.links { padding-left: 20px; }
ul, ol { padding-left: 22px; }
