* { box-sizing: border-box; }
html { color-scheme: light; }
body { margin: 0; padding: calc(var(--rp-space-unit) * 4); background: var(--rp-bg); color: var(--rp-text); font: var(--rp-font-body)/var(--rp-leading-body) var(--rp-font-ui); }
main { max-width: var(--rp-story-measure); margin: calc(var(--rp-space-unit) * 8) auto; overflow-wrap: anywhere; }
h1 { font-size: calc(var(--rp-font-heading) * 1.5); }
h2 { font-size: var(--rp-font-heading); margin-top: calc(var(--rp-space-unit) * 8); }
p, li { margin-block: calc(var(--rp-space-unit) * 3); }
a { color: var(--rp-primary); text-underline-offset: var(--rp-space-unit); }
a:focus-visible { outline: 2px solid var(--rp-primary); outline-offset: 2px; }
@media (prefers-color-scheme: dark) { html { color-scheme: dark; } }
