.gallery-grid figure { cursor: zoom-in; }
.gallery-grid figure:active { transform: scale(.995); }
.comic-reader--paged {
  width: min(980px, calc(100% - 32px));
  margin: 0 auto;
  padding: 34px 0 96px;
  display: grid;
  gap: 16px;
}
.comic-reader__viewport {
  overflow: hidden;
  border-radius: 34px;
}
.comic-reader__track {
  display: block;
}
.comic-reader--paged .comic-panel {
  display: none;
  margin: 0;
  padding: 14px;
  border: 1px solid rgba(23,24,29,.10);
  border-radius: 34px;
  background: rgba(255,255,255,.72);
  box-shadow: 0 18px 50px rgba(20,24,33,.08);
}
.comic-reader--paged .comic-panel.active {
  display: block;
  animation: comicPageIn .2s ease both;
}
.comic-reader--paged .comic-panel img {
  display: block;
  width: 100%;
  max-height: 78vh;
  object-fit: contain;
  border-radius: 24px;
  background: #fff;
  cursor: zoom-in;
  user-select: none;
  -webkit-user-drag: none;
}
.comic-reader--paged .comic-panel figcaption {
  padding: 12px 6px 4px;
  color: var(--muted);
  font-weight: 800;
}
.comic-reader__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  position: sticky;
  bottom: 18px;
  z-index: 4;
  width: fit-content;
  margin: 0 auto;
  padding: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(23,24,29,.10);
  box-shadow: 0 18px 55px rgba(20,24,33,.12);
  backdrop-filter: blur(18px) saturate(150%);
}
.comic-reader__controls button {
  border: 0;
  border-radius: 999px;
  padding: 11px 16px;
  background: #17181d;
  color: #fff;
  font-weight: 900;
}
.comic-reader__page {
  min-width: 72px;
  text-align: center;
  color: #6c6877;
  font-weight: 900;
}
.comic-reader__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
}
.comic-reader__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(124,106,167,.25);
}
.comic-reader__dot.active { background: #7c6aa7; }
@keyframes comicPageIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (max-width: 640px) {
  .comic-reader--paged { width: min(100% - 20px, 980px); padding-top: 20px; }
  .comic-reader__viewport, .comic-reader--paged .comic-panel { border-radius: 24px; }
  .comic-reader--paged .comic-panel { padding: 8px; }
  .comic-reader--paged .comic-panel img { max-height: 72vh; border-radius: 18px; }
  .comic-reader__controls { bottom: 76px; padding: 8px; }
  .comic-reader__controls button { padding: 10px 12px; font-size: 13px; }
}
