/* за замовчуванням — сепія (поки відвідувач не вибере іншу тему) */
:root{--bg:#f4ecd8;--fg:#3b2f1e;--muted:#6b5a40;--link:#7a3b12;--line:#d9caa8;--card:#ebe0c6;--accent:#7a3b12;--fs:18px;color-scheme:light}
:root[data-theme=light]{--bg:#fbfaf7;--fg:#1c1b19;--muted:#5d5a54;--link:#1d4e89;--line:#dcd8cf;--card:#f1eee7;--accent:#8a5a14;color-scheme:light}
:root[data-theme=dark]{--bg:#16171a;--fg:#e8e6e1;--muted:#a9a59c;--link:#8cb8f0;--line:#33353a;--card:#1f2125;--accent:#e0b46a;color-scheme:dark}
:root[data-theme=sepia]{--bg:#f4ecd8;--fg:#3b2f1e;--muted:#6b5a40;--link:#7a3b12;--line:#d9caa8;--card:#ebe0c6;--accent:#7a3b12;color-scheme:light}
:root[data-theme=custom]{--muted:var(--fg);--link:var(--fg);--line:color-mix(in srgb,var(--fg) 25%,var(--bg));--card:color-mix(in srgb,var(--fg) 7%,var(--bg));--accent:var(--fg)}
:root{--w:52rem;--font:Georgia,"PT Serif","Noto Serif","Times New Roman",serif}
@media (min-width:1200px){:root{--fs:20px}}
@media (min-width:1800px){:root{--fs:22px}}
:root[data-w=narrow]{--w:40rem}:root[data-w=normal]{--w:52rem}:root[data-w=wide]{--w:72rem}:root[data-w=full]{--w:100%}
:root[data-font=ptserif]{--font:"PT Serif",Georgia,serif}
:root[data-font=literata]{--font:Literata,Georgia,serif}
:root[data-font=sans]{--font:system-ui,"Segoe UI",Roboto,Arial,sans-serif}
:root[data-font=ptsans]{--font:"PT Sans","Segoe UI",Arial,sans-serif}
:root[data-font=verdana]{--font:Verdana,Tahoma,"Noto Sans",sans-serif}
.f-serif{font-family:Georgia,serif}.f-ptserif{font-family:"PT Serif",Georgia,serif}.f-literata{font-family:Literata,Georgia,serif}
.f-sans{font-family:system-ui,"Segoe UI",Roboto,Arial,sans-serif}.f-ptsans{font-family:"PT Sans",Arial,sans-serif}.f-verdana{font-family:Verdana,Tahoma,sans-serif}
.lbl{min-width:4.5em;color:var(--muted)}
*{box-sizing:border-box}
html{font-size:var(--fs);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:1rem/1.65 var(--font)}
a{color:var(--link)}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:var(--bg);padding:4px 8px}
.top,.crumbs,main,.foot,.prefs{max-width:var(--w);margin:0 auto;padding:0 16px}
@media (min-width:1200px){.top,.crumbs,main,.foot,.prefs{padding:0 32px}}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--line);font-family:system-ui,sans-serif}
.brand{font-weight:700;text-decoration:none;color:var(--fg);font-size:1.05rem}
button{font:inherit;font-size:13px;line-height:1.2;font-family:system-ui,sans-serif;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:5px;padding:3px 8px;cursor:pointer;min-height:26px}
.quick{gap:4px}.prefs .row{gap:5px}
button[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px;font-weight:700}
.quick{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.quick[hidden]{display:none}
.sw-light{background:#fbfaf7;color:#1c1b19;border-color:#bdb8ad}
.sw-dark{background:#16171a;color:#e8e6e1;border-color:#55585e}
.sw-sepia{background:#f4ecd8;color:#3b2f1e;border-color:#c9b78f}
.sw-custom{background:linear-gradient(90deg,#fde68a,#93c5fd,#f9a8d4);color:#1c1b19;border-color:#9a9a9a}
@media (max-width:520px){.top{flex-wrap:wrap}.quick{justify-content:flex-start}}
@media (max-width:520px){.top{gap:8px}.quick{gap:4px}.quick button,.quick .sbtn{font-size:12px;padding:2px 6px;min-height:24px}.quick .lbl,.quick .stx{display:none}}
.prefs{padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--line);font-family:system-ui,sans-serif;font-size:.85rem}
.prefs .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0}
.prefs .custom{display:none}:root[data-theme=custom] .prefs .custom{display:flex}
.prefs input[type=color]{width:44px;height:32px;border:1px solid var(--line);padding:0;background:none;vertical-align:middle}
.warn{font-weight:600}
.crumbs{font-family:system-ui,sans-serif;font-size:.8rem;color:var(--muted);padding-top:10px}
h1{font-size:1.7rem;line-height:1.25;margin:.6em 0 .3em}
h2{font-size:1.2rem;margin:1.6em 0 .5em}
.lead{color:var(--muted);font-size:1.05rem}
.lead.intro{font-size:.88rem}
.gist{color:var(--muted);font-size:.85rem;margin:-.4rem 0 .8rem}
.gist summary{cursor:pointer;width:max-content}
.gist p{margin:.3rem 0 0}
h2.zavet{font-size:1.55rem;margin-top:1.3em}
.media{margin:1em 0;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:8px;font-family:system-ui,sans-serif;font-size:.85rem}
.media figcaption{font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:10px;white-space:nowrap}
.autonext{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0;font-weight:400;color:var(--muted);cursor:pointer}
.autonext span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.autonext input{appearance:none;-webkit-appearance:none;flex:none;width:34px;height:20px;margin:0;border-radius:10px;background:var(--line);position:relative;cursor:pointer;transition:background .15s}
.autonext input::before{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.3);transition:transform .15s}
.autonext input:checked{background:var(--accent)}
.autonext input:checked::before{transform:translateX(14px)}
.autonext input:focus-visible{outline:2px solid var(--link);outline-offset:2px}
.cont{display:block;margin:6px 0;padding:8px 14px;border:0;border-radius:6px;background:var(--accent);color:var(--bg);font:inherit;font-weight:600;cursor:pointer}
.media audio,.media video{display:block;width:100%;margin:6px 0}
.yt{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000;border-radius:6px;margin:6px 0}
.yt img{width:100%;height:100%;object-fit:cover;display:block}
.yt-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:48px;border-radius:12px;background:#c00;color:#fff;font-size:22px;display:flex;align-items:center;justify-content:center}
.yt:hover .yt-btn,.yt:focus .yt-btn{background:#e00}
.yt-frame{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:6px;margin:6px 0}
.media summary{cursor:pointer;font-weight:600}
.dl{font-size:.8rem}
.text p{margin:0 0 .55em}
.xr{display:none;margin:.15em 0 .4em 1.2em;font-family:system-ui,sans-serif;font-size:.72rem;color:var(--muted)}
:root[data-xr] .xr{display:block}
.xr a{color:var(--link)}
.vn{font-family:system-ui,sans-serif;font-size:.95em;font-weight:600;line-height:0;color:var(--muted);text-decoration:none;vertical-align:baseline;margin-right:4px}
.vh{position:absolute;left:-9999px}
.chapters{padding-left:0;list-style:none}
.chapters li{padding:8px 0;border-bottom:1px solid var(--line)}
.chapters li{display:flex;align-items:baseline;gap:.7em}
.chapters li a{flex:none;white-space:nowrap}
.chapters li span{color:var(--muted);font-size:.9rem}
.chapters li a.ch{flex:1 1 auto;white-space:normal;display:flex;align-items:baseline;gap:.7em;text-decoration:none}
.chapters li a.ch b{flex:none;white-space:nowrap;text-decoration:underline}
.chapters li a.ch:hover span{text-decoration:underline}
.books li a{flex:0 1 auto;white-space:normal}
.books li span{flex:none;white-space:nowrap}
.pager{display:flex;justify-content:space-between;gap:12px;margin:2em 0 1em;font-family:system-ui,sans-serif;font-size:.9rem}
.old{font-family:system-ui,sans-serif;font-size:.85rem}
.foot{border-top:1px solid var(--line);margin-top:2em;padding-top:6px;padding-bottom:20px;color:var(--muted);font-family:system-ui,sans-serif;font-size:11px;line-height:1.45}
.foot p{margin:.25em 0}
.small-page{font-family:system-ui,sans-serif;font-size:12.5px;line-height:1.5;color:var(--muted)}
.small-page h1{font-size:17px;margin:.8em 0 .4em;color:var(--fg)}
.small-page h2{font-size:13px;margin:1em 0 .2em;color:var(--fg)}
.small-page p{margin:.2em 0}
:target{background:color-mix(in srgb,var(--accent) 15%,transparent)}
/* пошук: поле у шапці й сторінка /search/ */
.sform input{width:100%;font:14px/1.3 system-ui,sans-serif;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:5px 10px;min-height:30px}
.sform input::placeholder{color:var(--muted);opacity:.85}
.sbtn{display:inline-flex;align-items:center;font:13px/1.2 system-ui,sans-serif;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:5px;padding:3px 8px;min-height:26px;text-decoration:none}
.sbtn:hover{border-color:var(--accent)}
.page-search .sbtn{outline:2px solid var(--accent);outline-offset:2px;font-weight:700}
.sform{display:flex;flex-wrap:wrap;gap:8px;margin:.6em 0 .8em;font-family:system-ui,sans-serif}
.sform input{flex:1 1 260px;width:auto;font-size:16px;padding:8px 12px;min-height:40px}
.sform select,.sform button{font-size:15px;min-height:40px;padding:6px 10px;border-radius:6px}
.sform select{font-family:system-ui,sans-serif;color:var(--fg);background:var(--card);border:1px solid var(--line);max-width:100%}
.sform button[type=submit]{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}
.shelp{font-family:system-ui,sans-serif;font-size:.8rem;color:var(--muted);margin-bottom:1em}
.shelp summary{cursor:pointer;width:max-content}
.shelp ul{margin:.4em 0;padding-left:1.2em}.shelp li{margin:.2em 0}
.shelp code{font-size:.95em;background:var(--card);border:1px solid var(--line);border-radius:3px;padding:0 3px}
.scount,.smsg,.sbook{font-family:system-ui,sans-serif;font-size:.85rem}
.scount{font-weight:600}
.schips{display:flex;flex-wrap:wrap;gap:5px;margin:.4em 0 .8em}
.schips span{color:var(--muted);font-weight:400}
.sresults{list-style:none;padding:0;margin:0}
.sresults li{padding:.5em 0;border-bottom:1px solid var(--line)}
.sresults .ref{font-family:system-ui,sans-serif;font-size:.85em;font-weight:600;white-space:nowrap;margin-right:.35em}
mark{background:color-mix(in srgb,var(--accent) 30%,transparent);color:inherit;border-radius:2px;padding:0 1px}
.smore button{font-size:14px;padding:6px 14px;min-height:34px}
.text p.hl{background:color-mix(in srgb,var(--accent) 15%,transparent)}
.sfw{position:relative;display:flex;flex:1 1 auto;min-width:0}
.sform .sfw{flex:1 1 260px}
.sfw input{flex:1 1 auto;padding-right:38px}
.mic{position:absolute;right:3px;top:50%;transform:translateY(-50%);border:0;background:none;padding:2px 6px;min-height:0;font-size:16px;line-height:1;cursor:pointer;opacity:.8}
.mic:hover,.mic:focus-visible{opacity:1}
.mic.on{opacity:1;animation:micp 1s ease-in-out infinite}
@keyframes micp{50%{transform:translateY(-50%) scale(1.25)}}
