/* ============================================================
   ЕКСЛІБРИС · reader.css — сторінка розділу (читалка)
   ============================================================ */

:root{--page:#F4F0E2;--fs:20px}
html[data-mode="night"]{
  --page:#1A1B17;--ink:#E4DFD1;--ink-soft:#9A968A;--tape:#2A2C25;--beige-2:#22241E;--sage:#5D6A57;
  --rule:color-mix(in srgb, #E4DFD1 17%, transparent);
  --rule-soft:color-mix(in srgb, #E4DFD1 11%, transparent);
}
body{background:var(--page);transition:background .4s,color .4s}
html[data-mode="night"] body::after{mix-blend-mode:screen;opacity:.07}

/* шапка читалки */
.bar--reader{background:color-mix(in srgb, var(--page) 92%, transparent);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);color:var(--ink)}
.bar--reader .bar__in{gap:18px}
.bar__book{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-soft);border-left:1px solid var(--rule);padding-left:18px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:36ch}
.bar__book a:hover{color:var(--ink)}
.bar--reader .bar__logo .dark{display:block}
.bar--reader .bar__logo .light{display:none}
html[data-mode="night"] .bar--reader .bar__logo .dark{display:none}
html[data-mode="night"] .bar--reader .bar__logo .light{display:block}
.rtools{margin-left:auto;display:flex}
.rtools__toc{display:none}
.rtools button{background:none;border:1px solid var(--rule);border-right-width:0;color:var(--ink-soft);
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  padding:7px 11px;cursor:pointer;transition:.2s}
.rtools button:last-child{border-right-width:1px}
.rtools button:hover{color:var(--ink)}
.rtools button[aria-pressed="true"]{background:var(--ink);color:var(--page)}
.progress{position:fixed;top:var(--bar-h);left:0;height:2px;background:var(--sage);z-index:121;width:0}

/* каркас */
.rd{max-width:1120px;margin:0 auto;padding:100px var(--pad) 0;
  display:grid;grid-template-columns:268px minmax(0,1fr);gap:56px;align-items:start}

/* зміст */
.rd__toc{position:sticky;top:92px;max-height:calc(100vh - 126px);overflow-y:auto;
  padding-right:12px;border-right:1px solid var(--rule);scrollbar-width:thin}
.rd__toc::-webkit-scrollbar{width:3px}
.rd__toc::-webkit-scrollbar-thumb{background:var(--rule)}
.rd__bk{margin-bottom:22px;display:block}
.rd__bk .cov{width:56px;padding:6px 5px;background:#4E4260;margin-bottom:12px;box-shadow:4px 5px 0 var(--rule-soft)}
.rd__bk .cov::before{inset:3px}
.rd__bk .cov .t{font-size:8.5px;padding:4px 2px 0}
.rd__bk .cov .a{display:none}
.rd__bk .cov .y{font-size:5px;padding:0 2px 2px}
.rd__bk .t2{font-family:var(--display);font-size:19px;line-height:1.2}
.rd__bk .a2{font-size:14px;color:var(--ink-soft);font-style:italic;margin-top:3px}
.rd__lbl{font-family:var(--mono);font-size:10px;letter-spacing:.17em;text-transform:uppercase;
  color:var(--ink-soft);margin:22px 0 8px}
.rd__toc ol{list-style:none;margin:0;padding:0;counter-reset:c}
.rd__toc li{counter-increment:c;border-top:1px solid var(--rule-soft)}
.rd__toc li a{display:grid;grid-template-columns:22px 1fr;gap:8px;padding:7px 0;font-size:15px;
  color:var(--ink-soft);line-height:1.34;transition:color .2s}
.rd__toc li a::before{content:counter(c, decimal-leading-zero);font-family:var(--mono);font-size:9.5px;
  padding-top:4px;opacity:.6}
.rd__toc li a:hover{color:var(--ink)}
.rd__toc li.is-cur{position:relative}
.rd__toc li.is-cur a{color:var(--ink);font-weight:500}
.rd__toc li.is-cur a::after{content:"";position:absolute;left:-13px;top:11px;width:6px;height:6px;
  background:var(--sage);transform:rotate(45deg)}

/* текст */
.rd__art{max-width:64ch;font-family:var(--read);font-size:var(--fs);line-height:1.72;
  font-weight:300;padding-bottom:20px}
.rd__art h1{font-family:var(--display);font-weight:400;font-size:clamp(34px,4.4vw,54px);
  line-height:1.06;margin:0 0 12px;letter-spacing:.005em}
.chmeta{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-soft);padding-bottom:26px;margin-bottom:32px;border-bottom:1px solid var(--rule)}
.rd__art p{margin:0 0 1.3em;hyphens:auto}
.rd__art p.drop::first-letter{float:left;font-family:var(--display);font-size:3.9em;line-height:.82;
  padding:.06em .1em 0 0;color:var(--sky)}
html[data-mode="night"] .rd__art p.drop::first-letter{color:var(--sage)}
.rd__art blockquote{margin:34px 0;padding:0 0 0 22px;border-left:2px solid var(--sage);
  font-family:var(--display);font-size:1.06em;line-height:1.42;color:var(--ink)}
.rd__art blockquote .src{display:block;margin-top:12px;font-family:var(--mono);font-size:9px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.rd__note{font-size:.82em;color:var(--ink-soft);font-style:italic;
  border-top:1px solid var(--rule);padding-top:14px;margin-top:34px}

/* навігація розділів */
.chnav{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);
  border:1px solid var(--rule);margin-top:56px}
.chnav a{background:var(--page);padding:20px 22px;transition:background .22s}
.chnav a:hover{background:var(--beige-2)}
.chnav a:last-child{text-align:right}
.chnav .k{font-family:var(--mono);font-size:10px;letter-spacing:.17em;text-transform:uppercase;
  color:var(--ink-soft);margin-bottom:6px}
.chnav b{font-family:var(--display);font-weight:400;font-size:20px}
.chnav a:hover b{color:var(--sky)}
html[data-mode="night"] .chnav a:hover b{color:var(--sage)}

/* картка книги */
.bookbox{display:grid;grid-template-columns:96px 1fr;gap:20px;border:1px solid var(--rule);
  padding:24px;margin-top:38px;background:var(--beige-2)}
.bookbox .cov{background:#4E4260;box-shadow:none;padding:8px 7px}
.bookbox .cov .t{font-size:11px}
.bookbox .cov .a{display:none}
.bookbox .cov .y{font-size:7px}
.bookbox h3{font-family:var(--display);font-weight:400;font-size:23px;margin:0 0 4px;line-height:1.16}
.bookbox .a{font-size:14.5px;color:var(--ink-soft);font-style:italic}
.bookbox p{font-size:14.5px;color:var(--ink-soft);margin:12px 0 0;font-weight:300}
.bookbox .acts{margin-top:16px;display:flex;gap:16px;flex-wrap:wrap;
  font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.bookbox .acts a{border-bottom:1px solid var(--rule);padding-bottom:2px;border-radius:0;padding-left:0;padding-right:0}
.bookbox .acts a:hover{border-color:var(--ink)}

/* дотичне */
.rel{margin-top:44px}
.rel .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.17em;text-transform:uppercase;
  color:var(--ink-soft);margin-bottom:8px}
.rel a{display:block;border-top:1px solid var(--rule-soft);padding:13px 0}
.rel a b{font-family:var(--display);font-weight:400;font-size:19px;display:block}
.rel a:hover b{color:var(--sky)}
html[data-mode="night"] .rel a:hover b{color:var(--sage)}
.rel a span{font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft)}

/* примітки */
.notes{margin-top:52px;padding-top:26px;border-top:1px solid var(--rule)}
.notes h2{font-family:var(--display);font-weight:400;font-size:26px;margin:0 0 18px}
.notes ol{list-style:none;margin:0;padding:0}
.notes li{position:relative;padding:8px 0 8px 34px;font-size:.72em;line-height:1.55;
  color:var(--ink-soft);border-bottom:1px solid var(--rule-soft)}
.notes li .num{position:absolute;left:0;top:9px;font-family:var(--mono);font-size:10px;
  letter-spacing:.06em;color:var(--ink-soft);opacity:.75}
.notes li .back{font-family:var(--mono);font-size:10px;opacity:.5;margin-left:6px}
.notes li .back:hover{opacity:1;color:var(--sky)}
.notes li:target{background:color-mix(in srgb, var(--sage) 26%, transparent)}

/* виноски в тексті */
.rd__art sup.fn{font-size:.58em;line-height:0;vertical-align:super;margin-left:1px}
.rd__art sup.fn a{font-family:var(--mono);color:var(--sky);padding:0 1px}
html[data-mode="night"] .rd__art sup.fn a{color:var(--sage)}
.rd__art sup.fn a:hover{background:var(--sage);color:var(--page)}

.foot{margin-top:90px}

@media(max-width:1180px){.rd{grid-template-columns:252px minmax(0,1fr);gap:42px}}
@media(max-width:820px){
  .rd{grid-template-columns:1fr;padding-top:88px}
  .rd__toc{position:fixed;left:0;top:var(--bar-h);bottom:0;width:288px;background:var(--page);z-index:110;
    transform:translateX(-102%);transition:transform .35s;padding:22px 18px;max-height:none;
    border-right:1px solid var(--rule);box-shadow:14px 0 40px rgba(0,0,0,.18)}
  .rd__toc.is-open{transform:none}
  .bar__book{display:none}
  .rtools__toc{display:block}
}

/* ---------- блоки з архіву ---------- */
.rd__art .verse{margin:0 0 .5em;padding-left:2.2em;font-size:.95em;line-height:1.5;
  color:var(--ink);white-space:pre-line}
.rd__art .bib{font-size:.78em;line-height:1.5;color:var(--ink-soft);margin:0 0 .5em}
.rd__art h2{font-family:var(--display);font-weight:400;font-size:1.35em;line-height:1.2;
  margin:1.8em 0 .7em;letter-spacing:.005em}
.rd__art .fig{margin:34px 0;text-align:center}
.rd__art .fig img{max-width:100%;height:auto;display:inline-block;
  border:1px solid var(--rule);background:var(--beige-2)}
.rd--solo{grid-template-columns:minmax(0,1fr);max-width:820px}
.rd--solo .rd__art{margin:0 auto}
