@charset "UTF-8";

:root { color-scheme: light; font-family: Georgia, "Times New Roman", serif; line-height: 1.55; }
body { margin: 5%; color: #211d17; background: #fffdf8; }
main, article, section { display: block; }
h1, h2, h3, h4 { line-height: 1.15; break-after: avoid; page-break-after: avoid; }
p, li { orphans: 3; widows: 3; }
a { color: #654218; text-decoration-thickness: .06em; text-underline-offset: .12em; }
blockquote { margin-inline: 1.5em; font-size: .94em; }
code { font-family: ui-monospace, monospace; font-size: .86em; overflow-wrap: anywhere; }
table { border-collapse: collapse; font-size: .78em; margin-block: 1.25em; max-width: 100%; }
th, td { border: 1px solid #877964; padding: .25em .4em; vertical-align: top; overflow-wrap: anywhere; }
thead { display: table-header-group; }
tr, img, figure { break-inside: avoid; page-break-inside: avoid; }
img, svg { display: block; max-width: 100%; height: auto; }
.title-page { min-height: 70vh; display: flex; flex-direction: column; justify-content: center; text-align: center; break-after: page; page-break-after: always; }
.series { font-variant: small-caps; letter-spacing: .06em; }
.source-title { font-style: italic; }
.frontmatter { break-after: page; page-break-after: always; }
.editorial-note { border: 2px solid #8b6b3d; padding: .8em 1em; margin-block: 1.5em; break-inside: avoid; }
.unclear { font-style: italic; }
.editorial-addition::before { content: "["; }
.editorial-addition::after { content: "]"; }
dl { display: grid; grid-template-columns: max-content 1fr; gap: .35em 1em; }
dt { font-weight: bold; }
dd { margin: 0; }

@page {
  size: 6in 9in;
  margin: .72in .65in .78in;
  @top-center { content: string(work-title); font-size: 8pt; color: #645c50; }
  @bottom-center { content: counter(page); font-size: 8pt; }
}
@page :first { @top-center { content: none; } @bottom-center { content: none; } }
.reading-text > h1:first-child { string-set: work-title content(); }

@media print {
  body { margin: 0; background: white; }
  a { color: inherit; text-decoration: none; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: .75em; overflow-wrap: anywhere; }
  table { font-size: 7pt; width: 100%; table-layout: fixed; }
}

@media (max-width: 36rem) {
  body { margin: 1rem; }
  dl { display: block; }
  dd { margin: 0 0 .75em; }
  table { display: block; overflow-x: auto; }
}
