/* Whole sheets in every continuous book reader. A sheet may grow with its
   text; the minimum paper height must never become a clipping boundary.
   The repeated :root specificity overrides legacy author-specific profiles. */
html:root:root:root body :is(:is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous):has(> .leaf), :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) :is(.bookslot, .book, :has(> .leaf), :has(> .page))) {
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
  container-type: inline-size;
  height: auto !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html:root:root:root body :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) :is(.leaf, .page):not([data-omit-continuous="true"]) {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  flex-shrink: 0 !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: calc(100cqw * 1.414214) !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  margin: 0 !important;
  border: 1px solid #d9cfbd !important;
  background: #fffef9 !important;
  box-shadow: 0 8px 24px #352b2018 !important;
}
/* Older special leaves fix their inner height and hide the end of the text. */
html:root:root:root body :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) :is(.flow, .typeset, .body-text, .title-composition, .half-title, .printer-composition, .contents-composition) {
  height: auto !important;
  overflow: visible !important;
  flex-shrink: 0 !important;
}
html:root:root:root body main.continuous-view :is(.halfpage, .titlepage, .printerpage, .contentspage, .titleleaf, .tocleaf) {
  padding: 54px 68px 58px !important;
}
html:root:root:root body :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) :is(.pdf-mark, .page-label, .leaf-label, .bottom-mark) {
  position: static !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding-top: 28px !important;
  flex-shrink: 0 !important;
}
/* This older contents profile has an ID in :not(), so match its specificity. */
html:root body.tyutryumov-reader main.continuous-view .tocleaf:not(#page-5) {
  min-height: calc(100cqw * 1.414214) !important;
}
/* These two scan-coordinate readers zoom the whole book on phones. Keep
   that source layout, but measure the visible inter-sheet gap in screen px. */
html:root:root:root body main.reader.mode-text .book {
  gap: calc(28px / var(--reader-zoom, 1)) !important;
}
@media (max-width: 720px) {
  html:root:root:root body :is(:is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous):has(> .leaf), :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) :is(.bookslot, .book, :has(> .leaf), :has(> .page))) { gap: 20px !important; }
  html:root:root:root body main.continuous-view :is(.halfpage, .titlepage, .printerpage, .contentspage, .titleleaf, .tocleaf) { padding: 38px 24px 44px !important; }
  html:root:root:root body main.reader.mode-text .book { gap: calc(20px / var(--reader-zoom, 1)) !important; }
}

/* Nested-paper readers already paint the sheet on .leaf-paper. Do not paint
   a second, minimum-height sheet around that paper and its navigation label. */
html:root:root:root body :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) .leaf:has(> .leaf-paper) {
  min-height: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html:root:root:root body :is(main.continuous-view, main.continuous, main.mode-continuous, main.mode-all, main.mode-book, body.mode-continuous main, main.book-scroll, main.mode-text, body.mode-all main, body[data-mode="continuous"] main, .reader.volume-continuous) .leaf:has(> .leaf-paper) > :is(.pdf-mark, .page-label, .leaf-label, .bottom-mark) {
  margin-top: 0 !important;
  padding-top: 7px !important;
}
