.document-sheet.paper-book {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  min-width: 0;
}
.paper-page {
  margin: 0 0 28px;
  min-width: 0;
  container-type: inline-size;
}
.paper-page-caption {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 2px 12px;
  font: 11px/1.5 var(--sans);
  color: var(--muted);
}
.paper-page-caption a {
  color: var(--accent);
}
.original-page {
  position: relative;
  width: 100%;
  background: #fff;
  box-shadow: 0 3px 17px #0000001f;
  container-type: inline-size;
  isolation: isolate;
}
.page-facsimile {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  user-select: none;
}
.page-text-layer {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.page-text-layer span {
  position: absolute;
  display: block;
  white-space: pre;
  line-height: 1;
  color: transparent;
  overflow: hidden;
  cursor: text;
}
.page-text-layer span::selection {
  background: #92435838;
  color: transparent;
}
.page-anchor {
  position: absolute;
  pointer-events: none;
  scroll-margin: 50px;
}
.page-anchor.highlight,
.reflow-item.highlight,
.document-item.highlight {
  background: transparent;
  outline: none;
}
.page-load-status {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  background: #fff;
  font: 13px var(--sans);
  color: var(--muted);
}
.paper-book .reader-documents {
  background: var(--bg-paper);
  padding: 22px;
  border: 1px solid var(--line);
}
.reflow-page {
  box-sizing: border-box;
  background: white;
  color: black;
  padding: 8% calc(var(--right) / var(--page-width) * 100%) 8%
    calc(var(--left) / var(--page-width) * 100%);
  min-height: calc(var(--page-height) / var(--page-width) * 100cqw);
  box-shadow: 0 3px 17px #0000001f;
  font-size: calc(var(--font-size) / var(--page-width) * 100cqw);
  line-height: calc(var(--line-height) / var(--font-size));
}
.reflow-item {
  position: relative;
  margin: 0;
  padding: 0;
  scroll-margin: 70px;
}
.reflow-item p {
  font: inherit;
  color: black;
  text-align: justify;
  white-space: normal;
  text-indent: 2.36em;
  margin: 0 0 0.25em;
  hyphens: none;
}
.reflow-item h2 {
  font:
    700 1em/1.15 "Times New Roman",
    serif;
  color: black;
  text-align: center;
  white-space: pre-line;
  margin: 1em 0 0.5em;
  letter-spacing: normal;
}
.reflow-label {
  font: 10px/1.5 var(--sans);
  color: #777 !important;
  text-align: center;
  margin: -25px 0 25px;
  letter-spacing: 0.5px;
}
.amendment-mark {
  position: absolute;
  left: -24px;
  top: 0;
  color: var(--accent);
  font: 700 16px var(--sans);
  text-decoration: none;
}
.page-amendments {
  padding: 13px 17px;
  border-left: 2px solid var(--accent-line);
  background: var(--accent-soft);
  font: 12px/1.7 var(--sans);
  color: var(--accent);
}
.page-amendments a {
  color: var(--accent);
  text-decoration: underline;
}
.page-amendments-title {
  margin: 0 0 8px;
  font-size: 11px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}
.page-amendment {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--accent-line);
}
.page-amendment:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.page-amendment .prior-version {
  display: block;
  margin-top: 6px;
}
.scan-transcript {
  padding: 16px;
  background: var(--bg-paper);
  font: 14px/1.6 var(--sans);
}
.scan-transcript p {
  white-space: pre-wrap;
}
@media (min-width: 1200px) {
  .reader-layout:has(.paper-book) {
    grid-template-columns: minmax(0, var(--paper-page-max));
    justify-content: center;
  }
}
@media (max-width: 720px) {
  .paper-page-caption {
    font-size: 10px;
  }
  .reflow-label {
    margin: 0 0 18px;
    font-size: 8px;
  }
  .amendment-mark {
    left: -15px;
    font-size: 12px;
  }
  .page-amendments {
    font-size: 11px;
  }
}
@media print {
  .ribbon,
  .pane,
  .tabbar,
  .viewheader,
  .statusbar,
  .reader-toc,
  .reader-head,
  .notice,
  .page-footer,
  .paper-page-caption,
  .reader-documents {
    display: none !important;
  }
  .app {
    display: block;
    height: auto;
    overflow: visible;
  }
  main {
    padding: 0;
    overflow: visible;
  }
  .reader-layout {
    display: block;
  }
  .paper-page {
    break-after: page;
    margin: 0;
  }
  .original-page,
  .reflow-page {
    box-shadow: none;
  }
  .page-anchor {
    display: none;
  }
}
/* Текст, набранный листами как оригинал PDF (typeset-reader.js). */
.typeset-page {
  padding: calc(var(--top) / var(--page-width) * 100cqw) calc(var(--right) / var(--page-width) * 100%)
    calc(var(--top) / var(--page-width) * 100cqw) calc(var(--left) / var(--page-width) * 100%);
}
.typeset-page .reflow-item h2,
.typeset-page .reflow-item p {
  margin-left: var(--ml, 0) !important;
  font-family: inherit;
  font-size: 1em;
  line-height: inherit;
  color: black;
  margin: 0;
  letter-spacing: normal;
  white-space: pre-line;
  hyphens: manual;
  overflow-wrap: break-word;
}
.typeset-page .reflow-item h2 {
  line-height: inherit;
}
.typeset-page .change-mark {
  color: var(--accent-fill, #833b4c);
  font: 700 0.62em/0 var(--sans);
  vertical-align: super;
  margin-left: 0.15em;
}
.typeset-page .reflow-item.amended {
  background: #833b4c0d;
  box-shadow: -0.6em 0 0 #833b4c0d, 0.6em 0 0 #833b4c0d;
}
.typeset-page ::selection {
  background: #92435838;
}
.typeset-book .paper-page-caption a {
  text-decoration: none;
}
@media print {
  .typeset-page {
    box-shadow: none;
    min-height: 0;
  }
  .typeset-page .reflow-item.amended {
    background: none;
    box-shadow: none;
  }
}
@media (max-width: 720px) {
  /* На телефоне лист A4 в масштабе нечитаем: тот же вид, но обычным кеглем. */
  .typeset-page {
    font-size: 16px;
    line-height: 1.45;
    padding: 22px 16px;
    min-height: 0;
  }
  .typeset-page .reflow-item h2,
  .typeset-page .reflow-item p {
    margin-left: calc(var(--ml, 0%) / 2) !important;
    hyphens: auto;
  }
}
/* Строки оригинала (typeset-reader.js, line-fit.js) */
.line-page {
  position: relative;
  width: 100%;
  background: #fff;
  color: #000;
  box-shadow: 0 3px 17px #0000001f;
  container-type: inline-size;
  overflow: hidden;
}
.line-page .seg {
  display: contents;
}
.line-page .run {
  position: absolute;
  white-space: pre;
  transform-origin: 0 0;
  color: #000;
  cursor: text;
}
.line-page .run::selection {
  background: #92435838;
}
.line-anchor {
  position: absolute;
  left: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
  scroll-margin-top: 40px;
}
.toc-link {
  cursor: pointer;
}
.line-page .toc-link:hover .run,
.line-page .toc-link:focus .run,
.typeset-page .toc-link:hover,
.typeset-page .toc-link:focus {
  color: #833b4c;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  outline: none;
}
@media print {
  .line-page {
    box-shadow: none;
  }
}
/* «Рядом с PDF»: HTML слева, страница оригинала справа */
.compare-book .paper-page.compare-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 18px;
  align-items: start;
}
.compare-row > * {
  grid-column: 1;
  min-width: 0;
}
.compare-row > .paper-page-caption {
  grid-column: 1 / -1;
}
.compare-row > .compare-original {
  grid-column: 2;
  grid-row: 2;
}
.compare-original {
  background: #fff;
  box-shadow: 0 3px 17px #0000001f;
  line-height: 0;
}
.compare-original img {
  display: block;
  width: 100%;
  height: auto;
}
@media (min-width: 1200px) {
  .reader-layout:has(.compare-book) {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 720px) {
  .compare-book .paper-page.compare-row {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 10px;
  }
  .compare-row > .compare-original {
    grid-column: 1;
    grid-row: auto;
  }
}
@media print {
  .compare-original {
    display: none;
  }
}
