/* Онлайн-читалка: власні теми поверх кольорів сайту */
.rd{--r-bg:var(--paper);--r-fg:var(--ink);--r-soft:var(--ink-soft);--r-rule:var(--rule);--r-acc:var(--accent);--r-card:var(--paper-2);
  --rfs:1.12rem;background:var(--r-bg);color:var(--r-fg);min-height:100vh}
.rd[data-th="light"]{--r-bg:#fbfaf7;--r-fg:#1d2236;--r-soft:#5b6178;--r-rule:#d9dbe3;--r-acc:#8a2f3c;--r-card:#f0eee8;color-scheme:light}
.rd[data-th="sepia"]{--r-bg:#f4ecd8;--r-fg:#3b2f22;--r-soft:#6f604c;--r-rule:#dccfb2;--r-acc:#8a3b22;--r-card:#ebe0c6;color-scheme:light}
.rd[data-th="dark"]{--r-bg:#121419;--r-fg:#d9dbe2;--r-soft:#959aac;--r-rule:#2c303c;--r-acc:#d9798a;--r-card:#1b1e26;color-scheme:dark}
body:has(.rd){background:var(--paper)}
body:has(.rd[data-th="sepia"]){background:#f4ecd8}
body:has(.rd[data-th="dark"]){background:#121419}
body:has(.rd[data-th="light"]){background:#fbfaf7}
.rd-bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:6;background:color-mix(in srgb,var(--r-bg) 94%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--r-rule)}
.rd-bar .in{max-width:860px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:8px max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px))}
.rd-bar a.back{font-family:var(--f-ui);font-size:.85rem;color:var(--r-soft);text-decoration:none;white-space:nowrap}
.rd-bar a.back:hover{color:var(--r-acc)}
.rd-bar .t{flex:1;min-width:0;text-align:center;font-family:var(--f-display);font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-btn{font-family:var(--f-ui);font-size:.86rem;background:none;color:var(--r-fg);border:1px solid var(--r-rule);border-radius:3px;padding:7px 11px;cursor:pointer;line-height:1.1}
.rd-btn:hover{border-color:var(--r-acc);color:var(--r-acc)}
.rd-btn[aria-expanded="true"],.rd-btn[aria-pressed="true"]{background:var(--r-fg);color:var(--r-bg);border-color:var(--r-fg)}
.rd-btn.key{border-color:var(--r-acc);color:var(--r-acc)}
.rd.is-full .rd-btn.key{display:none}
.rd-progress{height:3px;background:transparent}
.rd-progress span{display:block;height:100%;width:0;background:var(--r-acc)}
.rd-panel{position:fixed;z-index:20;top:calc(env(safe-area-inset-top,0px) + 56px);right:max(12px,env(safe-area-inset-right,0px));width:min(380px,calc(100vw - 24px));max-height:calc(100vh - 80px);overflow:auto;
  background:var(--r-card);color:var(--r-fg);border:1px solid var(--r-rule);box-shadow:0 18px 50px -18px rgba(0,0,0,.45);padding:18px 18px 20px;font-family:var(--f-ui)}
.rd-panel h2{font-family:var(--f-display);font-size:1.3rem;margin:0 0 12px;padding-right:30px}
.rd-close{position:absolute;top:10px;right:10px;background:none;border:0;color:var(--r-soft);font-size:1.4rem;line-height:1;cursor:pointer;padding:4px 8px}
.rd-row{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.rd-row .lab{width:100%;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--r-soft)}
#rd-toc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px}
#rd-toc-list button{width:100%;text-align:left;background:none;border:0;border-radius:3px;padding:7px 8px;color:var(--r-fg);font:inherit;font-size:.9rem;cursor:pointer}
#rd-toc-list button:hover{background:color-mix(in srgb,var(--r-fg) 8%,transparent)}
#rd-toc-list button[aria-current]{background:var(--r-fg);color:var(--r-bg)}
#rd-toc-list button.locked{color:var(--r-soft)}
#rd-toc-list button.locked::after{content:" 🔒";font-size:.75em}
.rd-main{max-width:720px;margin:0 auto;padding:28px max(18px,env(safe-area-inset-left,0px)) 40px}
.rd-meta{display:flex;justify-content:space-between;gap:12px;font-family:var(--f-ui);font-size:.8rem;color:var(--r-soft);margin-bottom:8px}
.rd-meta a{color:inherit}
.rd h1.rd-ch{font-family:var(--f-display);font-weight:400;text-align:center;font-size:2.6rem;line-height:1;margin:1.4em 0 1.1em;color:var(--r-acc)}
.rd h1.rd-ch span{display:block;font-family:var(--f-ui);font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--r-soft);margin-bottom:10px}
.rd-text{font-size:var(--rfs);line-height:1.78;hyphens:auto;-webkit-hyphens:auto}
.rd[data-ff="sans"] .rd-text{font-family:var(--f-ui);line-height:1.7}
.rd-text p{margin:0 0 .85em;text-indent:1.5em}
.rd-text p:first-child{text-indent:0}
.rd-text p:first-child::first-letter{font-family:var(--f-display);float:left;font-size:3.3em;line-height:.82;padding:.08em .12em 0 0;color:var(--r-acc)}
.rd-text p.c{text-align:center;text-indent:0}
.rd-text p.r{text-align:right;text-indent:0}
.rd-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:40px 0 0;padding-top:22px;border-top:1px solid var(--r-rule);font-family:var(--f-ui)}
.rd-nav .rd-btn{padding:11px 16px;font-size:.92rem}
.rd-nav .rd-btn:disabled{opacity:.35;cursor:default}
#rd-pos{font-size:.85rem;color:var(--r-soft);font-variant-numeric:tabular-nums}
.rd-wall{margin:10px 0 0;padding:30px 26px;background:var(--r-card);border-top:3px solid var(--r-acc);text-align:center;font-family:var(--f-ui)}
.rd-wall h2{font-family:var(--f-display);font-weight:400;font-size:1.8rem;margin:0 0 10px;color:var(--r-fg)}
.rd-wall p{margin:0 auto 16px;max-width:44ch;color:var(--r-soft);line-height:1.55}
.rd-wall .pv{font-family:var(--f-display);font-size:2.2rem;color:var(--r-fg);margin:6px 0 4px}
.rd-wall .inc{font-size:.85rem;color:var(--r-soft);margin-bottom:20px}
.rd-wall .btns{justify-content:center;margin-bottom:14px}
.rd-wall .btn{border-color:var(--r-fg);color:var(--r-fg)}
.rd-wall .btn.solid{background:var(--r-fg);color:var(--r-bg)}
.rd-wall .btn.solid:hover{background:var(--r-acc);border-color:var(--r-acc);color:#fff}
.rd-wall .bund{font-size:.9rem}
.rd-wall .bund a{color:var(--r-acc)}
.rd-wall .linkish{background:none;border:0;color:var(--r-acc);text-decoration:underline;font:inherit;cursor:pointer;padding:0}
#rd-form{display:grid;gap:10px}
#rd-form input{font-family:var(--f-ui);font-size:1.1rem;letter-spacing:.08em;text-transform:uppercase;padding:11px 12px;border:1px solid var(--r-rule);background:var(--r-bg);color:var(--r-fg);border-radius:3px;width:100%}
#rd-form .btn.solid{background:var(--r-fg);color:var(--r-bg);border-color:var(--r-fg)}
#rd-unlock p{font-size:.88rem;line-height:1.5;color:var(--r-soft);margin:0 0 12px}
#rd-unlock .msg{margin-top:12px}
.rd.is-loading .rd-text::before{content:"Завантажуємо книгу…";display:block;text-align:center;color:var(--r-soft);font-family:var(--f-ui)}
.rd-foot{max-width:720px;margin:0 auto;padding:0 18px 40px;font-family:var(--f-ui);font-size:.82rem;color:var(--r-soft);text-align:center}
.rd-foot a{color:inherit}
@media (max-width:600px){
  .rd h1.rd-ch{font-size:2.2rem}
  .rd-bar .t{display:none}
  .rd-bar .in{justify-content:space-between}
  .rd-nav .rd-btn{padding:10px 12px;font-size:.86rem}
}
@media print{.rd-bar,.rd-nav,.rd-panel,.rd-wall{display:none}}

/* ===== Блоки електронної книги на сторінках сайту ===== */
.ebox{margin:0 0 24px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--fg,var(--ink)) 30%,transparent);font-family:var(--f-ui);display:grid;grid-template-columns:1fr auto;gap:6px 18px;align-items:center;max-width:560px}
.ebox .et{font-family:var(--f-display);font-size:1.15rem}
.ebox .ep{font-family:var(--f-display);font-size:1.5rem;white-space:nowrap}
.ebox .ed{grid-column:1/-1;font-size:.84rem;opacity:.85;line-height:1.45}
.ebox .btns{grid-column:1/-1;margin-top:8px}
.ebox .btn{padding:9px 16px;font-size:.88rem}
.cat .ebox{border-color:var(--rule)}
.buybox .ebuy{border-top:1px solid var(--rule);margin-top:18px;padding-top:16px}
.buybox .ebuy h3{font-family:var(--f-display);font-weight:400;font-size:1.2rem;margin:0 0 6px}
.buybox .ebuy .pv{font-family:var(--f-display);font-size:1.5rem;margin:0 0 8px}
.ebooks-hero{padding-block:64px 24px}
.ebooks-hero p{max-width:60ch;font-size:1.1rem;color:var(--ink-soft)}
.eb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:36px 26px;margin:0 0 56px}
.eb-card{display:flex;flex-direction:column;gap:10px}
.eb-card img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:0 14px 30px -16px rgba(10,14,30,.55)}
.eb-card h2{font-size:1.35rem;margin:4px 0 0}
.eb-card h2 a{text-decoration:none}
.eb-card .ep{font-family:var(--f-display);font-size:1.4rem}
.eb-card .btns{gap:8px}
.eb-card .btn{padding:9px 14px;font-size:.86rem}
.eb-how{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0 0 56px}
.eb-how div{background:var(--paper-2);padding:22px;border-top:3px solid var(--accent);font-family:var(--f-ui);font-size:.95rem;line-height:1.5}
.eb-how b{display:block;font-family:var(--f-display);font-weight:400;font-size:1.25rem;margin-bottom:6px}
.eb-faq{max-width:68ch;margin:0 0 40px}
.eb-faq details{border-bottom:1px solid var(--rule);padding:14px 0}
.eb-faq summary{cursor:pointer;font-family:var(--f-display);font-size:1.15rem}
.eb-faq p{margin:10px 0 0;font-family:var(--f-ui);font-size:.95rem;line-height:1.55;color:var(--ink-soft)}
@media (max-width:860px){.eb-how{grid-template-columns:1fr}}
.pick .ebook-item{border-style:dashed}
.pick .ebook-item .bm b{color:var(--accent);font-weight:600}
.eline{font-family:var(--f-ui);font-size:.88rem;margin:16px 0 0;opacity:.9}
.eline a{color:inherit;text-underline-offset:3px}
.cat .eline{margin:12px 0 0;color:var(--ink-soft)}
.cat .eline a{color:var(--accent)}
.read-alt{font-family:var(--f-ui);font-size:.85rem;margin-top:10px!important}
.read-alt a{color:var(--ink-soft)}
.pick-h{font-family:var(--f-display);font-weight:400;font-size:1.25rem;margin:26px 0 12px;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.pick-h span{font-family:var(--f-ui);font-size:.8rem;color:var(--ink-soft)}
.rd-age{font-family:var(--f-ui);font-size:.8rem;color:var(--r-soft);text-align:center;margin:6px 0 0}
.book .ebox{border-color:color-mix(in srgb,var(--fg) 35%,transparent);margin-top:22px}
