/* Reading Room: the typography of a converted work.
   Shared by the reading view and the private proof page, so the person
   checking sees exactly what readers will see. Reader settings arrive as
   custom properties on .reading (--fs, --lh, --face, --para, --measure). */

.reading {
  --fs: 20px;
  --lh: 1.62;
  --para: 0em;
  --face: "Newsreader", Georgia, "Times New Roman", serif;
  font: var(--fs) / var(--lh) var(--face);
  hyphens: auto;
  overflow-wrap: break-word;
  -webkit-user-select: none;
  user-select: none;
}
.reading p { margin: 0 0 var(--para); text-indent: 1.5em; }
.reading h2 + p, .reading h3 + p, .reading h4 + p, .reading .brk + p, .reading figure + p,
.reading p.center, .reading p.right, .reading p.quote, .reading p.verse, .reading p.mono,
.reading p.aside, .reading p.note, .reading p.li, .reading table + p, .reading p:first-child { text-indent: 0; }
.reading h2, .reading h3, .reading h4 { font-weight: 500; line-height: 1.25; margin: 1.6em 0 1em; text-wrap: balance; }
.reading h2 { font-size: 1.3em; text-align: center; }
.reading h3 { font-size: 1.12em; }
.reading h4 { font-size: 1em; font-style: italic; }
.reading h2.code { font-family: "IBM Plex Mono", Consolas, monospace; font-size: 0.8em; letter-spacing: 0.12em; color: var(--ink-soft, #57524a); margin-top: 0.4em; }
.reading .center { text-align: center; }
.reading .right { text-align: right; }
.reading .quote { margin-left: 1.6em; margin-right: 1em; }
.reading .verse { white-space: pre-line; }
.reading .aside { margin: 1em 0; padding: 0.6em 0.9em; border-left: 2px solid var(--line-strong, rgba(28,26,23,.32)); }
.reading .mono, .reading span.mono { font-family: "IBM Plex Mono", "Courier New", Consolas, monospace; font-size: 0.86em; }
.reading p.mono { white-space: pre-wrap; margin: 1em 0 1em 1em; }
.reading .sc { font-variant: small-caps; }
.reading .caps { text-transform: uppercase; }
.reading .note { font-size: 0.86em; margin-top: 0.5em; }
.reading .li { margin-left: 1.4em; }
.reading .li.d2 { margin-left: 2.8em; }
.reading .li.d3, .reading .li.d4 { margin-left: 4.2em; }
.reading .li.bullet::before { content: "\2022"; display: inline-block; width: 1.1em; margin-left: -1.1em; }
.reading .brk { text-align: center; margin: 1.1em 0; letter-spacing: 0.5em; color: var(--ink-soft, #57524a); }
.reading figure { margin: 1.6em 0; text-align: center; }
.reading figure img { max-width: 100%; height: auto; cursor: zoom-in; -webkit-user-drag: none; }
.reading figcaption { font-size: 0.78em; font-style: italic; color: var(--ink-soft, #57524a); margin-top: 0.5em; }
.reading figure.exact img { box-shadow: 0 0 0 1px var(--line, rgba(28,26,23,.14)); background: #fff; }
.reading figure.exact figcaption { font: 500 11px "IBM Plex Mono", Consolas, monospace; letter-spacing: 0.08em; text-transform: uppercase; font-style: normal; }
.reading table { border-collapse: collapse; margin: 1.2em 0; font-size: 0.86em; display: block; overflow-x: auto; }
.reading td { border: 1px solid var(--line, rgba(28,26,23,.14)); padding: 0.3em 0.6em; vertical-align: top; }
.reading sup, .reading sub { line-height: 0; }
