/* RAPTOR_READER_FOCUS_MODE_V1 */
body.r50-reader-page,
html.r50-reader-html {
  background: #05050b !important;
}

body.r50-reader-page {
  overflow-x: hidden !important;
}

body.r50-reader-page header,
body.r50-reader-page .site-header,
body.r50-reader-page .topbar,
body.r50-reader-page .nav-shell,
body.r50-reader-page footer,
body.r50-reader-page .site-footer {
  transition: opacity .22s ease, transform .22s ease, max-height .22s ease;
}

body.r50-reader-page.r50-reader-focus header,
body.r50-reader-page.r50-reader-focus .site-header,
body.r50-reader-page.r50-reader-focus .topbar,
body.r50-reader-page.r50-reader-focus .nav-shell {
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(-18px) !important;
  max-height: 0 !important;
  overflow: hidden !important;
}

body.r50-reader-page.r50-reader-focus footer,
body.r50-reader-page.r50-reader-focus .site-footer {
  opacity: 0 !important;
  pointer-events: none !important;
  max-height: 0 !important;
  overflow: hidden !important;
}

body.r50-reader-page.r50-reader-focus main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

body.r50-reader-page .reader,
body.r50-reader-page .chapter-reader,
body.r50-reader-page [data-chapter-reader],
body.r50-reader-page main {
  transition: max-width .18s ease, padding .18s ease, background .18s ease;
}

body.r50-reader-page.r50-reader-focus .reader,
body.r50-reader-page.r50-reader-focus .chapter-reader,
body.r50-reader-page.r50-reader-focus [data-chapter-reader] {
  margin-top: 0 !important;
}

.r50-reader-focus-layer {
  position: fixed;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  z-index: 2147483600;
  width: min(760px, calc(100vw - 24px));
  display: flex;
  justify-content: center;
  pointer-events: none;
}

.r50-reader-focus-tools {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(190,150,255,.24);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,15,30,.96), rgba(7,7,16,.96));
  box-shadow: 0 18px 70px rgba(0,0,0,.48);
  padding: 8px;
  pointer-events: auto;
  backdrop-filter: blur(18px);
  color: #fff;
  transition: opacity .18s ease, transform .18s ease;
}

.r50-reader-focus-tools button,
.r50-reader-focus-tools a,
.r50-reader-show-tools {
  border: 1px solid rgba(190,150,255,.22);
  background: rgba(255,255,255,.065);
  color: #fff;
  border-radius: 12px;
  padding: 8px 10px;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  text-decoration: none;
  cursor: pointer;
}

.r50-reader-focus-tools .primary {
  border: 0;
  background: linear-gradient(135deg, #8b5cf6, #06b6d4);
}

.r50-reader-show-tools {
  position: fixed;
  right: 14px;
  bottom: 14px;
  z-index: 2147483601;
  box-shadow: 0 16px 60px rgba(0,0,0,.45);
  opacity: .72;
  transition: opacity .18s ease, transform .18s ease;
}

.r50-reader-show-tools:hover {
  opacity: 1;
}

body.r50-reader-tools-hidden .r50-reader-focus-tools,
body.r50-reader-tools-hidden #r50ReaderBar,
body.r50-reader-tools-hidden .r50-reader-bar,
body.r50-reader-tools-hidden .reader-toolbar,
body.r50-reader-tools-hidden .chapter-toolbar,
body.r50-reader-tools-hidden .reader-controls,
body.r50-reader-tools-hidden [data-reader-tools] {
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(18px) !important;
}

body.r50-reader-tools-hidden .r50-reader-show-tools {
  opacity: .78;
  pointer-events: auto;
}

body:not(.r50-reader-tools-hidden) .r50-reader-show-tools {
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
}

body.r50-reader-page.r50-reader-focus .ad,
body.r50-reader-page.r50-reader-focus .ads,
body.r50-reader-page.r50-reader-focus .ad-slot,
body.r50-reader-page.r50-reader-focus .reader-popup-ad,
body.r50-reader-page.r50-reader-focus .promo,
body.r50-reader-page.r50-reader-focus .newsletter,
body.r50-reader-page.r50-reader-focus .recommendations-before-reader {
  display: none !important;
}

.r50-reader-tap-zone {
  cursor: pointer;
}

.r50-reader-tap-hint {
  position: fixed;
  left: 50%;
  top: 12px;
  transform: translateX(-50%);
  z-index: 2147483602;
  border: 1px solid rgba(190,150,255,.22);
  border-radius: 999px;
  background: rgba(8,8,18,.86);
  color: #fff;
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 850;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

.r50-reader-tap-hint.show {
  opacity: .92;
}

@media (max-width: 760px) {
  .r50-reader-focus-layer {
    bottom: 8px;
    width: calc(100vw - 14px);
  }

  .r50-reader-focus-tools {
    gap: 5px;
    padding: 6px;
    border-radius: 15px;
  }

  .r50-reader-focus-tools button,
  .r50-reader-focus-tools a,
  .r50-reader-show-tools {
    font-size: 11px;
    padding: 7px 8px;
  }

  .r50-reader-focus-tools .mobile-hide {
    display: none !important;
  }

  .r50-reader-show-tools {
    right: 9px;
    bottom: 9px;
  }
}
