@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;
}
/* Фон — общий для всего сайта: текстура bg.jpg прямо на BODY, как в S/V
   (a.css/b.css), в подстрочнике OTH и в симфонии разночтений SHV.
   background-color рядом с картинкой — не украшение, а подложка на случай,
   если файл не доехал: это средний тон самой плитки. Путь считается от
   САМОГО css-файла (SH/sh.css), поэтому одной копии bg.jpg в SH/ хватает и
   для SH/R/, и для SH/D/ — как и шрифту выше. */
body { font-family: Georgia, 'Times New Roman', serif; font-size: 15px; margin: 0;
  padding: 8px 10px 26px; color: #1a1a1a;
  background-color: #fdf1da; background-image: url('bg.jpg'); }
/* РУССКОЕ СЛОВО ИЗ КОРПУСА — не Georgia: ударение в корпусе стоит отдельным
   знаком U+0301, а Georgia даёт ему собственную ширину и слово рвётся
   посередине («су́ дьи» вместо «су́дьи»). Замер и разбор — у --rus в
   OTH/oth.css, там же сказано, почему нельзя обойтись одним знаком. Здесь
   переменная своя: страницы симфонии подключают только эту таблицу. */
:root { --rus: Constantia,'Liberation Serif','Times New Roman',serif; }
/* Светлая подложка под содержимым правого фрейма: текстура остаётся видна
   рамкой по краям, а текст лежит на ровном фоне. max-width здесь НЕ ставим —
   страница и так стоит в правом фрейме, а строки ссылок на стихи длинные.
   В сокращённой записи border обязателен СТИЛЬ линии, иначе не рисуется.
   min-height — чтобы подложка доходила до низа фрейма и на короткой титульной
   странице: иначе ниже текста остаётся голая текстура и лист выглядит
   обрезанным. Вычитается padding самого BODY (8 сверху + 26 снизу). */
.page { background-color: #fdfcf0; border: 1px solid #e2dcc8; padding: 10px 16px 20px;
  min-height: calc(100vh - 34px); box-sizing: border-box; }
a { color: #123c8c; text-decoration: none; }
a:hover { text-decoration: underline; }
h1 { font-size: 20px; margin: 8px 0 4px; }
h2 { font-size: 17px; margin: 14px 0 4px; }
.navbar { font-size: 13px; padding-bottom: 6px; border-bottom: 1px solid #d8d0bd; margin-bottom: 8px; }
.navbar .cur { font-weight: bold; color: #6b1a1a; }
.lead { max-width: 46em; color: #333; }
.count { font-size: 12px; color: #777; margin-bottom: 4px; }
/* Пояснение к устройству статьи — под заголовком раздела (см. LEGENDS в
   shClient.js). Мелко и приглушённо: читают его один раз. */
.legend { font-size: 12px; color: #777; max-width: 56em; margin-bottom: 10px; line-height: 1.5; }
/* Подпись перед номерами Стронга в шапке статьи формы. */
.lbl { font-size: 11px; color: #8a8272; text-transform: uppercase; letter-spacing: 0.04em; }
/* Шапка титульной страницы симфонии — как у греческих (S/simph.htm): название
   по центру красным, под ним по центру объём. Строка-счётчик проставляется
   генератором, вручную её не правят (см. lib/devtools/publishStats.js). */
h1.title { text-align: center; color: #cc0000; font-size: 24px; margin: 18px 0 6px; }
.total { text-align: center; font-size: 15px; font-style: italic; font-weight: bold; color: #333; margin: 0 0 18px; }
/* --- титульная страница симфонии (index.htm каждой из трёх) ---
   На ней связная ПРОЗА, а не указатель: колонка ей нужна узкая и посередине.
   Подложка .page выше идёт во всю ширину — это верно для страниц разделов, где
   строки ссылок на стихи длинные, но на титульной давало текст, прижатый к
   левому краю широкого листа (замечание заказчика). Числа — те же, что у
   титульных страниц соседних разделов (SHV/shv.css, SHP/shp.css, PAR/par.css,
   вводная страница в OTH/oth.css), чтобы страница не выпадала из оформления.

   Ограничения ширины ВНУТРИ колонки при этом снимаются: 46em у .lead и 52em у
   .source рассчитаны на подложку во всю ширину, а внутри 58em дали бы второй,
   лишний край — текст обрывался бы, не доходя до края листа. */
body.intro .page { max-width: 58em; margin: 0 auto; padding: 14px 26px 30px; }
body.intro .lead, body.intro .source { max-width: none; }
.entry { border-top: 1px solid #e6dfcd; padding: 7px 0 9px; }
.entry .head { margin-bottom: 2px; }
.heb { font-family: 'Ezra SIL','SBL Hebrew','Taamey Frank CLM','Times New Roman',serif; font-size: 22px; direction: rtl; unicode-bidi: isolate; }
.rus { font-family: var(--rus); font-size: 17px; font-weight: bold; direction: ltr;
  unicode-bidi: isolate; }
.strongnum { font-weight: bold; color: #6b1a1a; }
.cnt { font-size: 11px; color: #8a8272; vertical-align: super; }
.cnt.total { color: #b0442c; }
/* Пометка языка. Иврит не помечается вовсе (язык по умолчанию), поэтому всё,
   что здесь видно, — арамейское. Цвет отдельный от красного счётчика и от
   бордового номера Стронга: это третий по важности знак в шапке статьи, а не
   первый. Пометка у формы внутри списка (.forms .lang) мельче — там она стоит
   у каждой строки и не должна забивать сам текст. */
.lang { font-size: 11px; color: #2f6b4f; background: #eef5ef; border: 1px solid #cbe0d1;
  border-radius: 3px; padding: 0 4px; white-space: nowrap; vertical-align: 2px; }
.lang.mix { color: #6b4f2f; background: #f7f1e6; border-color: #e0d4bf; }
.forms .lang { font-size: 10px; padding: 0 3px; }
.morphs { font-size: 12px; color: #555; }
.morph { margin-right: 10px; }
.glosses { margin: 3px 0; }
.gloss { font-family: var(--rus); direction: ltr; unicode-bidi: isolate; }
.gloss.empty { color: #999; font-style: italic; }
.forms { margin: 3px 0; }
.refs { font-size: 12px; color: #666; line-height: 1.6; }
.refs .ref { color: #4a5a7a; margin-right: 4px; white-space: nowrap; }

/* Окно с еврейским подстрочником по наведению на ссылку стиха. Внутри —
   <iframe> с той же главой в режиме краткого вывода («#5;t»), см. initRefTips
   в shClient.js; те же стили стоят у подстрочника (publishHebrewPages.js), и
   выглядеть окно должно одинаково в обоих разделах. Высоту фрейма уточняет
   oth.js изнутри через postMessage; не дошло — остаётся эта. */
.tip { position: fixed; background: #fffbe8; border: 1px solid #b8a97a;
  box-shadow: 0 2px 8px rgba(0,0,0,.2); padding: 5px 8px; font-size: 13px;
  z-index: 50; direction: ltr; unicode-bidi: isolate; }
.tip.hidden { display: none; }
.syn-tip { padding: 0; }
.syn-tip .syn-head { font-size: 11px; color: #8a7c55; padding: 3px 8px 1px; }
.syn-tip .syn-frame { display: block; border: 0; width: 34em; max-width: 90vw;
  height: 6.5em; background: #fffbe8; }
/* --- витрины арамейского среза (aram.htm в каждой из трёх симфоний) ---
   Строка указателя плотнее статьи: здесь сотни строк, и читают их глазами
   сверху вниз, а не по одной. Разделитель — тонкая линия, как у .entry, но
   отступы вдвое меньше. */
.alist { margin-top: 10px; }
.arow { border-top: 1px solid #ece6d6; padding: 3px 0; line-height: 1.5; }
.arow:hover { background: #fffdf3; }
.agl { font-family: var(--rus); font-size: 13px; color: #444; }
.aforms { font-size: 13px; }
.more { color: #999; }
.aside { color: #777; font-style: italic; font-size: 13px; }

/* --- левый фрейм: оглавление разделов (top.htm) ---
   Колонка узкая (132 px во фреймсете), поэтому всё в столбик, по центру и без
   рамок: ссылка занимает строку целиком, попасть по ней можно куда угодно.
   Подложки .page здесь нет намеренно — ссылки лежат прямо на текстуре, ровно
   как во всех левых колонках сайта (S/S/toc_g.htm, SHV/toc.htm). */
body.toc { font-size: 17px; line-height: 1.45; text-align: center; padding: 6px 4px 20px; }
body.toc a { display: block; padding: 1px 3px; white-space: nowrap; }
body.toc a:hover { background: #fffdf3; text-decoration: none; }
/* Раздел, открытый сейчас в правом фрейме, остаётся отмеченным — так же, как
   книга в списках книг (RSV/toc.htm, S/V/toc.htm и прочие левые колонки):
   жёлтая подложка, тёмно-красный полужирный, тонкая рамка. Класс ставит общий
   RSV/tocmark.js. Полоса во всю ширину колонки, а не по самой букве: здесь так
   же ведёт себя подсветка при наведении, а буква узкая — метку по ней было бы
   не найти глазами. Правило идёт ПОСЛЕ :hover — вес у них одинаковый, и
   отметка должна оставаться видна под курсором. */
body.toc a.cur, body.toc a.cur:link, body.toc a.cur:visited {
  background: #fff3c4; color: #8b0000; font-weight: bold;
  box-shadow: inset 0 0 0 1px #c9a227; border-radius: 3px; }
/* Буквы разделов — крупнее текста навигации: в оглавлении это главное. */
body.toc .heb { font-size: 21px; }
body.toc .ascii { font-size: 15px; }
/* Черта по смене первой буквы: список плоский, но группы видно. */
body.toc a.gstart { margin-top: 6px; padding-top: 5px; border-top: 1px solid #ddd3ba; }
.tocnav { font-size: 12px; border-bottom: 1px solid #cfc6ae; padding-bottom: 5px; margin-bottom: 6px; }
.tocnav a, .tocnav .cur { display: block; padding: 1px 3px; }
.tocnav a.back { padding: 2px 0 6px; }
.tocnav .cur { font-weight: bold; color: #6b1a1a; }
.ascii { color: #999; font-size: 13px; }
.definition { font-size: 14px; margin: 3px 0; }
/* Еврейский текст внутри статьи Стронга приходит в тегах <big> (так он размечен
   в исходных S/S/h*.htm) — даём ему тот же шрифт и изоляцию направления. */
.definition big { font-family: 'Ezra SIL','SBL Hebrew','Taamey Frank CLM','Times New Roman',serif; font-size: 20px; direction: rtl; unicode-bidi: isolate; }
.definition.none { color: #999; font-style: italic; }
.affix-mark { color: #6b1a1a; font-style: italic; }
.suffixes { font-size: 12px; color: #888; }
.source { margin-top: 18px; padding-top: 8px; border-top: 1px solid #d8d0bd; font-size: 12px; color: #666; max-width: 52em; }
/* Копирайт в конце страницы — как в конце каждой части греческо-русской
   симфонии: справа, мелко, приглушённым коричневым. */
.copyright { text-align: right; margin: 16px 0 0; padding-top: 8px; border-top: 1px solid #d8d0bd;
  font-size: 12px; line-height: 1.6; color: #8a6a4a; }
.copyright a { color: #8a6a4a; }
.source + .copyright { border-top: 0; padding-top: 2px; margin-top: 6px; }
ul.big { font-size: 16px; line-height: 1.8; }

/* --- справочник морфологии (morph.htm) --- */
code { font-family: Consolas, 'Courier New', monospace; font-size: 13px; background: #f3efe4; padding: 0 3px; border-radius: 2px; }
.morph .mcode code, .mcode { font-weight: bold; }
.note { max-width: 52em; font-size: 13px; color: #444; background: #faf6ea; border-left: 3px solid #d8cCa8; padding: 6px 10px; margin: 8px 0; }
.slots { border-collapse: collapse; margin: 6px 0 2px; }
.slots th { text-align: right; padding-right: 8px; font-weight: normal; }
.slots td { border: 1px solid #ddd5c2; background: #fff; padding: 3px 6px; text-align: center; vertical-align: top; }
.slotch { display: block; font-family: Consolas, 'Courier New', monospace; font-size: 15px; font-weight: bold; color: #6b1a1a; }
.slotlab { display: block; font-size: 11px; color: #666; white-space: nowrap; }
.slotdesc { font-size: 13px; color: #333; margin-bottom: 10px; }
.atomgrid { display: flex; flex-wrap: wrap; gap: 10px; }
.atombox { border: 1px solid #e6dfcd; background: #fff; padding: 6px 9px; min-width: 15em; flex: 1 1 15em; }
.atombox h3 { font-size: 14px; margin: 2px 0 4px; color: #6b1a1a; }
.atombox .note { margin: 2px 0 4px; font-size: 12px; }
table.atom { border-collapse: collapse; font-size: 13px; width: 100%; }
table.atom td { padding: 1px 4px; vertical-align: top; }
table.atom td.k { font-family: Consolas, 'Courier New', monospace; font-weight: bold; color: #123c8c; width: 2.5em; }
table.codes { border-collapse: collapse; font-size: 13px; width: 100%; margin-bottom: 14px; }
table.codes th { text-align: left; font-size: 11px; color: #8a8272; border-bottom: 1px solid #d8d0bd; padding: 2px 6px; font-weight: normal; }
table.codes td { padding: 2px 6px; border-bottom: 1px solid #f0ebdd; vertical-align: top; }
table.codes tr:target td { background: #fdf3d0; }
table.codes td.c { white-space: nowrap; }
table.codes td.n { text-align: right; color: #8a8272; white-space: nowrap; }
table.codes td.d { color: #333; }
table.codes td.e { color: #1a5a2a; }
table.codes td.e .none { color: #bbb; }
table.codes td.f .heb { font-size: 18px; }
table.codes td.f .ru { font-family: var(--rus); font-size: 12px; color: #777; }
/* Узкий экран: таблица кодов прокручивается сама, страница — нет. */
@media (max-width: 700px) { table.codes { display: block; overflow-x: auto; white-space: nowrap; } }
