
/* Бібліотека Благовіст — front styles
   LIGHT = як у твоєму HTML-блоці (#bv-lib …)
   DARK = тільки коли тема сайту реально вмикає dark-клас/атрибут.
   (Ми НЕ використовуємо prefers-color-scheme, щоб не ламати світлу тему,
   якщо в користувача темна ОС.)
*/

#bv-lib{
  /* LIGHT (default) — 1:1 з твого прикладу */
  --bv-bg:#fff;
  --bv-surface:#fff;
  --bv-text:#222;
  --bv-work-text:#333;
  --bv-result-text:#333;

  --bv-muted:#999;
  --bv-icon:#aaa;

  --bv-border:#ddd;
  --bv-border-2:#e0e0e0;
  --bv-border-tab:#ccc;

  --bv-soft:#fdf5f5;
  --bv-soft-2:#f5f5f5;
  --bv-shadow:0 2px 8px rgba(192,57,43,0.08);

  --bv-accent:#c0392b;

  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,sans-serif;
  font-size:15px;
  color:var(--bv-text);
  max-width:100%;
}

/* JS-driven theme (most reliable when theme toggle doesn't change html/body classes) */
#bv-lib[data-bv-theme="dark"]{
  --bv-bg:#121212;
  --bv-surface:#151515;
  --bv-text:#f2ede6;
  --bv-muted:#bca489;
  --bv-icon:#bca489;
  --bv-border:rgba(255,255,255,.14);
  --bv-border-2:rgba(255,255,255,.10);
  --bv-border-tab:rgba(255,255,255,.20);
  --bv-soft:rgba(255,255,255,.06);
  --bv-soft-2:rgba(255,255,255,.08);
  --bv-work-text:#e7d6c2;
  --bv-result-text:#e7d6c2;
  --bv-accent:#ff7a7a;
  --bv-shadow:0 10px 26px rgba(0,0,0,.55);
}

/* Common theme toggles in WP themes */
html[data-theme="dark"] #bv-lib,
html.dark #bv-lib,
body.dark #bv-lib,
body.dark-mode #bv-lib,
.dark #bv-lib,
.dark-mode #bv-lib{
  /* DARK overrides */
  --bv-bg:#121212;
  --bv-surface:#151515;
  --bv-text:#f2ede6;
  --bv-work-text:#e7d6c2;
  --bv-result-text:#e7d6c2;

  --bv-muted:#bca489;
  --bv-icon:#bca489;

  --bv-border:rgba(255,255,255,.14);
  --bv-border-2:rgba(255,255,255,.10);
  --bv-border-tab:rgba(255,255,255,.20);

  --bv-soft:rgba(255,255,255,.06);
  --bv-soft-2:rgba(255,255,255,.08);
  --bv-shadow:0 10px 26px rgba(0,0,0,.55);

  --bv-accent:#ff7a7a;
}

/* Search */
#bv-lib .bv-search-wrap{ position:relative; margin-bottom:1.2rem; }
#bv-lib .bv-search{
  width:100%;
  padding:.6rem 1rem .6rem 2.4rem;
  font-family:inherit;
  font-size:.95rem;
  border:1px solid var(--bv-border);
  border-radius:4px;
  background:var(--bv-surface);
  color:var(--bv-text);
  outline:none;
  box-sizing:border-box;
  transition:border-color .2s, background .2s, color .2s;
}
#bv-lib .bv-search:focus{ border-color:var(--bv-accent); }
#bv-lib .bv-search-icon{
  position:absolute;
  left:.75rem;
  top:50%;
  transform:translateY(-50%);
  color:var(--bv-icon);
  font-size:.85rem;
  pointer-events:none;
}

/* Tabs */
#bv-lib .bv-tabs{
  display:flex;
  flex-wrap:nowrap;
  gap:.4rem;
  margin-bottom:1.4rem;
  padding-bottom:.9rem;
  border-bottom:1px solid var(--bv-border-2);
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  scroll-snap-type:x mandatory;
}
#bv-lib .bv-tabs::-webkit-scrollbar{ display:none; }
#bv-lib .bv-tab{
  flex-shrink:0;
  scroll-snap-align:start;
}
#bv-lib .bv-tab{
  font-family:inherit;
  font-size:.82rem;
  letter-spacing:.03em;
  padding:.3rem .85rem;
  background:var(--bv-surface);
  border:1px solid var(--bv-border-tab);
  border-radius:20px;
  cursor:pointer;
  color:#555;
  transition:background .15s, color .15s, border-color .15s;
  line-height:1.6;
}
#bv-lib .bv-tab:hover{
  border-color:var(--bv-accent);
  color:var(--bv-accent);
}
#bv-lib .bv-tab.active{
  background:var(--bv-accent);
  border-color:var(--bv-accent);
  color:#fff;
}

/* Sections */
#bv-lib .bv-section{ display:none; }
#bv-lib .bv-section.active{ display:block; }

#bv-lib .bv-section-title{
  font-size:1rem;
  font-weight:600;
  color:var(--bv-text);
  margin:1.6rem 0 .9rem;
  padding-bottom:.5rem;
  border-bottom:1px solid var(--bv-border-2);
}
#bv-lib .bv-section-title:first-child{ margin-top:0; }

/* Grid */
#bv-lib .bv-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  gap:.65rem;
  margin-bottom:.5rem;
}

/* Card */
#bv-lib .bv-card{
  border:1px solid var(--bv-border);
  border-radius:5px;
  background:var(--bv-surface);
  overflow:hidden;
  transition:border-color .2s, box-shadow .2s, background .2s;
}
#bv-lib .bv-card:hover{
  border-color:var(--bv-accent);
  box-shadow:var(--bv-shadow);
}
#bv-lib .bv-card-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:.65rem .9rem;
  cursor:pointer;
  user-select:none;
}
#bv-lib .bv-rank{
  display:block;
  font-size:.72rem;
  color:var(--bv-muted);
  font-style:italic;
  margin-bottom:.15rem;
  line-height:1.3;
}
#bv-lib .bv-name{
  font-size:.97rem;
  font-weight:600;
  color:var(--bv-text);
  line-height:1.3;
}
#bv-lib .bv-name a{ color:inherit; text-decoration:none; }
#bv-lib .bv-name a:hover{ color:var(--bv-accent); }

#bv-lib .bv-toggle{
  background:none;
  border:none;
  width:22px;
  height:22px;
  border-radius:50%;
  border:1px solid var(--bv-border);
  font-size:1rem;
  line-height:1;
  cursor:pointer;
  color:var(--bv-muted);
  padding:0;
  flex-shrink:0;
  margin-left:.5rem;
  transition:transform .25s, background .2s, color .2s, border-color .2s;
  display:flex;
  align-items:center;
  justify-content:center;
}
#bv-lib .bv-card:hover .bv-toggle{
  border-color:var(--bv-accent);
  color:var(--bv-accent);
}
#bv-lib .bv-card.open .bv-toggle{
  transform:rotate(45deg);
  background:var(--bv-accent);
  border-color:var(--bv-accent);
  color:#fff;
}

/* Works */
#bv-lib .bv-works{
  max-height:0;
  overflow:hidden;
  transition:max-height .38s ease;
  border-top:0px solid var(--bv-border-2);
  background:var(--bv-surface);
}
#bv-lib .bv-card.open .bv-works{
  max-height:900px;
  border-top-width:1px;
}
#bv-lib .bv-work{
  display:flex;
  align-items:center;
  gap:.5rem;
  padding:.5rem .9rem;
  font-size:.87rem;
  line-height:1.45;
  color:var(--bv-work-text);
  text-decoration:none;
  border-bottom:1px solid color-mix(in srgb, var(--bv-border) 50%, transparent);
  transition:background .12s, color .12s;
}
#bv-lib .bv-work:last-child{ border-bottom:none; }
#bv-lib .bv-work:hover{
  background:var(--bv-soft);
  color:var(--bv-accent);
}
#bv-lib .bv-work::before{
  line-height:1.3;
  content:'›';
  color:var(--bv-accent);
  flex-shrink:0;
  font-size:18px;
  margin-top:0;
}

/* Search results */
#bv-lib .bv-results{ margin-top:.25rem; }
#bv-lib .bv-result-count{
  font-size:.8rem;
  color:var(--bv-muted);
  font-style:italic;
  margin-bottom:.7rem;
}
#bv-lib .bv-result-item{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  padding:.6rem .9rem;
  border:1px solid color-mix(in srgb, var(--bv-border) 70%, transparent);
  border-radius:5px;
  margin-bottom:.45rem;
  text-decoration:none;
  color:var(--bv-result-text);
  background:var(--bv-surface);
  font-size:.9rem;
  transition:border-color .15s, background .15s, color .15s;
}
#bv-lib .bv-result-item:hover{
  border-color:var(--bv-accent);
  background:var(--bv-soft);
  color:var(--bv-accent);
}
#bv-lib .bv-badge{
  font-size:.68rem;
  padding:.2em .55em;
  background:var(--bv-soft-2);
  border:1px solid color-mix(in srgb, var(--bv-border) 70%, transparent);
  border-radius:3px;
  white-space:nowrap;
  flex-shrink:0;
  margin-top:.1em;
  color:color-mix(in srgb, var(--bv-muted) 90%, transparent);
}
#bv-lib .bv-result-author{
  font-size:.78rem;
  color:var(--bv-muted);
  font-style:italic;
  margin-bottom:.15rem;
}
#bv-lib .bv-no-results{
  text-align:center;
  padding:2.5rem 1rem;
  color:color-mix(in srgb, var(--bv-muted) 80%, transparent);
  font-style:italic;
  font-size:.95rem;
}
#bv-lib mark{
  background:color-mix(in srgb, var(--bv-accent) 18%, transparent);
  color:var(--bv-accent);
  border-radius:2px;
  padding:0 1px;
  font-weight:600;
}

/* Mobile */
@media (max-width:640px){
  #bv-lib .bv-grid{ grid-template-columns:1fr; }
  #bv-lib .bv-tab{ font-size:.78rem; padding:.28rem .7rem; }
}

/* ── Перемикач режиму ── */
#bv-lib .bv-view-switcher{
  display:flex;
  gap:.35rem;
  margin-bottom:1rem;
  align-items:center;
}
#bv-lib .bv-view-label{
  font-size:.8rem;
  color:var(--bv-muted);
  margin-right:.3rem;
  white-space:nowrap;
}
#bv-lib .bv-view-btn{
  font-family:inherit;
  font-size:.82rem;
  padding:.28rem .8rem;
  border-radius:20px;
  border:1px solid var(--bv-border-tab);
  background:var(--bv-surface);
  color:#555;
  cursor:pointer;
  transition:background .15s, color .15s, border-color .15s;
  line-height:1.6;
  display:flex;
  align-items:center;
  gap:.35rem;
}
#bv-lib .bv-view-btn:hover{
  border-color:var(--bv-accent);
  color:var(--bv-accent);
}
#bv-lib .bv-view-btn.active{
  background:var(--bv-accent);
  border-color:var(--bv-accent);
  color:#fff;
}
#bv-lib[data-bv-theme="dark"] .bv-view-btn{ color:var(--bv-muted); }
#bv-lib[data-bv-theme="dark"] .bv-view-btn.active{ color:#fff; }

/* ── Картки у режимі "Розділи" — твори відкриті одразу ── */
#bv-lib .bv-works-open{
  max-height:none !important;
  border-top-width:1px !important;
}
#bv-lib .bv-card-head{ cursor:default; user-select:text; }

/* ── Алфавітний список авторів ── */
#bv-lib #bv-view-authors{ }

#bv-lib .bv-alpha-group{
  margin-bottom:1.4rem;
}
#bv-lib .bv-alpha-letter{
  font-size:1.15rem;
  font-weight:700;
  color:var(--bv-accent);
  border-bottom:2px solid var(--bv-accent);
  margin-bottom:.55rem;
  padding-bottom:.2rem;
  width:2rem;
  text-align:center;
  line-height:1.4;
}

#bv-lib .bv-author-row{
  border:1px solid var(--bv-border);
  border-radius:5px;
  background:var(--bv-surface);
  margin-bottom:.5rem;
  overflow:hidden;
  transition:border-color .2s, box-shadow .2s;
}
#bv-lib .bv-author-row:hover{
  border-color:var(--bv-accent);
  box-shadow:var(--bv-shadow);
}
#bv-lib .bv-author-row-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:.6rem .9rem;
  cursor:pointer;
  user-select:none;
}
#bv-lib .bv-author-info{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.3rem .7rem;
  min-width:0;
}
#bv-lib .bv-author-link{
  color:inherit;
  text-decoration:none;
}
#bv-lib .bv-author-link:hover{ color:var(--bv-accent); }
#bv-lib .bv-author-link-plain{ color:inherit; }

#bv-lib .bv-cat-badge{
  font-size:.65rem;
  padding:.15em .45em;
  margin-left:.2rem;
  align-self:center;
}

#bv-lib .bv-author-row .bv-toggle{
  background:none;
  border:1px solid var(--bv-border);
  width:22px;
  height:22px;
  border-radius:50%;
  cursor:pointer;
  color:var(--bv-muted);
  padding:0;
  flex-shrink:0;
  margin-left:.5rem;
  transition:transform .25s, background .2s, color .2s, border-color .2s;
  display:flex;
  align-items:center;
  justify-content:center;
}
#bv-lib .bv-author-row:hover .bv-toggle{
  border-color:var(--bv-accent);
  color:var(--bv-accent);
}
#bv-lib .bv-author-row.open .bv-toggle{
  transform:rotate(45deg);
  background:var(--bv-accent);
  border-color:var(--bv-accent);
  color:#fff;
}
#bv-lib .bv-author-row .bv-works{
  max-height:0;
  overflow:hidden;
  transition:max-height .38s ease;
  border-top:0px solid var(--bv-border-2);
}
#bv-lib .bv-author-row.open .bv-works{
  max-height:900px;
  border-top-width:1px;
}

/* ── Пошук у режимі авторів —ховає список ── */
#bv-lib #bv-search-out{ margin-top:.25rem; }

/* Mobile */
@media (max-width:640px){
  #bv-lib .bv-view-switcher{ flex-wrap:wrap; }
  #bv-lib .bv-alpha-letter{ font-size:1rem; }
}

/* ── Лічильник творів ── */
#bv-lib .bv-works-count{
  display:inline-block;
  font-size:.68rem;
  color:var(--bv-muted);
  background:var(--bv-soft-2);
  border:1px solid var(--bv-border-2);
  border-radius:10px;
  padding:.1em .5em;
  margin-top:.3rem;
  letter-spacing:.01em;
}

/* ── Кількість у табах ── */
#bv-lib .bv-tab-count{
  display:inline-block;
  font-size:.72em;
  background:rgba(0,0,0,.08);
  border-radius:9px;
  padding:.05em .45em;
  margin-left:.3em;
  font-weight:400;
  vertical-align:middle;
  line-height:1.5;
}
#bv-lib .bv-tab.active .bv-tab-count{
  background:rgba(255,255,255,.25);
}
#bv-lib[data-bv-theme="dark"] .bv-tab-count{
  background:rgba(255,255,255,.12);
}

/* ── Випадковий твір ── */
#bv-lib .bv-random-wrap{
  display:flex;
  align-items:center;
  gap:.75rem;
  margin-bottom:1.1rem;
  flex-wrap:wrap;
}
#bv-lib #bv-random-btn{
  font-family:inherit;
  font-size:.82rem;
  padding:.32rem .9rem;
  border-radius:20px;
  border:1px dashed var(--bv-accent);
  background:transparent;
  color:var(--bv-accent);
  cursor:pointer;
  transition:background .15s, color .15s;
  display:flex;
  align-items:center;
  gap:.4rem;
  white-space:nowrap;
}
#bv-lib #bv-random-btn:hover{
  background:var(--bv-accent);
  color:#fff;
}
#bv-lib #bv-random-tip{
  display:none;
  font-size:.82rem;
  color:var(--bv-muted);
  font-style:italic;
  transition:opacity .3s;
  flex:1;
  min-width:0;
}
#bv-lib #bv-random-tip .bv-rank{
  display:inline;
  margin-bottom:0;
}

/* ── Якірна навігація А Б В… ── */
#bv-lib .bv-alpha-nav{
  display:flex;
  flex-wrap:wrap;
  gap:.3rem;
  margin-bottom:1.2rem;
  padding:.6rem .75rem;
  background:var(--bv-soft-2);
  border:1px solid var(--bv-border-2);
  border-radius:6px;
}
#bv-lib .bv-alpha-nav-btn{
  font-family:inherit;
  font-size:.85rem;
  font-weight:600;
  width:1.9rem;
  height:1.9rem;
  border-radius:4px;
  border:1px solid var(--bv-border);
  background:var(--bv-surface);
  color:var(--bv-accent);
  cursor:pointer;
  transition:background .15s, color .15s, border-color .15s;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  line-height:1;
}
#bv-lib .bv-alpha-nav-btn:hover{
  background:var(--bv-accent);
  border-color:var(--bv-accent);
  color:#fff;
}

@media (max-width:640px){
  #bv-lib .bv-alpha-nav{ gap:.2rem; padding:.5rem; }
  #bv-lib .bv-alpha-nav-btn{ width:1.7rem; height:1.7rem; font-size:.8rem; }
  #bv-lib .bv-random-wrap{ flex-direction:column; align-items:flex-start; }
}

/* ── Мітка NEW ── */
#bv-lib .bv-new-badge{
  display:inline-block;
  font-size:.58rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:.15em .45em;
  background:var(--bv-accent);
  color:#fff;
  border-radius:3px;
  vertical-align:middle;
  margin-left:.45em;
  line-height:1.4;
  flex-shrink:0;
  align-self:center;
  white-space:nowrap;
}
/* У рядку твору — трохи менший, щоб не домінував */
#bv-lib .bv-work .bv-new-badge{
  font-size:.54rem;
  padding:.1em .38em;
  margin-left:.4em;
  opacity:.9;
}

/* ── Мобільний скрол табів ── */
@media (max-width:640px){
  #bv-lib .bv-tabs{
    padding-bottom:1rem;
    gap:.35rem;
  }
}


/* ══════════════════════════════════════════════════════
   [blagovist_biblioteka]  — bvml стилі  v1.8
   ══════════════════════════════════════════════════════ */
.bvml-wrap{
  --r:#9e2a1a; --r-light:#c0392b; --r-bg:#fdf3f2; --r-bd:#f0c0ba;
  --bd:#e0ddd9; --tx:#1c1a18; --tx2:#5a5550; --blue:#1a4a8a;
  --soft:#f9f7f5; --white:#fff; --gold:#8a6a2a;
  --sh:0 2px 8px rgba(0,0,0,.07);
  --radius:8px;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:15px; color:var(--tx); max-width:100%;
}

/* ── Пошук ── */
.bvml-search-row{ margin-bottom:16px; }
.bvml-search-box{
  display:flex; align-items:center; gap:10px;
  background:var(--white); border:2px solid var(--bd);
  border-radius:50px; padding:11px 20px; cursor:text;
  transition:border-color .2s,box-shadow .2s;
  box-shadow:var(--sh);
}
.bvml-search-box:focus-within{
  border-color:var(--r-light);
  box-shadow:0 0 0 3px rgba(192,57,43,.12), var(--sh);
}
.bvml-search-box svg{ color:#bbb; flex-shrink:0; }
.bvml-search-input{
  flex:1; border:none; outline:none; font-size:15px;
  color:var(--tx); background:transparent; min-width:0; font-family:inherit;
}
.bvml-search-input::placeholder{ color:#c5bfba; }
.bvml-clear{
  background:none; border:none; cursor:pointer; padding:3px 5px;
  color:#bbb; display:flex; border-radius:50%;
  transition:color .15s,background .15s;
}
.bvml-clear:hover{ color:var(--r-light); background:var(--r-bg); }

/* ── Результати ── */
.bvml-results{
  background:var(--white); border:1px solid var(--bd); border-radius:var(--radius);
  margin-bottom:14px; box-shadow:0 6px 24px rgba(0,0,0,.1);
  overflow:hidden; animation:bvmlFade .2s ease;
}
@keyframes bvmlFade{ from{opacity:0;transform:translateY(-6px)} to{opacity:1;transform:none} }
.bvml-results-bar{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 18px; background:var(--soft); border-bottom:1px solid var(--bd);
  font-size:13px; color:#888;
}
.bvml-results-count{ font-weight:700; color:var(--tx); }
.bvml-results-back{
  background:none; border:1px solid var(--r-bd); cursor:pointer; color:var(--r-light);
  font-size:13px; padding:4px 12px; border-radius:20px;
  font-family:inherit; transition:all .15s;
}
.bvml-results-back:hover{ background:var(--r); border-color:var(--r); color:#fff; }
.bvml-results-list{ max-height:460px; overflow-y:auto; }

.bvml-res-item{
  display:flex; align-items:flex-start; gap:12px;
  padding:11px 18px; border-bottom:1px solid #f5f2ef;
  text-decoration:none; color:inherit; transition:background .15s;
}
.bvml-res-item:last-child{ border-bottom:none; }
.bvml-res-item:hover{ background:var(--r-bg); }
.bvml-res-title{ flex:1; font-size:15px; color:var(--blue); line-height:1.45; }
.bvml-res-title mark{ background:#fff3b0; color:var(--tx); border-radius:2px; padding:0 2px; font-style:normal; font-weight:600; }
.bvml-res-author{ font-size:12px; color:#999; display:block; margin-top:2px; }
.bvml-res-sec{
  font-size:11px; color:#888; background:#f0ede8;
  border-radius:10px; padding:3px 9px; white-space:nowrap;
  flex-shrink:0; margin-top:2px;
}
.bvml-no-res{ padding:32px; text-align:center; color:#aaa; font-size:14px; }
.bvml-no-res strong{ color:var(--tx); }

/* ── Швидкий доступ ── */
.bvml-quick{
  display:flex; gap:7px; margin-bottom:16px;
  /* мобільний горизонтальний скрол */
  overflow-x:auto; -webkit-overflow-scrolling:touch;
  scrollbar-width:none; padding-bottom:4px;
}
.bvml-quick::-webkit-scrollbar{ display:none; }
.bvml-chip{
  display:inline-flex; align-items:center; gap:5px; flex-shrink:0;
  background:var(--white); border:1.5px solid var(--bd);
  border-radius:24px; padding:7px 15px; font-size:13.5px;
  color:var(--tx2); text-decoration:none; white-space:nowrap;
  transition:all .18s; box-shadow:0 1px 4px rgba(0,0,0,.05);
  font-weight:500;
}
.bvml-chip:hover{
  background:var(--r); border-color:var(--r); color:#fff;
  transform:translateY(-2px); box-shadow:0 4px 12px rgba(158,42,26,.28);
}
.bvml-chip:active{ transform:translateY(0); }

/* ── Акордеони ── */
.bvml-acc{
  border:1px solid var(--bd); border-radius:var(--radius);
  margin-bottom:8px; overflow:clip; background:var(--white);
  box-shadow:var(--sh); transition:box-shadow .2s, border-color .2s;
}
.bvml-acc:hover{ box-shadow:0 4px 16px rgba(0,0,0,.1); border-color:#ccc; }
.bvml-acc-btn{
  display:flex; align-items:center; gap:12px; width:100%;
  padding:16px 20px; background:var(--white); border:none;
  border-left:4px solid var(--r); cursor:pointer; text-align:left;
  transition:background .15s; font-family:inherit;
}
.bvml-acc-btn:hover,
.bvml-acc.is-open .bvml-acc-btn{ background:var(--r-bg); }
.bvml-acc-arrow{
  color:var(--r-light); font-size:17px; flex-shrink:0;
  transition:transform .25s; line-height:1;
}
.bvml-acc.is-open .bvml-acc-arrow{ transform:rotate(90deg); }
.bvml-acc-label{
  font-size:13px; font-weight:800; letter-spacing:.09em;
  text-transform:uppercase; color:var(--tx); flex:1;
}
.bvml-acc-meta{
  font-size:11px; color:#999; background:#eeebe7;
  border-radius:12px; padding:3px 10px; white-space:nowrap; flex-shrink:0;
}
.bvml-acc-chev{
  color:#ccc; flex-shrink:0; transition:transform .25s;
}
.bvml-acc.is-open .bvml-acc-chev{ transform:rotate(180deg); }
.bvml-acc-body{
  display:none; border-top:1px solid var(--bd);
  padding:18px 20px 22px; animation:bvmlFade .22s ease;
}
.bvml-acc.is-open .bvml-acc-body{ display:block; }

/* ── Таби ── */
.bvml-tabs-wrap{
  position:relative; margin-bottom:16px;
  border-bottom:1px solid var(--bd);
}
.bvml-tabs-wrap::before,
.bvml-tabs-wrap::after{
  content:''; position:absolute; top:0; bottom:14px; width:48px;
  pointer-events:none; z-index:2; transition:opacity .2s;
}
.bvml-tabs-wrap::before{
  left:0;
  background:linear-gradient(to right, var(--white) 40%, transparent);
}
.bvml-tabs-wrap::after{
  right:0;
  background:linear-gradient(to left, var(--white) 40%, transparent);
}
.bvml-tabs-wrap.no-left::before{ opacity:0; }
.bvml-tabs-wrap.no-right::after{ opacity:0; }
.bvml-tabs-arrow{
  position:absolute; top:50%; transform:translateY(calc(-50% - 7px));
  z-index:3; width:28px; height:28px; border-radius:50%;
  border:1.5px solid var(--bd); background:var(--white);
  cursor:pointer; display:flex; align-items:center; justify-content:center;
  font-size:14px; color:var(--tx2); line-height:1;
  box-shadow:0 1px 4px rgba(0,0,0,.12);
  transition:border-color .15s, color .15s, opacity .2s;
}
.bvml-tabs-arrow:hover{ border-color:var(--r); color:var(--r); }
.bvml-tabs-arrow.arr-left{ left:4px; }
.bvml-tabs-arrow.arr-right{ right:4px; }
.bvml-tabs-wrap.no-left .arr-left{ opacity:0; pointer-events:none; }
.bvml-tabs-wrap.no-right .arr-right{ opacity:0; pointer-events:none; }
.bvml-tabs{
  display:flex; gap:5px; padding-bottom:14px; padding-left:2px; padding-right:2px;
  overflow-x:auto; -webkit-overflow-scrolling:touch;
  scrollbar-width:none; flex-wrap:nowrap;
}
.bvml-tabs::-webkit-scrollbar{ display:none; }
.bvml-tab{
  background:var(--soft); border:1.5px solid var(--bd);
  border-radius:22px; padding:6px 15px; font-size:13px;
  color:var(--tx2); cursor:pointer; font-family:inherit;
  transition:all .15s; white-space:nowrap; flex-shrink:0;
}
.bvml-tab:hover{ background:var(--r-bg); border-color:var(--r-bd); color:var(--r-light); }
.bvml-tab.is-on{ background:var(--r); border-color:var(--r); color:#fff; font-weight:700; }
.bvml-tab-panel{ display:none; animation:bvmlFade .18s ease; }
.bvml-tab-panel.is-on{ display:block; }

/* ── Список посилань (Молитвослов) ── */
.bvml-wrap ul, .bvml-wrap ol,
.bvml-wrap ul li, .bvml-wrap ol li { list-style:none !important; padding:0 !important; margin:0 !important; }
.bvml-linklist{ list-style:none !important; padding:0; margin:0; }
.bvml-linklist li{ display:flex; }
.bvml-linklist li a{
  flex:1; color:var(--blue); text-decoration:none;
  font-size:17px; line-height:1.7; padding:8px 8px 8px 24px;
  position:relative; border-radius:4px; transition:color .15s,background .15s,padding-left .15s;
}
.bvml-linklist li a::before {
    content: "›";
    position: absolute;
    left: 6px;
    color: var(--r-light);
    font-size: 18px;
    line-height: 1.3;
}
.bvml-linklist li a:hover{ color:var(--r); background:var(--r-bg); padding-left:24px; }

/* ── Сітка богослужбових книг ── */
.bvml-book-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:10px;
}
@media(max-width:600px){ .bvml-book-grid{ grid-template-columns:repeat(3,1fr); gap:8px; } }
@media(max-width:380px){ .bvml-book-grid{ grid-template-columns:repeat(2,1fr); } }
.bvml-book-tile{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:6px; text-align:center; background:var(--soft); border:1.5px solid var(--bd);
  border-radius:var(--radius); padding:15px 8px 13px; text-decoration:none; color:var(--tx2);
  min-height:82px; transition:all .18s; box-shadow:0 1px 4px rgba(0,0,0,.04);
}
.bvml-book-tile:hover{
  background:var(--r); border-color:var(--r); color:#fff;
  transform:translateY(-3px); box-shadow:0 6px 16px rgba(158,42,26,.25);
}
.bvml-book-ico{ font-size:24px; line-height:1; }
.bvml-book-nm{ font-size:13px; line-height:1.3; font-weight:500; }

/* ── Автори та твори (CPT) ── */
.bvml-author{
  padding:12px 0; border-bottom:1px solid #f0ede8;
}
.bvml-author:last-child{ border-bottom:none; padding-bottom:0; }
.bvml-author-hd{
  display:flex; align-items:center; gap:7px; flex-wrap:wrap;
  margin-bottom:6px;
}
.bvml-author-link{
  font-weight:700; font-style:italic; font-size:15px; color:#3a3530;
  text-decoration:none; border-bottom:1px dotted var(--r-light);
  transition:color .15s;
}
.bvml-author-link:hover{ color:var(--r); }
.bvml-author-plain{ font-weight:700; font-style:italic; font-size:15px; color:#3a3530; }
.bvml-works{ list-style:none !important; padding:0; margin:0; }
.bvml-works li{ display:flex; align-items:center; gap:5px; }
.bvml-works li a{
  flex:1; color:var(--blue); text-decoration:none;
  font-size:14.5px; line-height:1.5; padding:5px 5px 5px 18px;
  position:relative; border-radius:4px; transition:color .15s,background .15s;
}
.bvml-works li a::before{
  content:'›'; position:absolute; left:4px;
  color:var(--r-light); font-size:18px; line-height:1.3; top:4px;
}
.bvml-works li a:hover{ color:var(--r); background:var(--r-bg); }
.bvml-empty{ color:#aaa; font-size:14px; font-style:italic; padding:10px 0; }

/* ── Мобільна версія ── */
@media(max-width:640px){
  .bvml-wrap{ font-size:14px; }
  .bvml-search-box{ padding:10px 16px; }
  .bvml-search-input{ font-size:14px; }
  .bvml-acc-btn{ padding:13px 15px; gap:10px; }
  .bvml-acc-label{ font-size:12px; letter-spacing:.07em; }
  .bvml-acc-body{ padding:14px 15px 18px; }
  .bvml-chip{ font-size:13px; padding:7px 14px; }
  .bvml-linklist li a{ font-size:16px; padding:8px 6px 8px 22px; }
  .bvml-results-list{ max-height:380px; }
  .bvml-res-item{ padding:10px 14px; }
}

/* ── Dark mode ── */
html[data-theme="dark"] .bvml-wrap,
body.dark .bvml-wrap,
body.dark-mode .bvml-wrap{
  --bd:rgba(255,255,255,.13); --soft:rgba(255,255,255,.05);
  --white:#1e1a18; --tx:#ece5dd; --tx2:#b0a898; --blue:#8ab4f8;
  --r-bg:rgba(158,42,26,.14); --r-bd:rgba(192,57,43,.35);
  --sh:0 2px 8px rgba(0,0,0,.3);
}

/* ══ МОЛИТВА ДНЯ ══ */
.bvml-pod {
  background: linear-gradient(135deg, #c0392b 0%, #7a1a0d 100%) !important;
  border-radius: var(--radius); margin-bottom: 12px;
  padding: 14px 18px !important; box-shadow: 0 4px 14px rgba(158,42,26,.3);
  min-height: 48px;
}
.bvml-pod-inner { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.bvml-pod-label { color:rgba(255,255,255,.85) !important; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; }
.bvml-pod-link { color:#fff !important; font-size:15px; font-weight:600; text-decoration:none; flex:1; min-width:0; border-bottom:1px solid rgba(255,255,255,.3); padding-bottom:1px; transition:border-color .15s; }
.bvml-pod-link:hover { border-color:#fff; }
.bvml-pod-date { color:rgba(255,255,255,.7) !important; font-size:12px; white-space:nowrap; }

/* ══ TOPBAR ══ */
.bvml-topbar { display:flex; gap:8px; margin-bottom:14px; flex-wrap:wrap; }
.bvml-topbar-btn {
  display:inline-flex; align-items:center; gap:6px;
  background:var(--soft); border:1.5px solid var(--bd);
  border-radius:24px; padding:7px 16px; font-size:13.5px;
  color:var(--tx2); cursor:pointer; font-family:inherit;
  transition:all .18s; font-weight:500;
}
.bvml-topbar-btn:hover { background:var(--r-bg); border-color:var(--r-bd); color:var(--r); }
.bvml-topbar-btn.is-active { background:var(--r); border-color:var(--r); color:#fff; }
.bvml-bm-count {
  background:var(--r); color:#fff; font-size:11px; font-weight:700;
  border-radius:10px; padding:1px 6px; min-width:18px; text-align:center;
}
.bvml-topbar-btn.is-active .bvml-bm-count { background:rgba(255,255,255,.3); }

/* ══ ПАНЕЛІ ══ */
.bvml-panel {
  background:var(--white); border:1.5px solid var(--r-bd);
  border-radius:var(--radius); margin-bottom:14px;
  box-shadow:0 4px 18px rgba(158,42,26,.12);
  overflow:hidden; animation:bvmlFade .2s ease;
}
.bvml-panel-head {
  display:flex; justify-content:space-between; align-items:center;
  padding:12px 18px; background:var(--r-bg); border-bottom:1px solid var(--r-bd);
  font-size:14px; font-weight:700; color:var(--r);
}
.bvml-panel-close {
  background:none; border:none; cursor:pointer; color:var(--r);
  font-size:16px; padding:2px 6px; border-radius:4px;
  transition:background .15s; font-family:inherit;
}
.bvml-panel-close:hover { background:var(--r); color:#fff; }
.bvml-panel-body { padding:16px 18px; }

/* ══ ЩО ЧИТАТИ СЬОГОДНІ — вміст ══ */
.bvml-today-block { margin-bottom:14px; }
.bvml-today-block:last-child { margin-bottom:0; }
.bvml-today-ttl { font-size:12px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; color:var(--r); margin-bottom:8px; }
.bvml-today-links { list-style:none !important; padding:0 !important; margin:0 !important; }
.bvml-today-links li a {
  display:block; color:var(--blue); text-decoration:none; font-size:14.5px;
  padding:5px 5px 5px 18px; position:relative; border-radius:4px; transition:all .15s;
}
.bvml-today-links li a::before { content:'›'; position:absolute; left:5px; color:var(--r); font-size:18px; line-height:1.3; }
.bvml-today-links li a:hover { color:var(--r); background:var(--r-bg); }

/* ══ ЗАКЛАДКИ — вміст ══ */
.bvml-bm-empty { color:#aaa; font-size:14px; font-style:italic; text-align:center; padding:12px 0; }
.bvml-bm-list { list-style:none !important; padding:0 !important; margin:0 !important; }
.bvml-bm-list li {
  display:flex; align-items:center; gap:8px;
  padding:7px 0; border-bottom:1px solid #f0ede8;
}
.bvml-bm-list li:last-child { border-bottom:none; }
.bvml-bm-list li a { flex:1; color:var(--blue); text-decoration:none; font-size:14.5px; transition:color .15s; }
.bvml-bm-list li a:hover { color:var(--r); }
.bvml-bm-remove {
  background:none; border:none; cursor:pointer; color:#ccc;
  font-size:16px; padding:2px 4px; border-radius:4px; transition:color .15s;
  line-height:1;
}
.bvml-bm-remove:hover { color:var(--r); }

/* ══ КНОПКА ЗАКЛАДКИ НА ПОСИЛАННЯХ ══ */
.bvml-bm-add {
  background:none; border:none; cursor:pointer;
  font-size:13px; padding:2px 4px; opacity:0;
  transition:opacity .15s; border-radius:4px; line-height:1;
  flex-shrink:0;
}
.bvml-linklist li:hover .bvml-bm-add,
.bvml-bm-add.is-saved { opacity:1; }
.bvml-bm-add.is-saved { filter:none; }

/* ══ ОБГОРТКА ТАЙЛУ КНИГИ ══ */
.bvml-book-wrap { position:relative; }
.bvml-bm-book {
  position:absolute; top:4px; right:4px;
  font-size:12px; padding:2px 3px;
  background:rgba(255,255,255,.85); border-radius:4px;
  opacity:0; transition:opacity .15s;
}
.bvml-book-wrap:hover .bvml-bm-book,
.bvml-bm-book.is-saved { opacity:1; }

@media(max-width:640px){
  .bvml-pod { padding:12px 14px; }
  .bvml-pod-link { font-size:14px; }
  .bvml-topbar-btn { font-size:13px; padding:6px 13px; }
  .bvml-panel-body { padding:14px 15px; }
}

/* ══ Dark mode ══ */
html[data-theme="dark"] .bvml-pod,
body.dark .bvml-pod { box-shadow:0 4px 14px rgba(0,0,0,.4); }

/* ── Закладка в творах отців ── */
.bvml-works li:hover .bvml-bm-add { opacity:1; }

/* ── Закладка в результатах пошуку ── */
.bvml-res-wrap { position:relative; display:flex; align-items:stretch; }
.bvml-res-wrap .bvml-res-item { flex:1; }
.bvml-bm-res {
  opacity:0; align-self:center; padding:6px 10px;
  font-size:14px; background:none; border:none; cursor:pointer;
  color:#bbb; transition:opacity .15s, color .15s; flex-shrink:0;
}
.bvml-res-wrap:hover .bvml-bm-res,
.bvml-bm-res.is-saved { opacity:1; }
.bvml-bm-res.is-saved { color:var(--r); }


/* ══════════════════════════════════════════════════════
   DARK MODE — повний, з !important
   Спрацьовує через JS (data-bvml-theme="dark" на #bvml)
   АБО через класи теми WordPress
   ══════════════════════════════════════════════════════ */

/* Визначаємо темний селектор один раз */
#bvml[data-bvml-theme="dark"],
html[data-theme="dark"] #bvml,
html[data-color-scheme="dark"] #bvml,
html[data-bs-theme="dark"] #bvml,
html.dark #bvml,
body.dark #bvml,
body.dark-mode #bvml,
body.theme-dark #bvml {

  /* CSS змінні */
  --r:#ff6b5b !important;
  --r-light:#ff8070 !important;
  --r-bg:rgba(255,107,91,.13) !important;
  --r-bd:rgba(255,107,91,.3) !important;
  --bd:rgba(255,255,255,.11) !important;
  --tx:#ece6df !important;
  --tx2:#b0a898 !important;
  --blue:#8ab4f8 !important;
  --soft:rgba(255,255,255,.05) !important;
  --white:#1e1b18 !important;
  --sh:0 2px 8px rgba(0,0,0,.45) !important;
  color: #ece6df !important;
}

/* ─ Пошук ─ */
#bvml[data-bvml-theme="dark"] .bvml-search-box,
html.dark #bvml .bvml-search-box,
body.dark #bvml .bvml-search-box,
body.dark-mode #bvml .bvml-search-box,
html[data-theme="dark"] #bvml .bvml-search-box,
html[data-bs-theme="dark"] #bvml .bvml-search-box {
  background:#2a2520 !important;
  border-color:rgba(255,255,255,.15) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-search-input,
html.dark #bvml .bvml-search-input,
body.dark #bvml .bvml-search-input,
body.dark-mode #bvml .bvml-search-input,
html[data-theme="dark"] #bvml .bvml-search-input,
html[data-bs-theme="dark"] #bvml .bvml-search-input {
  color:#ece6df !important;
  background:transparent !important;
}

/* ─ Акордеони ─ */
#bvml[data-bvml-theme="dark"] .bvml-acc,
html.dark #bvml .bvml-acc,
body.dark #bvml .bvml-acc,
body.dark-mode #bvml .bvml-acc,
html[data-theme="dark"] #bvml .bvml-acc,
html[data-bs-theme="dark"] #bvml .bvml-acc {
  background:#231f1b !important;
  border-color:rgba(255,255,255,.1) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-acc-btn,
html.dark #bvml .bvml-acc-btn,
body.dark #bvml .bvml-acc-btn,
body.dark-mode #bvml .bvml-acc-btn,
html[data-theme="dark"] #bvml .bvml-acc-btn,
html[data-bs-theme="dark"] #bvml .bvml-acc-btn {
  background:#231f1b !important;
  color:#ece6df !important;
}
#bvml[data-bvml-theme="dark"] .bvml-acc-btn:hover,
#bvml[data-bvml-theme="dark"] .bvml-acc.is-open .bvml-acc-btn,
html.dark #bvml .bvml-acc-btn:hover,
html.dark #bvml .bvml-acc.is-open .bvml-acc-btn,
body.dark #bvml .bvml-acc-btn:hover,
body.dark-mode #bvml .bvml-acc-btn:hover,
html[data-theme="dark"] #bvml .bvml-acc-btn:hover,
html[data-bs-theme="dark"] #bvml .bvml-acc-btn:hover {
  background:rgba(255,107,91,.12) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-acc-body,
html.dark #bvml .bvml-acc-body,
body.dark #bvml .bvml-acc-body,
body.dark-mode #bvml .bvml-acc-body,
html[data-theme="dark"] #bvml .bvml-acc-body,
html[data-bs-theme="dark"] #bvml .bvml-acc-body {
  background:#231f1b !important;
  border-top-color:rgba(255,255,255,.1) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-acc-label,
#bvml[data-bvml-theme="dark"] .bvml-acc-meta,
html.dark #bvml .bvml-acc-label,
html.dark #bvml .bvml-acc-meta,
body.dark #bvml .bvml-acc-label,
body.dark #bvml .bvml-acc-meta,
body.dark-mode #bvml .bvml-acc-label,
html[data-theme="dark"] #bvml .bvml-acc-label,
html[data-bs-theme="dark"] #bvml .bvml-acc-label {
  color:#ece6df !important;
}
#bvml[data-bvml-theme="dark"] .bvml-acc-meta,
html.dark #bvml .bvml-acc-meta,
body.dark #bvml .bvml-acc-meta {
  background:rgba(255,255,255,.08) !important;
  color:#b0a898 !important;
}

/* ─ Таби ─ */
#bvml[data-bvml-theme="dark"] .bvml-tab,
html.dark #bvml .bvml-tab,
body.dark #bvml .bvml-tab,
body.dark-mode #bvml .bvml-tab,
html[data-theme="dark"] #bvml .bvml-tab,
html[data-bs-theme="dark"] #bvml .bvml-tab {
  background:#2a2520 !important;
  border-color:rgba(255,255,255,.15) !important;
  color:#b0a898 !important;
}
#bvml[data-bvml-theme="dark"] .bvml-tab.is-on,
html.dark #bvml .bvml-tab.is-on,
body.dark #bvml .bvml-tab.is-on,
body.dark-mode #bvml .bvml-tab.is-on,
html[data-theme="dark"] #bvml .bvml-tab.is-on,
html[data-bs-theme="dark"] #bvml .bvml-tab.is-on {
  background:#ff6b5b !important;
  border-color:#ff6b5b !important;
  color:#fff !important;
}

/* ─ Посилання в списках ─ */
#bvml[data-bvml-theme="dark"] .bvml-linklist li a,
#bvml[data-bvml-theme="dark"] .bvml-works li a,
#bvml[data-bvml-theme="dark"] .bvml-today-links li a,
#bvml[data-bvml-theme="dark"] .bvml-bm-list li a,
html.dark #bvml .bvml-linklist li a,
html.dark #bvml .bvml-works li a,
body.dark #bvml .bvml-linklist li a,
body.dark #bvml .bvml-works li a,
body.dark-mode #bvml .bvml-linklist li a,
html[data-theme="dark"] #bvml .bvml-linklist li a,
html[data-bs-theme="dark"] #bvml .bvml-linklist li a {
  color:#8ab4f8 !important;
}
#bvml[data-bvml-theme="dark"] .bvml-linklist li a:hover,
#bvml[data-bvml-theme="dark"] .bvml-works li a:hover,
html.dark #bvml .bvml-linklist li a:hover,
body.dark #bvml .bvml-linklist li a:hover {
  background:rgba(255,107,91,.13) !important;
  color:#ff8070 !important;
}

/* ─ Книги ─ */
#bvml[data-bvml-theme="dark"] .bvml-book-tile,
html.dark #bvml .bvml-book-tile,
body.dark #bvml .bvml-book-tile,
body.dark-mode #bvml .bvml-book-tile,
html[data-theme="dark"] #bvml .bvml-book-tile,
html[data-bs-theme="dark"] #bvml .bvml-book-tile {
  background:#2a2520 !important;
  border-color:rgba(255,255,255,.12) !important;
  color:#b0a898 !important;
}

/* ─ Результати пошуку ─ */
#bvml[data-bvml-theme="dark"] .bvml-results,
html.dark #bvml .bvml-results,
body.dark #bvml .bvml-results,
body.dark-mode #bvml .bvml-results,
html[data-theme="dark"] #bvml .bvml-results,
html[data-bs-theme="dark"] #bvml .bvml-results {
  background:#231f1b !important;
  border-color:rgba(255,255,255,.12) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-results-bar,
html.dark #bvml .bvml-results-bar,
body.dark #bvml .bvml-results-bar,
html[data-theme="dark"] #bvml .bvml-results-bar,
html[data-bs-theme="dark"] #bvml .bvml-results-bar {
  background:#2a2520 !important;
  border-bottom-color:rgba(255,255,255,.1) !important;
  color:#b0a898 !important;
}
#bvml[data-bvml-theme="dark"] .bvml-res-item,
html.dark #bvml .bvml-res-item,
body.dark #bvml .bvml-res-item,
html[data-theme="dark"] #bvml .bvml-res-item,
html[data-bs-theme="dark"] #bvml .bvml-res-item {
  color:#ece6df !important;
  background:#231f1b !important;
  border-color:rgba(255,255,255,.08) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-res-item:hover,
html.dark #bvml .bvml-res-item:hover,
body.dark #bvml .bvml-res-item:hover {
  background:rgba(255,107,91,.1) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-res-title,
html.dark #bvml .bvml-res-title,
body.dark #bvml .bvml-res-title {
  color:#8ab4f8 !important;
}
#bvml[data-bvml-theme="dark"] .bvml-res-sec,
html.dark #bvml .bvml-res-sec,
body.dark #bvml .bvml-res-sec {
  background:rgba(255,255,255,.07) !important;
  color:#b0a898 !important;
}

/* ─ Топбар ─ */
#bvml[data-bvml-theme="dark"] .bvml-topbar-btn,
html.dark #bvml .bvml-topbar-btn,
body.dark #bvml .bvml-topbar-btn,
body.dark-mode #bvml .bvml-topbar-btn,
html[data-theme="dark"] #bvml .bvml-topbar-btn,
html[data-bs-theme="dark"] #bvml .bvml-topbar-btn {
  background:#2a2520 !important;
  border-color:rgba(255,255,255,.15) !important;
  color:#b0a898 !important;
}
#bvml[data-bvml-theme="dark"] .bvml-topbar-btn.is-active,
html.dark #bvml .bvml-topbar-btn.is-active,
body.dark #bvml .bvml-topbar-btn.is-active {
  background:#ff6b5b !important;
  border-color:#ff6b5b !important;
  color:#fff !important;
}

/* ─ Панелі (Що читати / Закладки) ─ */
#bvml[data-bvml-theme="dark"] .bvml-panel,
html.dark #bvml .bvml-panel,
body.dark #bvml .bvml-panel,
body.dark-mode #bvml .bvml-panel,
html[data-theme="dark"] #bvml .bvml-panel,
html[data-bs-theme="dark"] #bvml .bvml-panel {
  background:#231f1b !important;
  border-color:rgba(255,107,91,.25) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-panel-head,
html.dark #bvml .bvml-panel-head,
body.dark #bvml .bvml-panel-head,
html[data-theme="dark"] #bvml .bvml-panel-head,
html[data-bs-theme="dark"] #bvml .bvml-panel-head {
  background:rgba(255,107,91,.1) !important;
  border-bottom-color:rgba(255,107,91,.2) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-panel-body,
html.dark #bvml .bvml-panel-body,
body.dark #bvml .bvml-panel-body {
  color:#ece6df !important;
}
#bvml[data-bvml-theme="dark"] .bvml-today-ttl,
html.dark #bvml .bvml-today-ttl,
body.dark #bvml .bvml-today-ttl {
  color:#ff8070 !important;
}

/* ─ Закладки список ─ */
#bvml[data-bvml-theme="dark"] .bvml-bm-list li,
html.dark #bvml .bvml-bm-list li,
body.dark #bvml .bvml-bm-list li {
  border-bottom-color:rgba(255,255,255,.08) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-bm-empty,
html.dark #bvml .bvml-bm-empty,
body.dark #bvml .bvml-bm-empty {
  color:#b0a898 !important;
}

/* ─ Автори ─ */
#bvml[data-bvml-theme="dark"] .bvml-author,
html.dark #bvml .bvml-author,
body.dark #bvml .bvml-author {
  border-bottom-color:rgba(255,255,255,.08) !important;
}
#bvml[data-bvml-theme="dark"] .bvml-author-link,
#bvml[data-bvml-theme="dark"] .bvml-author-plain,
html.dark #bvml .bvml-author-link,
html.dark #bvml .bvml-author-plain,
body.dark #bvml .bvml-author-link,
body.dark #bvml .bvml-author-plain {
  color:#d4ccc4 !important;
}

/* ── Сітка авторів 2 колонки ── */
.bvml-authors-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 24px;
  align-items: start;
}
.bvml-author {
  padding: 11px 0;
  border-bottom: 1px solid #f0ede8;
  break-inside: avoid;
}
@media(max-width: 640px) {
  .bvml-authors-grid { grid-template-columns: 1fr; gap: 0; }
}
/* Dark mode */
#bvml[data-bvml-theme="dark"] .bvml-author,
html.dark #bvml .bvml-author,
body.dark #bvml .bvml-author,
html[data-theme="dark"] #bvml .bvml-author,
html[data-bs-theme="dark"] #bvml .bvml-author {
  border-bottom-color: rgba(255,255,255,.08) !important;
}

/* ── 2 колонки для списків посилань (Молитвослов) ── */
.bvml-linklist {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 20px;
}
.bvml-linklist li { break-inside: avoid; }

/* ── 2 колонки для панелі "Що читати сьогодні" ── */
.bvml-today-links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 20px;
}
.bvml-today-links li { break-inside: avoid; }

/* ── Мобільний — 1 колонка ── */
@media(max-width: 640px) {
  .bvml-linklist { grid-template-columns: 1fr; }
  .bvml-today-links { grid-template-columns: 1fr; }
}

/* ── Посилання у темній темі — яскравіші ── */
#bvml[data-bvml-theme="dark"] .bvml-linklist li a,
#bvml[data-bvml-theme="dark"] .bvml-works li a,
#bvml[data-bvml-theme="dark"] .bvml-today-links li a,
#bvml[data-bvml-theme="dark"] .bvml-bm-list li a,
html.dark #bvml .bvml-linklist li a,
html.dark #bvml .bvml-works li a,
body.dark #bvml .bvml-linklist li a,
body.dark #bvml .bvml-works li a,
body.dark-mode #bvml .bvml-linklist li a,
html[data-theme="dark"] #bvml .bvml-linklist li a,
html[data-bs-theme="dark"] #bvml .bvml-linklist li a {
  color: #7eb8ff !important;
}
#bvml[data-bvml-theme="dark"] .bvml-linklist li a:hover,
#bvml[data-bvml-theme="dark"] .bvml-works li a:hover,
html.dark #bvml .bvml-linklist li a:hover,
body.dark #bvml .bvml-linklist li a:hover {
  color: #ff8c7a !important;
  background: rgba(255,107,91,.15) !important;
}
/* Стрілочка перед посиланням у темній темі */
#bvml[data-bvml-theme="dark"] .bvml-linklist li a::before,
#bvml[data-bvml-theme="dark"] .bvml-works li a::before,
html.dark #bvml .bvml-linklist li a::before,
body.dark #bvml .bvml-linklist li a::before {
    content: "›";
    position: absolute;
    left: 6px;
    color: var(--r-light);
    font-size: 18px;
    line-height: 1.3;
}


/* === Vertical Tabs Layout === */
.bv-library .tabs,
.bv-library .tabs-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px;
}

.bv-library .tabs a,
.bv-library .tabs-wrapper a {
    display: block !important;
    width: 100% !important;
}


/* === Force tabs to be ONE per row (vertical list) === */
.bvml-tabs-wrap{
  border-bottom:none !important;
  margin-bottom:16px !important;
}
.bvml-tabs{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  overflow:visible !important;
  padding-bottom:0 !important;
  flex-wrap:nowrap !important;
}
.bvml-tab{
  display:block !important;
  width:100% !important;
  white-space:normal !important;
  text-align:left !important;
}

/* Hide horizontal scroll arrows + fade gradients (not needed in vertical mode) */
.bvml-tabs-arrow{ display:none !important; }
.bvml-tabs-wrap::before,
.bvml-tabs-wrap::after{ display:none !important; }


/* === Bigger Font Update === */
#bv-lib {
    font-size: 18px;
}

#bv-lib .bv-work a {
    font-size: 18px;
}

#bv-lib .bvml-tab {
    font-size: 17px;
}

#bv-lib h2,
#bv-lib h3 {
    font-size: 22px;
}


/* === Tabs: 2 per row (wrap) === */
/* Верхні таби (🌅🕊️📖...) */
#bv-lib .bvml-tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  overflow:visible !important;
  padding-bottom:0 !important;
}

/* Градієнти для горизонтального скролу більше не потрібні */
#bv-lib .bvml-tabs-wrap::before,
#bv-lib .bvml-tabs-wrap::after{
  display:none !important;
}

#bv-lib .bvml-tab{
  flex:0 0 calc(50% - 10px) !important;
  width:calc(50% - 10px) !important;
  text-align:left !important;
  white-space:normal !important;
}

/* Нижні таби (I–IV) */
#bv-lib .bv-tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  overflow:visible !important;
  scroll-snap-type:none !important;
}

#bv-lib .bv-tab{
  flex:0 0 calc(50% - 10px) !important;
  width:calc(50% - 10px) !important;
  text-align:center !important;
  white-space:normal !important;
}

/* Мобільні: по 1 в ряд */
@media (max-width:600px){
  #bv-lib .bvml-tab,
  #bv-lib .bv-tab{
    flex:0 0 100% !important;
    width:100% !important;
  }
}


/* === FIX: ensure 2-column tabs are actually in ROWS (override old vertical rules) === */
#bv-lib .bvml-tabs{
  flex-direction: row !important;
}
#bv-lib .bv-tabs{
  flex-direction: row !important;
}


/* === FINAL OVERRIDE: force 2 columns for ALL tab blocks (not only inside #bv-lib) === */
.bvml-tabs{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  overflow:visible !important;
  padding-bottom:0 !important;
}

/* Hide horizontal-scroll fades/arrows */
.bvml-tabs-wrap::before,
.bvml-tabs-wrap::after,
.bvml-tabs-arrow{
  display:none !important;
}

.bvml-tab{
  flex:0 0 calc(50% - 10px) !important;
  width:calc(50% - 10px) !important;
  white-space:normal !important;
}

/* Нижні таби (I–IV), якщо є */
.bv-tabs{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  overflow:visible !important;
  scroll-snap-type:none !important;
}

.bv-tab{
  flex:0 0 calc(50% - 10px) !important;
  width:calc(50% - 10px) !important;
  white-space:normal !important;
}

/* Mobile: 1 per row */
@media (max-width:600px){
  .bvml-tab,
  .bv-tab{
    flex:0 0 100% !important;
    width:100% !important;
  }
}

/* ══ Лічильник закладок — надійне відображення ══ */
.bvml-bm-count[hidden] { display: none !important; }
.bvml-bm-count:not([hidden]) { display: inline-block !important; }
