/* ebook-viewer.css — BSS-safe fullscreen image e-book viewer */

html.ev-active, body.ev-active {
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  background: #111 !important;
}

#ebook-viewer-root, .ebook-viewer-root {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at center, #2a241d 0%, #111 58%, #070707 100%) !important;
  color: #f7efe3 !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

#ebook-viewer-root *, .ebook-viewer-root * {
  box-sizing: border-box !important;
}

.ev-stage {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 54px 58px 66px !important;
}

.ev-page {
  display: block !important;
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  background: #F9F1E7 !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.62) !important;
  cursor: zoom-in !important;
  transform-origin: center center !important;
  transition: transform .18s ease, opacity .18s ease !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}

.ev-page.is-zoomed {
  transform: scale(1.7) !important;
  cursor: zoom-out !important;
}

.ev-topbar, .ev-bottombar {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1000000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
}

.ev-topbar {
  top: 0 !important;
  height: 48px !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.58), rgba(0,0,0,0)) !important;
}

.ev-bottombar {
  bottom: 0 !important;
  min-height: 58px !important;
  gap: 10px !important;
  padding: 8px 10px 12px !important;
  background: linear-gradient(to top, rgba(0,0,0,.66), rgba(0,0,0,0)) !important;
  flex-wrap: wrap !important;
}

.ev-title {
  font-size: 14px !important;
  letter-spacing: .02em !important;
  opacity: .86 !important;
  color: #f7efe3 !important;
}

.ev-btn, .ev-side {
  pointer-events: auto !important;
  border: 1px solid rgba(199,135,37,.62) !important;
  background: rgba(15,15,15,.68) !important;
  color: #f7efe3 !important;
  border-radius: 999px !important;
  min-height: 38px !important;
  padding: 0 15px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.25) !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.ev-btn:hover, .ev-side:hover {
  background: rgba(139,0,0,.75) !important;
  border-color: #c78725 !important;
}

.ev-btn:disabled, .ev-side:disabled {
  opacity: .32 !important;
  cursor: default !important;
}

.ev-close {
  position: fixed !important;
  z-index: 1000001 !important;
  top: 12px !important;
  right: 14px !important;
  pointer-events: auto !important;
  color: #c78725 !important;
  background: rgba(0,0,0,.36) !important;
  border: 1px solid rgba(199,135,37,.45) !important;
  border-radius: 999px !important;
  width: 38px !important;
  height: 38px !important;
  font-size: 22px !important;
  line-height: 34px !important;
  text-align: center !important;
  text-decoration: none !important;
}

.ev-side {
  position: fixed !important;
  top: 50% !important;
  z-index: 1000000 !important;
  transform: translateY(-50%) !important;
  width: 44px !important;
  height: 58px !important;
  padding: 0 !important;
  font-size: 28px !important;
  border-radius: 10px !important;
}

.ev-side.prev {
  left: 14px !important;
}

.ev-side.next {
  right: 14px !important;
}

.ev-counter {
  pointer-events: none !important;
  min-width: 78px !important;
  text-align: center !important;
  font-size: 14px !important;
  color: rgba(247,239,227,.88) !important;
}

.ev-error {
  padding: 24px !important;
  max-width: 680px !important;
  margin: 80px auto !important;
  color: #f7efe3 !important;
  text-align: center !important;
  line-height: 1.5 !important;
}

@media (max-width: 768px) {
  .ev-stage {
    padding: 48px 8px 64px !important;
  }
}

@media (max-width: 768px) {
  .ev-side {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .ev-page {
    max-width: 100% !important;
    max-height: calc(100vh - 112px) !important;
  }
}

@media (max-width: 768px) {
  .ev-page.is-zoomed {
    transform: scale(1.45) !important;
  }
}

@media (max-width: 768px) {
  .ev-btn {
    min-height: 36px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 768px) {
  .ev-title {
    max-width: calc(100vw - 70px) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

