@charset "utf-8";
@font-face {
  font-family: 'Ezra SIL';
  src: url('../OTH/fonts/EzraSIL.woff') format('woff');
  font-weight: normal; font-style: normal; font-display: swap;
}
/* Фон — как в S/V (a.css/b.css): текстура bg.jpg прямо на BODY, включая
   левый фрейм toc. Никаких полупрозрачных подложек. */
BODY { background-image: url("bg.jpg"); font-family: Georgia, 'Times New Roman', serif; font-size: 15px; color: #1a1a1a; margin: 0; }
/* РУССКИЙ ГЛОСС В КАРТОЧКЕ СЛОВА — не Georgia: ударение в корпусе стоит
   отдельным знаком U+0301, а Georgia даёт ему собственную ширину и слово
   рвётся посередине. Замер и разбор — у --rus в OTH/oth.css. Переменная своя:
   страницы разночтений подключают только эту таблицу. */
:root { --rus: Constantia,'Liberation Serif','Times New Roman',serif; }

/* КОЛОНКА КОНТЕНТА. Без неё на широком экране всё липнет к левому краю, а
   правая половина пустует. Колонка центрируется и держит комфортную длину
   строки; заголовки выравниваются по ней же, а не по краю окна. */
/* Светлая подложка под колонкой: текстура bg.jpg остаётся видна по бокам,
   а текст лежит на спокойном фоне. ВАЖНО про border: в сокращённой записи
   обязателен СТИЛЬ линии — «border: 1px #f0f0f0» не рисует ничего, потому что
   border-style по умолчанию none, и толщина обнуляется. */
.page { max-width: 58em; margin: 0 auto; padding: 14px 26px 30px;
        background-color: #fdfcf0; border: 1px solid #e2dcc8; }
A:link { color: #0f0f7f; text-decoration: none }
A:visited { color: #00007f; text-decoration: none }
A:hover { color: #00007f; font-weight: bold; text-decoration: underline }
A:active { color: red; font-weight: bold; text-decoration: none }
h1 { font-size: 20px; margin: 6px 0 6px; }
h2 { font-size: 16px; margin: 18px 0 6px; color: #6b1a1a; }
.crumb { font-size: 15px; margin: 2px 0 6px; }
.lead { color: #333; line-height: 1.55; }
.total { font-size: 15px; color: #333; margin: 10px 0; }
.total b { color: #6b1a1a; font-size: 17px; }
table.sources { border-collapse: collapse; margin: 8px 0 4px; width: 100%; background: #fff; }
table.sources th, table.sources td { border: 1px solid #ddd5c2; padding: 4px 8px; text-align: left; vertical-align: top; font-size: 13px; }
table.sources th { background: #f3efe4; }
.scope { color: #777; font-size: 12px; }
.books { margin: 4px 0; }
.bookrow { padding: 3px 0; }
.bcount { color: #8a8272; font-size: 12px; }
/* ПОЛОСА НОМЕРОВ ГЛАВ — та же, что на страницах книг подстрочника и греческой
   симфонии разночтений (id="nav", см. underl/OT/*.html, underl/S/V/*.html).
   Полоса стоит НАД колонкой .page и во всю ширину, переносится по содержимому
   (в Псалтири глав с разночтениями под сотню), выше 55vh не растёт — дальше
   прокручивается внутри себя, а текущую главу подводит в видимую часть shv.js.
   position:sticky заменяет здесь верхний фрейм читалки: страница главы —
   отдельный документ, фреймов внутри нет, а полоса всё равно должна оставаться
   на виду при прокрутке. */
#nav { position: sticky; top: 0; z-index: 5; margin: 0; padding: 2px 5px 4px 5px;
       line-height: 1.45; max-height: 55vh; overflow-y: auto; box-sizing: border-box;
       background-image: url("bg.jpg");
       border-bottom: 2px solid #808080; box-shadow: 0 1px 4px rgba(0,0,0,0.18); }
#nav a, #nav .cur { white-space: nowrap; }
/* Текущая глава: подложка и рамка внутренней тенью, а не border, — тогда
   ширина числа не меняется и полоса не «дёргается». */
#nav .cur { background: #fff3c4; color: #8b0000; font-weight: bold;
            box-shadow: inset 0 0 0 1px #c9a227; border-radius: 3px; padding: 0 4px; }
.entry { border-top: 1px solid #e6dfcd; padding: 6px 0; }
.vn { font-weight: bold; color: #6b1a1a; font-size: 13px; }
/* Номер стиха — ссылка в подстрочный перевод. Цвет остаётся заголовочным,
   иначе столбец номеров рассыпался бы на синие пятна; о том, что это ссылка,
   говорит пунктир, как у подписи источника (a.wl). Общее правило A:hover
   ставит жирность — номер и так жирный, поэтому строка при наведении не
   дёргается; снимаем только подчёркивание, чтобы не спорить с пунктиром. */
.vn a, .vn a:link, .vn a:visited, .vn a:hover, .vn a:active {
  color: #6b1a1a; text-decoration: none; border-bottom: 1px dotted #b3a98c; cursor: pointer; }
.vn a:hover { border-bottom-color: #6b1a1a; }
/* Строка стиха: слева узкая колонка подписи (МТ / SP / сигл свитка), справа
   сам текст. Контейнер LTR, чтобы подпись стояла слева ровным столбцом;
   направление RTL живёт внутри .heb, поэтому иврит читается правильно. */
.line { display: flex; gap: 12px; align-items: baseline; margin: 3px 0; direction: ltr; }
.wl { font-size: 11px; color: #8a8272; direction: ltr; flex: 0 0 5.5em; text-align: left; font-family: Georgia, serif; white-space: nowrap; padding-top: 4px; }
/* Подпись строки — ссылка на очерк об источнике, но кричать не должна:
   тот же приглушённый цвет, пунктир как намёк на подсказку (title). */
a.wl { color: #8a8272; border-bottom: 1px dotted #b3a98c; cursor: help; }
a.wl:hover { color: #6b1a1a; border-bottom-color: #6b1a1a; text-decoration: none; font-weight: normal; }
.heb { font-family: 'Ezra SIL','SBL Hebrew','Taamey Frank CLM','Times New Roman',serif; font-size: 22px; direction: rtl; unicode-bidi: isolate; line-height: 1.65; flex: 1 1 auto; min-width: 0; text-align: right; }
.w-same { color: #26303a; }
.w-rel { color: #1a7d1a; }
.w-abs { color: #b0221a; font-weight: bold; }
.w-omit { text-decoration: underline; text-decoration-color: #b0221a; text-decoration-style: dotted; }
.w-rec { opacity: 0.75; }

/* ---- разбор слова по нажатию (SHV/shv.js) ----
   Класс wc-has вешает скрипт тем словам, разбор которых есть; слова без него
   выглядят и ведут себя как обычный текст. Поэтому подсветка живёт здесь, а не
   на .heb span: иначе указатель обещал бы то, чего у слова нет. */
.hint { font-size: 12px; color: #8a8272; margin: -4px 0 8px; }
.wc-has { cursor: pointer; }
.wc-has:hover { background: #fff0cf; }
.wc-on { background: #ffe3a8; }

/* Карточка. Оформление окна — как у всплывающих подсказок подстрочника
   (.tip в OTH/oth.css): та же бумага, та же рамка и тень. Направление ltr,
   ивритские куски внутри изолированы своим dir. */
.wcard { position: fixed; z-index: 60; background: #fffbe8; border: 1px solid #b8a97a;
  box-shadow: 0 2px 8px rgba(0,0,0,.25); padding: 6px 10px 8px; direction: ltr;
  max-width: 32em; max-height: 80vh; overflow: auto; font-size: 13px; }
.wcard.hidden { display: none; }
.wc-head { display: flex; gap: 10px; align-items: baseline; justify-content: space-between;
  border-bottom: 1px solid #e6dbb8; padding-bottom: 3px; margin-bottom: 4px; }
.wc-w { font-family: 'Ezra SIL','SBL Hebrew','Taamey Frank CLM','Times New Roman',serif;
  font-size: 22px; unicode-bidi: isolate; color: #26303a; }
.wc-ref { font-size: 11px; color: #8a7c55; white-space: nowrap; }
.wc-note { font-size: 11px; color: #7a6f58; font-style: italic; line-height: 1.4;
  margin-bottom: 4px; }
/* Подзаголовок — когда в карточке НЕСКОЛЬКО слов (чтение разошлось с
   масоретским, и показано то, что стоит на его месте). При одном слове его нет:
   слово уже названо в шапке. */
.wc-sub { font-family: 'Ezra SIL','SBL Hebrew','Taamey Frank CLM','Times New Roman',serif;
  font-size: 17px; unicode-bidi: isolate; color: #6b1a1a; margin-top: 6px;
  border-top: 1px solid #e6dbb8; padding-top: 4px; }
.wc-sub:first-of-type { border-top: 0; margin-top: 2px; }
/* Морфема: строка ссылок, под ней разбор мелким. Разделитель между морфемами
   слова — тонкая линия, чтобы приставка не слипалась с корнем. */
.wc-m { border-top: 1px solid #f0e6c8; padding: 3px 0 2px; }
.wc-m:first-of-type { border-top: 0; }
.wc-top { display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; }
.wc-heb { font-family: 'Ezra SIL','SBL Hebrew','Taamey Frank CLM','Times New Roman',serif;
  font-size: 20px; unicode-bidi: isolate; }
.wc-tr { font-size: 11px; color: #7a7060; unicode-bidi: isolate; }
.wc-ru { font-family: var(--rus); font-size: 13px; color: #123c8c; unicode-bidi: isolate; }
.wc-ru.empty { color: #c9c2b2; }
.wc-st { font-size: 11px; color: #8a8272; margin-left: auto; }
.wc-info { font-size: 11px; color: #5a5344; line-height: 1.45; }
.wc-foot { border-top: 1px solid #e6dbb8; margin-top: 4px; padding-top: 3px; font-size: 11px; }

/* ---- окно со стихом подстрочника (наведение на номер стиха) ----
   Внутри — фрейм с той же главой подстрочника в кратком выводе, поэтому
   оформление взято у такого же окна в самом подстрочнике (.syn-tip в
   OTH/oth.css): та же бумага, рамка и тень, что у карточки разбора.
   Высоту shv.js уточняет по сообщению из фрейма; эта — на случай, когда
   сообщение не дошло (старая сборка подстрочника). */
.vtip { position: fixed; z-index: 60; background: #fffbe8; border: 1px solid #b8a97a;
  box-shadow: 0 2px 8px rgba(0,0,0,.25); padding: 0; direction: ltr; }
.vtip.hidden { display: none; }
.vtip .vt-head { font-size: 11px; color: #8a7c55; padding: 3px 8px 1px; }
.vtip .vt-frame { display: block; border: 0; width: 34em; max-width: 90vw;
  height: 6.5em; background: #fffbe8; }
.source { margin-top: 18px; padding-top: 8px; border-top: 1px solid #d8d0bd; font-size: 12px; color: #666; }
.copyright { margin-top: 18px; text-align: right; font-size: 13px; }
a.more { font-size: 12px; white-space: nowrap; }
figure.ms { margin: 16px auto 20px; text-align: center; }
figure.ms img { max-width: 100%; height: auto; border: 1px solid #bbb296; background: #fff; }
figure.ms figcaption { font-size: 12px; color: #555; margin: 6px auto 0; line-height: 1.45; max-width: 42em; text-align: center; }
figure.ms .credit { display: block; color: #8a8272; margin-top: 2px; }
.page p, .page li { line-height: 1.6; }
.page ul { padding-left: 1.4em; }
