/* Reserved page edges turn; the central PDF, text and notes remain interactive. */
#pages.vm-book {
  display: grid !important;
  place-items: center;
  align-content: center;
  box-sizing: border-box;
  position: relative;
  width: max-content !important;
  padding: 22px 20px !important;
  gap: 0 !important;
  isolation: isolate;
}
.vm-book-stage {
  position: relative;
  flex: none;
  isolation: isolate;
  filter: drop-shadow(0 13px 16px rgba(0,0,0,.22));
}
.vm-book-stage .stf__wrapper,
.vm-book-stage .stf__block { height: 100% !important; }
.vm-book-stage .stf__block { overflow: visible; }
.vm-book-stage .vm-book-sheet {
  background: var(--reading-paper, #fff);
  box-sizing: border-box;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  isolation: isolate;
  border: 0;
}
/* stf writes display:block; flex centers varying PDF sizes in their book cells. */
.vm-book-stage .vm-book-sheet[style*="display: block"] { display: flex !important; }
.vm-book-stage .vm-book-sheet > .pdf-page {
  flex: none;
  margin: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  max-width: 100%;
  max-height: 100%;
}
.vm-book-sheet::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(94,74,43,.04);
}
.vm-book-sheet.is-left::after {
  background: linear-gradient(to left, rgba(49,33,15,.14), rgba(49,33,15,.03) 2.8%, transparent 8%);
}
.vm-book-sheet.is-right::after {
  background: linear-gradient(to right, rgba(49,33,15,.14), rgba(49,33,15,.03) 2.8%, transparent 8%);
}
.vm-book-stage .stf__outerShadow,
.vm-book-stage .stf__innerShadow,
.vm-book-stage .stf__hardShadow,
.vm-book-stage .stf__hardInnerShadow { pointer-events: none; }
.vm-book-spine {
  position: absolute;
  z-index: 18;
  left: calc(50% - 12px);
  top: 0;
  bottom: 0;
  width: 24px;
  pointer-events: none;
  background: linear-gradient(to right, transparent, rgba(22,15,8,.075) 39%, rgba(22,15,8,.19) 49%, rgba(255,255,255,.16) 52%, rgba(22,15,8,.04) 70%, transparent);
}
.vm-book-stage.is-cover .vm-book-spine,
.vm-book-stage.is-single .vm-book-spine,
.vm-book-turning .vm-book-spine { opacity: 0; }
.vm-book-hit {
  position: absolute;
  z-index: 30;
  top: 0;
  bottom: 0;
  height: 100%;
  width: clamp(22px, calc(var(--vm-book-page-width) * .09), 44px);
  min-width: 0;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0;
  background: transparent !important;
  box-shadow: none !important;
  cursor: grab;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
}
.book-hit-prev { left: 0; }
.book-hit-next { right: 0; }
.vm-book-hit:disabled { display: none; }
.vm-book-hit:focus-visible { outline: 2px solid #dba958; outline-offset: 3px; }
.vm-book-modifier .vm-book-hit { pointer-events: none; }
.vm-book-dragging .vm-book-hit { cursor: grabbing; }
.vm-book-corner {
  position: absolute;
  bottom: 0;
  width: 27px;
  height: 27px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 160ms ease;
}
.book-hit-next .vm-book-corner {
  right: 0;
  background: linear-gradient(135deg, transparent 48%, rgba(145,112,60,.14) 50%, rgba(255,255,255,.6) 54%, rgba(85,65,31,.16));
}
.book-hit-prev .vm-book-corner {
  left: 0;
  background: linear-gradient(225deg, transparent 48%, rgba(145,112,60,.14) 50%, rgba(255,255,255,.6) 54%, rgba(85,65,31,.16));
}
.vm-book-hit:hover .vm-book-corner,
.vm-book-hit:focus-visible .vm-book-corner { opacity: 1; }
.vm-book-turning .vm-book-corner { opacity: 0 !important; }
.vm-book-turning .pdf-page { pointer-events: none; }
.vm-book-arrive { animation: vm-book-arrive 160ms ease-out; }
@keyframes vm-book-arrive { from { opacity: .68; transform: translateX(4px); } to { opacity: 1; transform: translateX(0); } }
body[data-paper="dark"] .vm-book-sheet { background: #171717; border-color: #333; }
body[data-paper="night"] .vm-book-sheet { background: #171717; border-color: #333; }
body[data-paper="black"] .vm-book-sheet { background: #000; border-color: #333; }
@media (prefers-reduced-motion: reduce) {
  .vm-book-corner { transition: none; }
  .vm-book-arrive { animation: none; }
}
