@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("/fonts/fraunces-latin-full-normal.woff2") format("woff2"); }
@font-face { font-family: "Fraunces"; font-style: italic; font-weight: 100 900; font-display: swap; src: url("/fonts/fraunces-latin-full-italic.woff2") format("woff2"); }
@font-face { font-family: "Figtree"; font-style: normal; font-weight: 300 900; font-display: swap; src: url("/fonts/figtree-latin-wght-normal.woff2") format("woff2"); }
:root {
  --bg: #F7F2FB; --ink: #1C1230; --soft: rgba(28, 18, 48, .72); --faint: rgba(28, 18, 48, .5); --line: rgba(28, 18, 48, .13); --accent: #6A52D1; --card: rgba(28, 18, 48, .05);
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root { --bg: #170e2c; --ink: #F7F2FB; --soft: rgba(247, 242, 251, .76); --faint: rgba(247, 242, 251, .5); --line: rgba(247, 242, 251, .15); --accent: #B8A4FF; --card: rgba(255, 255, 255, .06); }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font-family: "Figtree", -apple-system, sans-serif; -webkit-font-smoothing: antialiased; }
main { max-width: 680px; margin: 0 auto; padding: calc(env(safe-area-inset-top, 0px) + 20px) 22px calc(env(safe-area-inset-bottom, 0px) + 48px); }
.back { display: inline-flex; align-items: center; gap: 8px; color: var(--soft); text-decoration: none; font-size: 15px; padding: 10px 0; }
.back b { font-family: "Fraunces", serif; font-style: italic; font-weight: 400; font-size: 20px; color: var(--ink); }
h1 { font-family: "Fraunces", serif; font-weight: 400; font-variation-settings: "SOFT" 100, "opsz" 96; font-size: clamp(34px, 9vw, 46px); line-height: 1.08; margin: 18px 0 8px; letter-spacing: -.01em; }
.meta { color: var(--faint); font-size: 14px; margin: 0 0 26px; }
.summary { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 16px 18px; margin: 0 0 30px; }
.summary p { margin: 0; }
h2 { font-family: "Fraunces", serif; font-weight: 450; font-variation-settings: "SOFT" 100, "opsz" 48; font-size: 22px; line-height: 1.25; margin: 32px 0 10px; }
p, li { font-size: 16px; line-height: 1.62; color: var(--soft); }
p { margin: 0 0 12px; }
strong { color: var(--ink); font-weight: 600; }
ul { padding-left: 20px; margin: 0 0 12px; }
li { margin-bottom: 6px; }
a { color: var(--accent); text-underline-offset: 2px; }
.foot { margin-top: 40px; padding-top: 18px; border-top: 1px solid var(--line); font-size: 14px; color: var(--faint); }
