@font-face { font-family: "Instrument Serif"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/instrument-serif-400.woff2") format("woff2"); }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap; src: url("../fonts/manrope-variable.woff2") format("woff2"); }
:root { --paper: #F1EEEA; --ink: #1F1C1A; --muted: #675F58; --line: rgba(31,28,26,.14); --accent: #8A5E4C; color-scheme: light; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --paper: #161413; --ink: #EEE9E3; --muted: #A2988F; --line: rgba(238,233,227,.14); --accent: #D9B9A8; color-scheme: dark; } }
:root[data-theme="dark"] { --paper: #161413; --ink: #EEE9E3; --muted: #A2988F; --line: rgba(238,233,227,.14); --accent: #D9B9A8; color-scheme: dark; }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 1rem/1.7 "Manrope", "Segoe UI", system-ui, sans-serif; }
main { max-width: 760px; margin: 0 auto; padding-block: 48px 96px; padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
a { color: var(--accent); }
.back { display: inline-block; margin-bottom: 40px; font-size: .9rem; color: var(--muted); text-decoration: none; }
.back:hover { color: var(--ink); }
h1, h2 { font-family: "Instrument Serif", Georgia, serif; font-weight: 400; line-height: 1.1; margin: 0; }
h1 { font-size: clamp(2.4rem, 1.8rem + 2.5vw, 3.6rem); margin-bottom: 32px; }
h2 { font-size: 1.6rem; margin: 48px 0 12px; padding-top: 24px; border-top: 1px solid var(--line); }
h3 { font-size: 1rem; margin: 24px 0 6px; }
p, ul, address { margin: 0 0 14px; max-width: 65ch; }
address { font-style: normal; }
ul { padding-left: 20px; }
.toc { margin: 8px 0 40px; padding: 20px 24px; border: 1px solid var(--line); }
.toc ol { margin: 0; padding-left: 22px; columns: 2 240px; column-gap: 32px; }
.toc li { margin-bottom: 6px; break-inside: avoid; }
.toc a { text-decoration: none; }
.toc a:hover { text-decoration: underline; }
h2[id] { scroll-margin-top: 24px; }
.draft { border: 1px dashed var(--accent); padding: 14px 16px; color: var(--muted); font-size: .9rem; margin-bottom: 32px; }
.muted { color: var(--muted); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
