/* READER — читалка книги, встроена в тему Yobobox, использует её палитру */
.reader {
  --r-bg: var(--bg-base);
  --r-bg-2: var(--bg-third);
  --r-tt: var(--color-light);
  --r-tt-2: var(--color-base);
  --r-bdc: var(--color-border);
  --r-accent: var(--color-primary);
  --r-accent-text: var(--bg-secondary);

  background: var(--r-bg);
  border-radius: var(--border-radius-sm, .5rem);
  border: 1px solid var(--r-bdc);
  padding: 1.75rem;
  margin: 1.25rem 0;
}
.reader .text {
  font-family: Georgia, serif;
  font-size: 17px;
  line-height: 1.9;
  color: var(--r-tt-2);
}
.reader .text p { margin: .6rem 0; }

/* Светлая тема читалки (лампочка) — красит только .reader */
.reader.light-theme {
  --r-bg: #f7f5f0;
  --r-bg-2: #ece8dd;
  --r-tt: #2b2a26;
  --r-tt-2: #3a3934;
  --r-bdc: #ddd7c8;
  --r-accent-text: #ffffff;
}

.reader .panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: .875rem;
  margin-bottom: 1.25rem;
  border-bottom: 1px solid var(--r-bdc);
  flex-wrap: wrap;
  gap: .625rem;
}
.reader .functions { display: flex; gap: .5rem; }
.reader .item.fullscreen,
.reader .item.font,
.reader .item.lamp {
  width: 2.375rem; height: 2.375rem;
  border-radius: 50%;
  background: var(--r-bg-2);
  border: 1px solid var(--r-bdc);
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  font-size: .8125em; font-weight: 700;
  color: var(--r-tt);
  transition: all .18s;
}
.reader .item svg { width: 1em; height: 1em; }
.reader .item.fullscreen:hover,
.reader .item.font:hover,
.reader .item.lamp:hover,
.reader .item.fullscreen.active,
.reader .item.font.active,
.reader .item.lamp.active {
  background: var(--r-accent); border-color: var(--r-accent); color: var(--r-accent-text);
}
.reader .win {
  background: var(--r-bg-2);
  border: 1px solid var(--r-bdc);
  border-radius: var(--border-radius-sm, .5rem);
  padding: .875rem 1.125rem;
  display: none;
  gap: .875rem;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}
.reader .win .item { font-size: .8125em; color: var(--r-tt-2); margin-right: .25rem; }
.reader .win .func { display: flex; gap: .375rem; align-items: center; }
.reader .win select {
  width: auto; height: auto; padding: .375rem .625rem; font-size: .8125em;
  background: var(--r-bg); color: var(--r-tt); box-shadow: inset 0 0 0 1px var(--r-bdc);
  border-radius: var(--border-radius, 10rem); border: none;
}
.reader .win .button {
  padding: .3125rem .875rem; height: auto; font-size: .8125em; min-width: 1.875rem;
  text-transform: none; letter-spacing: normal; border-radius: var(--border-radius, 10rem);
  background: var(--r-bg); color: var(--r-tt); box-shadow: inset 0 0 0 1px var(--r-bdc);
  cursor: pointer; border: none; display: inline-flex; align-items: center; justify-content: center;
}
.reader .win .button:hover { background: var(--r-accent); color: var(--r-accent-text); box-shadow: none; }
.reader .win .reset { margin-left: auto; }
.reader .win .reset a { color: var(--r-tt-2); text-decoration: none; font-size: .8125em; }
.reader .win .reset a:hover { color: var(--r-accent); }

.reader-progress[hidden] { display: none; }
.reader-progress {
  display: flex; align-items: center; gap: .625rem; flex-wrap: wrap;
  background: var(--r-bg-2); border-radius: var(--border-radius, 10rem); padding: .625rem 1.25rem; margin-bottom: 1rem;
}
.reader-progress__resume {
  background: var(--r-accent); color: var(--r-accent-text); border: none; border-radius: var(--border-radius, 10rem);
  padding: .375rem 1rem; font-size: .8125em; cursor: pointer; height: auto;
}
.reader-progress__value { color: var(--r-tt-2); font-size: .8125em; }

/* Полноэкранный режим читалки */
body.openfullsc { overflow: hidden; }
body.openfullsc .site-header { display: none; }
#reader.fullsc {
  position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 1050;
  background: var(--r-bg); margin: 0; border-radius: 0;
  overflow-y: auto; padding: 1.875rem 15%;
}
@media screen and (max-width: 61.99em) {
  #reader.fullsc { padding: 1.25rem .9375rem; }
}

/* Ширина текста читалки */
#reader.reader-width-narrow .text { max-width: 40rem; margin-left: auto; margin-right: auto; }
#reader.reader-width-wide .text { max-width: none; }

/* Пагинация книги (генерируется движком в engine/modules/show.full.php) —
   визуально совпадает с нативной пагинацией темы (components/_pagination.sass) */
.book-pagination {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
  gap: .375rem; margin: 1.5rem 0;
}
.book-pagination a, .book-pagination span {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 2rem; height: 2rem; padding: 0 .75rem;
  border-radius: var(--border-radius, 10rem); font-size: .8375em; font-weight: bold;
  text-decoration: none; color: var(--color-base);
  background: none;
  transition: all .18s;
}
.book-pagination a:hover { color: var(--color-light); }
.book-pagination .pagination-current {
  background: var(--color-primary); color: var(--bg-secondary);
  cursor: default;
}
.book-pagination .pagination-dots {
  background: none; color: var(--color-base); min-width: auto; padding: 0 .125rem; font-weight: 400;
}
.book-pagination .pagination-prev, .book-pagination .pagination-next {
  font-size: .8125em; font-weight: 600; padding: 0 .875rem;
}
.book-pagination .disabled { opacity: .35; cursor: not-allowed; }

/* Оглавление читалки (генерируется reader.js по заголовкам глав/частей) */
.reader-toc { margin-bottom: 1.25rem; }
.reader-toc__links { display: flex; flex-wrap: wrap; gap: .5rem; }
.reader-toc__links a {
  background: var(--r-bg-2, var(--bg-third)); border: 1px solid var(--r-bdc, var(--color-border));
  border-radius: var(--border-radius, 10rem); padding: .3125rem .875rem; font-size: .8125em;
  color: var(--color-base); text-decoration: none;
}
.reader-toc__links a:hover { color: var(--color-primary); }

#reader .text.font_georgia { font-family: Georgia, 'Times New Roman', Times, serif; }
#reader .text.font_tahoma { font-family: Tahoma, Geneva, sans-serif; }
#reader .text.font_arial { font-family: Arial, Helvetica, sans-serif; }
#reader .text.font_verdana { font-family: Verdana, Geneva, sans-serif; }
