.oti-media-reader {
  --oti-reader-ink: #18323d;
  --oti-reader-surface: #fff;
  --oti-reader-accent: #ff9f1c;
  --oti-reader-stage: #e6ecef;
  --oti-reader-line: rgb(24 50 61 / 15%);
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right))
    max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
  color: var(--oti-reader-ink);
  font: 500 .9375rem/1.45 system-ui, sans-serif;
}

.oti-media-reader,
.oti-media-reader * { box-sizing: border-box; }

.oti-media-reader[hidden],
.oti-media-reader [hidden] { display: none !important; }

.oti-media-reader__backdrop {
  position: absolute;
  inset: 0;
  background: rgb(3 18 25 / 78%);
}

.oti-media-reader__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  width: min(100%, 88rem);
  height: min(100%, 66rem);
  min-height: min(24rem, 100%);
  overflow: hidden;
  border: 1px solid var(--oti-reader-line);
  border-radius: 1rem;
  background: var(--oti-reader-surface);
  box-shadow: 0 1.5rem 5rem rgb(0 0 0 / 35%);
  outline: none;
}

.oti-media-reader__header,
.oti-media-reader__toolbar {
  display: flex;
  align-items: center;
  gap: .45rem;
  flex: 0 0 auto;
  padding: .7rem 1rem;
  border-bottom: 1px solid var(--oti-reader-line);
}

.oti-media-reader__header { justify-content: space-between; }
.oti-media-reader__title { min-width: 0; margin: 0; overflow: hidden; font-size: 1rem; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.oti-media-reader__close { font-size: 1.35rem; line-height: 1; }
.oti-media-reader__toolbar { flex-wrap: wrap; justify-content: center; border-top: 1px solid var(--oti-reader-line); border-bottom: 0; }

.oti-media-reader button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  min-width: 2.75rem;
  min-height: 2.75rem;
  padding: .45rem .65rem;
  border: 1px solid transparent;
  border-radius: .55rem;
  background: #fff;
  color: inherit;
  font: inherit;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.oti-media-reader button svg { flex: 0 0 auto; width: 1.25rem; height: 1.25rem; }
.oti-media-reader button:hover:not(:disabled) { border-color: var(--oti-reader-accent); background: #fff8eb; }
.oti-media-reader button[aria-pressed="true"] { border-color: var(--oti-reader-accent); background: #fff8eb; }
.oti-media-reader button:focus-visible,
.oti-media-reader input:focus-visible { outline: 3px solid var(--oti-reader-accent); outline-offset: 2px; }
.oti-media-reader button:disabled { opacity: .45; cursor: not-allowed; }
.oti-media-reader__page { width: 4rem; min-height: 2.75rem; border: 1px solid var(--oti-reader-line); border-radius: .45rem; padding: .35rem; color: var(--oti-reader-ink); background: #fff; font: inherit; font-variant-numeric: tabular-nums; text-align: center; }
.oti-media-reader__page-total { margin-inline: -.1rem .5rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.oti-media-reader__page-range { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.oti-media-reader__panel.is-pdf .oti-media-reader__previous,
.oti-media-reader__panel.is-pdf .oti-media-reader__next { display: none; }

.oti-media-reader__status,
.oti-media-reader__error { flex: 0 0 auto; margin: 0; padding: .65rem 1rem; text-align: center; }
.oti-media-reader__status { background: #f3f7f8; }
.oti-media-reader__error { color: #762a22; background: #fff0ed; }
.oti-media-reader__error-message { margin: 0 0 .5rem; }
.oti-media-reader__error-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; }

.oti-media-reader__stage { position: relative; display: grid; flex: 1 1 auto; min-height: 0; min-width: 0; place-items: stretch; overflow: hidden; background: var(--oti-reader-stage); }
.oti-media-reader__panel.is-pdf .oti-media-reader__stage { grid-template-columns: 3.75rem minmax(0, 1fr) 3.75rem; }
.oti-media-reader__pdf-scroller {
  display: flex;
  min-width: 0;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  touch-action: none;
  padding: 1.5rem 1rem;
  scrollbar-width: thin;
  scrollbar-color: #7b929b transparent;
}
.oti-media-reader__panel.is-pdf .oti-media-reader__pdf-scroller { grid-column: 2; grid-row: 1; }
.oti-media-reader__pdf-spread {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  align-items: flex-start;
  width: max-content;
  height: max-content;
  margin: auto;
  box-shadow: 0 .1rem .2rem rgb(3 18 25 / 13%), 0 .65rem 1.5rem rgb(3 18 25 / 22%);
  transform-origin: center;
}
.oti-media-reader__pdf-page { position: relative; flex: 0 0 auto; margin: 0; background: #fff; }
.oti-media-reader__pdf-spread.is-spread > .oti-media-reader__pdf-page:first-child::after,
.oti-media-reader__pdf-spread.is-spread > .oti-media-reader__pdf-page:last-child::after {
  content: "";
  position: absolute;
  inset-block: 0;
  z-index: 2;
  width: min(2rem, 7%);
  pointer-events: none;
}
.oti-media-reader__pdf-spread.is-spread > .oti-media-reader__pdf-page:first-child::after { right: 0; background: linear-gradient(90deg, transparent 4%, rgb(24 50 61 / 3%) 38%, rgb(24 50 61 / 13%) 88%, rgb(24 50 61 / 19%)); }
.oti-media-reader__pdf-spread.is-spread > .oti-media-reader__pdf-page:last-child::after { left: 0; background: linear-gradient(90deg, rgb(24 50 61 / 17%), rgb(24 50 61 / 9%) 15%, rgb(24 50 61 / 2%) 60%, transparent); }
.oti-media-reader .oti-media-reader__stage-previous,
.oti-media-reader .oti-media-reader__stage-next { align-self: center; justify-self: center; grid-row: 1; z-index: 3; padding: .5rem; border-color: var(--oti-reader-line); border-radius: 50%; background: rgb(255 255 255 / 90%); box-shadow: 0 .15rem .4rem rgb(24 50 61 / 6%); }
.oti-media-reader__stage-previous { grid-column: 1; }
.oti-media-reader__stage-next { grid-column: 3; }
.oti-media-reader__thumbnails { --oti-thumbnail-height: 7.75rem; --oti-thumbnail-canvas-height: 5.75rem; display: flex; flex: 0 0 auto; align-items: flex-start; gap: .75rem; overflow-x: auto; overflow-y: hidden; height: 10rem; padding: .6rem 1rem; border-top: 1px solid var(--oti-reader-line); background: #f3f7f8; scrollbar-width: thin; overscroll-behavior: contain; }
.oti-media-reader .oti-media-reader__thumbnail { display: flex; flex-direction: column; justify-content: center; gap: .35rem; width: 6rem; height: var(--oti-thumbnail-height); min-width: 6rem; min-height: 0; padding: .3rem; border: 1px solid var(--oti-reader-line); border-radius: .4rem; }
.oti-media-reader .oti-media-reader__thumbnail[aria-current="page"],
.oti-media-reader .oti-media-reader__thumbnail[aria-selected="true"] { border-color: var(--oti-reader-accent); background: #fff8eb; box-shadow: 0 0 0 1px var(--oti-reader-accent); }
.oti-media-reader__thumbnail-canvas { display: block; flex: 0 0 auto; width: 5rem; height: var(--oti-thumbnail-canvas-height); object-fit: contain; background: #fff; box-shadow: 0 .1rem .3rem rgb(24 50 61 / 12%); }
.oti-media-reader__thumbnail-label { flex: 0 0 auto; font-size: .75rem; line-height: 1.2; font-variant-numeric: tabular-nums; white-space: nowrap; }
.oti-media-reader__canvas { display: block; }
.oti-media-reader__text-layer {
  position: absolute;
  inset: 0;
  overflow: clip;
  z-index: 1;
  opacity: 1;
  color-scheme: only light;
  text-align: initial;
  line-height: 1;
  letter-spacing: normal;
  word-spacing: normal;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  forced-color-adjust: none;
  transform-origin: 0 0;
  caret-color: CanvasText;
  --min-font-size: 1;
  --text-scale-factor: calc(var(--total-scale-factor) * var(--min-font-size));
  --min-font-size-inv: calc(1 / var(--min-font-size));
}
.oti-media-reader__text-layer :is(span, br) {
  position: absolute;
  color: transparent;
  white-space: pre;
  cursor: text;
  transform-origin: 0% 0%;
  -webkit-user-select: text;
  user-select: text;
}
.oti-media-reader__text-layer > :not(.markedContent),
.oti-media-reader__text-layer .markedContent span:not(.markedContent) {
  z-index: 1;
  --font-height: 0;
  font-size: calc(var(--text-scale-factor) * var(--font-height));
  --scale-x: 1;
  --rotate: 0deg;
  transform: rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv));
}
.oti-media-reader__text-layer .markedContent { display: contents; }
.oti-media-reader__text-layer ::selection { color: transparent; background: rgb(40 117 212 / 28%); }
.oti-media-reader__panel.is-pan-ready .oti-media-reader__pdf-scroller,
.oti-media-reader__panel.is-pan-ready .oti-media-reader__pdf-scroller * { cursor: grab; }
.oti-media-reader__panel.is-panning .oti-media-reader__pdf-scroller,
.oti-media-reader__panel.is-panning .oti-media-reader__pdf-scroller * { cursor: grabbing; }
.oti-media-reader__panel:is(.is-pan-ready, .is-panning) .oti-media-reader__pdf-scroller,
.oti-media-reader__panel:is(.is-pan-ready, .is-panning) .oti-media-reader__pdf-scroller * {
  -webkit-user-select: none;
  user-select: none;
}
.oti-media-reader__video { display: block; width: 100%; height: 100%; max-height: 100%; background: #07151a; object-fit: contain; }

.oti-media-reader__panel:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) {
  position: fixed;
  inset: 0;
  z-index: 10001;
  width: 100vw;
  width: 100dvw;
  height: 100vh;
  height: 100dvh;
  max-width: none;
  max-height: none;
  min-height: 0;
  border: 0;
  border-radius: 0;
  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
}

.oti-media-reader__panel:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__stage { min-height: 0; }
.oti-media-reader__panel:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__video { max-height: 100%; }
.oti-media-reader-host { display: contents; }

@media (max-width: 42rem) {
  .oti-media-reader { padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); }
  .oti-media-reader__panel { width: 100%; height: 100%; min-height: 0; border-radius: 0; }
  .oti-media-reader__header, .oti-media-reader__toolbar { padding: .45rem; gap: .2rem; }
  .oti-media-reader__toolbar { font-size: .8125rem; }
  .oti-media-reader__toolbar button { padding-inline: .45rem; }
  .oti-media-reader__page { width: 3.25rem; }
  .oti-media-reader__page-total { margin-inline-end: .1rem; }
  .oti-media-reader__page-range { font-size: .75rem; }
  .oti-media-reader__panel.is-pdf .oti-media-reader__stage { grid-template-columns: minmax(0, 1fr); }
  .oti-media-reader__panel.is-pdf .oti-media-reader__pdf-scroller { grid-column: 1; }
  .oti-media-reader .oti-media-reader__stage-previous,
  .oti-media-reader .oti-media-reader__stage-next { display: none; }
  .oti-media-reader__panel.is-pdf .oti-media-reader__previous,
  .oti-media-reader__panel.is-pdf .oti-media-reader__next { display: inline-flex; }
  .oti-media-reader__pdf-scroller { padding: .75rem .5rem; }
  .oti-media-reader__thumbnails { --oti-thumbnail-height: 6.25rem; --oti-thumbnail-canvas-height: 4.25rem; height: 8rem; gap: .5rem; padding: .6rem; }
}

@media (max-height: 32rem) and (min-width: 42.01rem) {
  .oti-media-reader { padding: .5rem; }
  .oti-media-reader__header, .oti-media-reader__toolbar { padding-block: .3rem; }
  .oti-media-reader__pdf-scroller { padding-block: .75rem; }
  .oti-media-reader__thumbnails { --oti-thumbnail-height: 5.5rem; --oti-thumbnail-canvas-height: 3.5rem; height: 7rem; padding-block: .45rem; }
}


.oti-media-reader__loading-track {
  display: block;
  position: relative;
  width: min(28rem, 100%);
  height: .35rem;
  margin: .5rem auto 0;
  overflow: hidden;
  border-radius: 999px;
  background: rgb(127 144 152 / 24%);
}
.oti-media-reader__progress {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: inherit;
  appearance: none;
  background: transparent;
  color: var(--oti-reader-accent);
}
.oti-media-reader__progress::-webkit-progress-bar { background: transparent; }
.oti-media-reader__progress::-webkit-progress-value { background: var(--oti-reader-accent); }
.oti-media-reader__progress::-moz-progress-bar { background: var(--oti-reader-accent); }
.oti-media-reader__progress:indeterminate::-moz-progress-bar { background: transparent; }
.oti-media-reader__loading-sweep {
  position: absolute;
  inset-block: 0;
  left: 0;
  width: 40%;
  border-radius: inherit;
  background: var(--oti-reader-accent);
  animation: oti-reader-loading 1.1s linear infinite;
}
.oti-media-reader__progress[value] + .oti-media-reader__loading-sweep { display: none; }
@keyframes oti-reader-loading {
  from { transform: translateX(-100%); }
  to { transform: translateX(350%); }
}
.oti-media-reader__turn-shade {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: #031219;
  opacity: 0;
}
@media (prefers-reduced-motion: reduce) {
  .oti-media-reader__loading-sweep { animation: none; transform: translateX(75%); }
}

/* PDF chrome follows the dark reader palette; document pages keep their paper color. */
.oti-media-reader__panel.is-pdf {
  --oti-reader-ink: #f3f7f8;
  --oti-reader-surface: #102a36;
  --oti-reader-stage: #07151a;
  --oti-reader-line: rgb(255 255 255 / 16%);
  color: var(--oti-reader-ink);
  color-scheme: dark;
}
.oti-media-reader__panel.is-pdf button { background: rgb(3 18 25 / 45%); }
.oti-media-reader__panel.is-pdf button:is(:hover, [aria-pressed="true"]):not(:disabled),
.oti-media-reader__panel.is-pdf .oti-media-reader__thumbnail:is([aria-current="page"], [aria-selected="true"]) {
  border-color: var(--oti-reader-accent);
  background: #183a49;
}
.oti-media-reader__panel.is-pdf .oti-media-reader__page { background: #07151a; }
.oti-media-reader__panel.is-pdf :is(.oti-media-reader__status, .oti-media-reader__thumbnails) { background: #102a36; }
.oti-media-reader__panel.is-pdf .oti-media-reader__error { color: #ffe0db; background: #331e22; }
.oti-media-reader__panel.is-pdf .oti-media-reader__pdf-scroller { scrollbar-color: rgb(255 255 255 / 38%) transparent; }
.oti-media-reader__panel.is-pdf :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next) {
  background: rgb(3 18 25 / 60%);
  color: var(--oti-reader-ink);
  box-shadow: 0 .15rem .4rem rgb(0 0 0 / 28%);
}
.oti-media-reader .oti-media-reader__panel.is-pdf.is-zoomed :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next) {
  display: none;
  pointer-events: none;
}
.oti-media-reader__panel.is-pdf.is-zoomed .oti-media-reader__toolbar :is(.oti-media-reader__previous, .oti-media-reader__next) { display: inline-flex; }

/* Fullscreen PDF reading leaves the document edge to edge. The ordinary
   reader and video fullscreen keep their existing controls and layout. */
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) {
  padding: 0;
  background: var(--oti-reader-stage);
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__header {
  position: absolute;
  inset: 0 0 auto;
  z-index: 6;
  height: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  pointer-events: none;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__title {
  position: absolute;
  width: 1px;
  height: 1px;
  min-width: 0;
  min-height: 0;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  border: 0;
  clip-path: inset(50%);
  white-space: nowrap;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__toolbar {
  position: absolute;
  right: max(.6rem, env(safe-area-inset-right));
  bottom: max(.6rem, env(safe-area-inset-bottom));
  left: max(.6rem, env(safe-area-inset-left));
  z-index: 5;
  width: max-content;
  max-width: calc(100% - max(.6rem, env(safe-area-inset-left)) - max(.6rem, env(safe-area-inset-right)));
  margin: 0 auto;
  flex-wrap: nowrap;
  gap: .25rem;
  padding: .25rem;
  border: 1px solid var(--oti-reader-line);
  border-radius: .8rem;
  background: var(--oti-reader-surface);
  box-shadow: 0 .15rem .6rem rgb(0 0 0 / 32%);
  font-size: .875rem;
}
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__toolbar button {
  min-width: max(2.75rem, 44px);
  min-height: max(2.75rem, 44px);
  padding: .4rem .5rem;
  touch-action: manipulation;
}
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__previous { order: 0; }
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__zoom-out { order: 1; }
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__fit-width {
  order: 2;
  flex: 0 1 auto;
}
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__zoom-in { order: 3; }
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__next { order: 4; }

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__status {
  position: absolute;
  top: max(.6rem, env(safe-area-inset-top));
  right: 4rem;
  left: 1rem;
  z-index: 5;
  max-width: 30rem;
  margin-inline: auto;
  border-radius: .6rem;
  color: var(--oti-reader-ink);
  background: rgb(3 18 25 / 90%);
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__toolbar > :not(:is(.oti-media-reader__page-range, .oti-media-reader__zoom-out, .oti-media-reader__zoom-in, .oti-media-reader__fit-width)),
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__thumbnails {
  display: none;
}
.oti-media-reader__panel.is-pdf.is-zoomed:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__toolbar :is(.oti-media-reader__previous, .oti-media-reader__next) { display: inline-flex; }

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__close {
  position: absolute;
  top: max(.6rem, env(safe-area-inset-top));
  right: max(.6rem, env(safe-area-inset-right));
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 16%);
  border-radius: 50%;
  background: rgb(3 18 25 / 60%);
  color: rgb(255 255 255 / 85%);
  box-shadow: 0 1px .4rem rgb(0 0 0 / 32%);
  font-size: 1.65rem;
  line-height: 1;
  pointer-events: auto;
  touch-action: manipulation;
  transition: background-color .12s ease, color .12s ease, box-shadow .12s ease;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__close:is(:hover, :focus-visible) {
  border-color: rgb(255 255 255 / 32%);
  background: rgb(3 18 25 / 92%);
  color: #fff;
  box-shadow: 0 .15rem .6rem rgb(0 0 0 / 42%);
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__stage {
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  height: 100%;
  background: var(--oti-reader-stage);
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__pdf-scroller {
  grid-column: 1;
  padding: 0 0 calc(4.5rem + env(safe-area-inset-bottom));
  overflow: hidden;
}
.oti-media-reader__panel.is-pdf.is-zoomed:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__pdf-scroller {
  overflow: auto;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__pdf-spread {
  margin: auto;
  box-shadow: none;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next) {
  position: absolute;
  top: var(--oti-reader-spread-top, max(0px, calc((100% - var(--oti-reader-spread-height, 100%)) / 2)));
  z-index: 4;
  display: inline-flex;
  align-self: stretch;
  justify-self: auto;
  width: clamp(2.75rem, 4vw, 4rem);
  height: min(100%, var(--oti-reader-spread-height, 100%));
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: transparent;
  text-shadow: none;
  box-shadow: none;
  font-size: 2rem;
  line-height: 1;
  -webkit-user-select: none;
  user-select: none;
  touch-action: manipulation;
  transition: color .12s ease;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__stage-previous {
  left: var(--oti-reader-spread-left, max(0px, calc((100% - var(--oti-reader-spread-width, 100%)) / 2)));
  grid-column: 1;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__stage-next {
  right: var(--oti-reader-spread-right, max(0px, calc((100% - var(--oti-reader-spread-width, 100%)) / 2)));
  grid-column: 1;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next):not(:focus-visible) {
  background: transparent;
  color: transparent;
  text-shadow: none;
}

@media (hover: hover) and (pointer: fine) {
.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__stage-previous:hover:not(:disabled) {
  background: linear-gradient(90deg, rgb(3 18 25 / 86%) 0%, rgb(3 18 25 / 86%) 55%, rgb(3 18 25 / 0%) 100%);
  color: #fff;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__stage-next:hover:not(:disabled) {
  background: linear-gradient(270deg, rgb(3 18 25 / 86%) 0%, rgb(3 18 25 / 86%) 55%, rgb(3 18 25 / 0%) 100%);
  color: #fff;
}

}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next):focus-visible {
  outline: 3px solid var(--oti-reader-accent);
  outline-offset: -3px;
  background: rgb(3 18 25 / 85%);
  color: #fff;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next):disabled {
  visibility: hidden;
  pointer-events: none;
}

.oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__error {
  position: absolute;
  top: calc(max(.6rem, env(safe-area-inset-top)) + 3.35rem);
  right: max(1rem, env(safe-area-inset-right));
  left: max(1rem, env(safe-area-inset-left));
  z-index: 5;
  max-width: 40rem;
  max-height: 50%;
  margin-inline: auto;
  padding: 1rem;
  overflow: auto;
  border: 1px solid rgb(118 42 34 / 20%);
  border-radius: .65rem;
  box-shadow: 0 .3rem 1.25rem rgb(3 18 25 / 16%);
}

@media (prefers-reduced-motion: reduce) {
  .oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__close, .oti-media-reader__stage-previous, .oti-media-reader__stage-next) {
    transition: none;
  }
}

@media (forced-colors: active) {
  .oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) .oti-media-reader__close,
  .oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next):focus-visible {
    border: 1px solid ButtonText;
    background: ButtonFace;
    color: ButtonText;
    text-shadow: none;
    box-shadow: none;
  }
}
@media (forced-colors: active) and (hover: hover) and (pointer: fine) {
  .oti-media-reader__panel.is-pdf:is(:fullscreen, :-webkit-full-screen, .is-fullscreen-fallback) :is(.oti-media-reader__stage-previous, .oti-media-reader__stage-next):hover:not(:disabled) {
    border: 1px solid ButtonText;
    background: ButtonFace;
    color: ButtonText;
    text-shadow: none;
  }
}
