/* ─────────────────────────────────────────────────────────────
   Путь Мудрости — фирменная тема поверх Quartz (v2, бренд льва)
   Тёмная = чёрный + неоновый жёлтый (как лендинг);
   светлая = бумага + чёрный + тёмно-жёлтые акценты.
   Подключается инжекцией в <head> на этапе деплоя; контент не трогаем.
   ───────────────────────────────────────────────────────────── */
@import url("https://fonts.googleapis.com/css2?family=Unbounded:wght@300;400;500;700&family=Manrope:wght@300;400;500;600;700&family=Cormorant:ital,wght@1,500&display=swap");

/* ── палитра: светлая (бумага) ── */
:root {
  --light: #f2edda;
  --lightgray: #e2dbbe;
  --gray: #7d7860;
  --darkgray: #161511;
  --dark: #000;
  --secondary: #6f6408;
  --tertiary: #4a4205;
  --highlight: rgba(251, 232, 48, 0.16);
  --textHighlight: rgba(251, 232, 48, 0.55);
  --titleFont: "Unbounded", "PT Serif", sans-serif;
  --headerFont: "Unbounded", "PT Serif", sans-serif;
  --bodyFont: "Manrope", "PT Serif", sans-serif;
  --hs-yellow: #fbe830;
}

/* ── палитра: тёмная (чёрный + неон) ── */
:root[saved-theme="dark"] {
  --light: #0a0a09;
  --lightgray: #1b1b17;
  --gray: #8f8b77;
  --darkgray: #f2edda;
  --dark: #ffffff;
  --secondary: #fbe830;
  --tertiary: #fff9a8;
  --highlight: rgba(251, 232, 48, 0.08);
  --textHighlight: rgba(251, 232, 48, 0.3);
}

/* ── типографика ── */
body {
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, .page-title, .article-title {
  font-family: var(--headerFont);
  font-weight: 500;
  letter-spacing: -0.005em;
  line-height: 1.18;
}
.article-title {
  font-size: 2.1rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.08;
  margin-top: 1.2rem;
}
article h2 { font-size: 1.45rem }
article h3 { font-size: 1.15rem }
article p { font-size: 1rem; line-height: 1.72 }

/* ── шапка-титул: лев ── */
.page-title {
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.page-title a::before {
  content: "";
  display: inline-block;
  width: 1.7em;
  height: 1.7em;
  border-radius: 50%;
  background: var(--hs-yellow) url("/theme/lion.svg") center / 76% no-repeat;
  vertical-align: -0.5em;
  margin-right: 0.55em;
}

/* ── ссылки: жёлтая нить вывода ── */
article a.internal {
  background-color: transparent;
  border-bottom: 1px solid var(--textHighlight);
  padding: 0 0.05em;
  border-radius: 0;
  font-weight: 600;
  transition: color 0.2s, border-color 0.2s, background-color 0.2s;
}
article a.internal:hover {
  color: var(--tertiary);
  border-bottom-color: var(--secondary);
  background-color: var(--highlight);
}

/* ── боковины и навигация ── */
.sidebar { scrollbar-width: thin }
.explorer-content .nav-file-title,
.explorer-content .folder-title {
  font-family: var(--bodyFont);
  font-size: 0.86rem;
  font-weight: 500;
}
.explorer button.title-button h2,
.toc-header h3, .toc-header h2 {
  font-family: var(--headerFont);
  font-size: 0.78rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-weight: 500;
}
.backlinks h3 {
  font-size: 0.78rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

/* ── поиск и кнопки — пилюли как на лендинге ── */
.search .search-button {
  background: transparent;
  border: 1px solid var(--lightgray);
  border-radius: 100px;
  transition: border-color 0.25s, background 0.25s;
}
.search .search-button:hover { border-color: var(--secondary) }
.search .search-button p { font-family: var(--bodyFont); font-weight: 500 }
.search-container .search-space { border-radius: 8px }
.search-container .search-space > input { font-family: var(--bodyFont) }
.darkmode, .readermode { border-radius: 100px }

/* ── цитаты и коллауты ── */
blockquote:not(.callout) {
  border-left: 2px solid var(--hs-yellow);
  font-family: "Cormorant", serif;
  font-style: italic;
  font-size: 1.16em;
}
/* callouts: brand yellow, normal text (they are blockquotes in Quartz) */
.callout {
  --color: var(--secondary);
  --border: var(--textHighlight);
  --bg: var(--highlight);
  border-radius: 10px;
  font-family: var(--bodyFont);
  font-style: normal;
  font-size: 1rem;
}
.callout .callout-title {
  font-family: var(--headerFont);
  font-weight: 500;
  letter-spacing: 0.04em;
}
hr {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--textHighlight), transparent);
  overflow: visible;
  text-align: center;
}
hr::after {
  content: "✦";
  position: relative;
  top: -0.72em;
  color: var(--secondary);
  background: var(--light);
  padding: 0 0.7em;
  font-size: 0.8em;
}

/* ── таблицы ── */
table { border: 1px solid var(--lightgray) }
th {
  font-family: var(--bodyFont);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.8em;
  background: var(--highlight);
}

/* ── хлебные крошки ── */
.breadcrumb-container { font-weight: 500 }
.breadcrumb-element:first-child a { font-size: 0 }
.breadcrumb-element:first-child a::after { content: "Главная"; font-size: 0.85rem }

/* ── подвал: убрать генераторный кредит, приглушить ── */
footer > p { display: none }
footer { opacity: 0.55; transition: opacity 0.3s }
footer:hover { opacity: 0.9 }

/* ── граф-панель: убрана из сайдбара библиотеки ── */
.graph { display: none }

/* ── фокус и скроллбары ── */
a:focus-visible, button:focus-visible, input:focus-visible {
  outline: 2px solid var(--secondary);
  outline-offset: 2px;
  border-radius: 2px;
}
* { scrollbar-width: thin; scrollbar-color: var(--lightgray) transparent }

/* ── меньше пустоты сверху страницы ── */
.page .sidebar.left, .page .sidebar.right { padding-top: 2.4rem }
.page-header { margin-top: 2.4rem }

/* ── атмосфера страницы ── */
:root[saved-theme="dark"] body {
  background-image:
    radial-gradient(ellipse 55% 38% at 18% 0%, rgba(251, 232, 48, 0.045), transparent),
    radial-gradient(ellipse 45% 30% at 88% 6%, rgba(251, 232, 48, 0.03), transparent);
  background-attachment: fixed;
}
:root:not([saved-theme="dark"]) body {
  background-image:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(251, 232, 48, 0.12), transparent);
  background-attachment: fixed;
}

/* ── выделение текста ── */
::selection { background: var(--hs-yellow); color: #0a0a09 }

/* ── библиотека: единая шапка сайта вместо левого сайдбара Quartz.
   Шапка (бренд, Устав, «Библиотека» мега-меню с 8 направлениями,
   Направления, Контакты, CTA; гамбургер+выезжающая панель на мобиле)
   вставляется скриптом theme/nav.js — те же .hdr/.drop/.mnav классы,
   что и на лендинге. Здесь только раскладка страницы под неё:
   родной .left.sidebar (заголовок/поиск/тема/Проводник) скрыт целиком —
   поиск и переключатели темы/режима чтения physически переносятся
   скриптом в новую шапку, «Проводник» больше не нужен. ── */
#quartz-body { display: block !important }
.left.sidebar { display: none !important }
.center {
  min-width: 0 !important; /* Quartz base sets min-width:100%, which beats max-width per spec */
  width: auto;
  max-width: 48rem;
  margin: 0 auto;
  padding: 6.5rem clamp(1.2rem, 4vw, 3rem) 4rem;
  box-sizing: border-box;
}
.right.sidebar {
  min-width: 0 !important;
  width: auto;
  max-width: 48rem;
  margin: 0 auto 3rem;
  padding: 0 clamp(1.2rem, 4vw, 3rem);
  height: auto;
  position: static;
  box-sizing: border-box;
}
@media (min-width: 900px) {
  .center { margin: 0 auto 0 356px; max-width: 48rem }
  .right.sidebar {
    position: fixed;
    top: 6.5rem;
    left: 2.5rem;
    width: 300px;
    max-width: 300px;
    max-height: calc(100vh - 8rem);
    overflow-y: auto;
    margin: 0;
    padding: 0;
  }
}

/* заголовок направления в мегаменю — ссылка на обзор */
#lib-hdr .mm-top b a{color:inherit;text-decoration:none;transition:color .2s}
#lib-hdr .mm-top b a:hover{color:var(--hs-yellow)}

/* ── 1b: навигация корпуса в левой колонке (вставляет nav.js) ── */
#lib-corpus {
  /* именно block: внутри один <details>, а во flex-колонке он сжимался
     до доли высоты и содержимое вылезало на соседний блок */
  display: block;
  margin-bottom: 2rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid var(--lightgray);
  font-family: var(--bodyFont);
}
#lib-corpus summary {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-bottom: 0.9rem;
  cursor: pointer;
  list-style: none;
}
#lib-corpus summary::-webkit-details-marker { display: none }
#lib-corpus .lc-kicker { display: none }          /* нужен только на мобильном */
#lib-corpus .lc-name {
  font-family: var(--headerFont);
  font-weight: 500;
  font-size: 0.94rem;
  line-height: 1.25;
  color: var(--darkgray);
}
#lib-corpus .lc-count {
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gray);
}
#lib-corpus .lc-chips { display: none }            /* тоже мобильный слой */

/* мобильный: свёрнутый блок «В этом корпусе» с тремя входами (макет 2b) */
@media (max-width: 899px) {
  /* Quartz кладёт боковину в ряд и даёт детям flex:1 1 0 — они сжимаются
     до равных долей высоты, и содержимое наезжает на соседний блок */
  .right.sidebar { display: flex; flex-direction: column; gap: 1.6rem }
  /* Quartz режет детей боковины: .sidebar.right>* { flex:1; max-height:24rem } —
     оглавление корпуса упиралось в 396px и вылезало на «Обратные ссылки».
     Специфичность здесь выше (два id), иначе правило Quartz побеждает. */
  #quartz-body .sidebar.right > * { flex: 0 0 auto; min-width: 0; max-height: none }
  #quartz-body .sidebar.right > #lib-corpus { width: 100%; max-height: none }
  #lib-corpus {
    border: 1px solid var(--lightgray);
    border-radius: 10px;
    padding: 1rem 1.1rem;
    margin: 2.5rem 0 1rem;
  }
  #lib-corpus summary {
    flex-direction: row;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0;
  }
  #lib-corpus summary::after {
    content: "+";
    margin-left: auto;
    color: var(--secondary);
    font-size: 1.2rem;
    line-height: 1;
  }
  #lib-corpus details[open] > summary::after { content: "–" }
  #lib-corpus .lc-kicker {
    display: block;
    width: 100%;
    font-family: var(--headerFont);
    font-size: 0.58rem;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--secondary);
  }
  #lib-corpus .lc-count { display: none }
  #lib-corpus .lc-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin: 0.9rem 0 0.2rem;
  }
  #lib-corpus .lc-chips span {
    border: 1px solid var(--lightgray);
    border-radius: 100px;
    padding: 0.3em 0.8em;
    font-size: 0.68rem;
    color: var(--gray);
  }
}
#lib-corpus .lc-h {
  font-family: var(--headerFont);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--secondary);
  margin: 1rem 0 0.35rem;
}
#lib-corpus a.lc-all, #lib-corpus a.lc-i {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.6rem;
  padding: 0.32rem 0.5rem 0.32rem 0.6rem;
  margin-left: -0.6rem;
  font-size: 0.84rem;
  line-height: 1.35;
  color: var(--gray);
  text-decoration: none;
  border-left: 2px solid transparent;
  transition: color 0.2s, border-color 0.2s, background 0.2s;
}
#lib-corpus a.lc-all { color: var(--darkgray) }
#lib-corpus a.lc-all:hover, #lib-corpus a.lc-i:hover {
  color: var(--secondary);
  border-left-color: var(--secondary);
  background: var(--highlight);
}
#lib-corpus a.on {
  color: var(--secondary);
  font-weight: 600;
  border-left-color: var(--secondary);
  background: var(--highlight);
}
#lib-corpus a i { font-style: normal; font-size: 0.7rem; color: var(--gray) }

/* шапка библиотеки (внедрённая nav.js) — переиспользует .hdr/.drop/.mnav
   с лендинга; здесь только то, чего нет в базовой разметке лендинга */
#lib-hdr .lib-tools { display: flex; align-items: center; gap: 0.9rem }
#lib-hdr .search { min-width: 0 }
@media (max-width: 1080px) {
  #lib-hdr .lib-tools { display: none }
}

/* header */
#lib-hdr{
  position:fixed;inset:0 0 auto;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:1rem clamp(1.2rem,4vw,3rem);
  transition:background .4s,border-color .4s,padding .4s;
  border-bottom:1px solid transparent;
}
#lib-hdr.solid{background:rgba(10,10,9,.85);backdrop-filter:blur(14px);border-color:rgba(242,237,218,.14);padding:.7rem clamp(1.2rem,4vw,3rem)}
#lib-hdr .brand{display:flex;align-items:center;gap:.7rem}
#lib-hdr .brand .chip{width:2.4rem;height:2.4rem;border-radius:50%;background:var(--hs-yellow);display:grid;place-items:center;overflow:hidden;flex:none}
/* height:auto (не %) — избегаем случаев, когда % height у грид-айтема не
   резолвится корректно и растягивает картинку не по пропорции (лев "плывёт") */
/* сбрасываем margin:1rem 0 из общего img{} Quartz — внутри center-grid чипа
   он не нужен и сдвигал льва не по центру ("плывёт") */
#lib-hdr .brand .chip img{width:62%;height:auto;margin:0}
#lib-hdr .brand b{font-family:var(--headerFont);font-weight:500;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase}
#lib-hdr nav{display:flex;gap:clamp(.9rem,2.6vw,2rem);align-items:center}
#lib-hdr nav a{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#8f8b77;transition:color .25s}
#lib-hdr nav a:hover{color:var(--hs-yellow)}
#lib-hdr nav a.cta{
  color:#0a0a09;background:var(--hs-yellow);padding:.7em 1.4em;border-radius:100px;
  font-weight:600;transition:transform .25s,box-shadow .25s;
}
#lib-hdr nav a.cta:hover{transform:scale(1.05);box-shadow:0 0 34px rgba(251,232,48,.35);color:#0a0a09}
#lib-hdr .side{display:flex;align-items:center;gap:clamp(.9rem,2.6vw,2rem)}

/* dropdown: multi-level "Библиотека" mega-menu (desktop) */
/* static: панель мега-меню шире кнопки, позиционируется от шапки */
#lib-hdr .drop{position:static}
#lib-hdr .drop>button{
  font:inherit;background:none;border:none;cursor:pointer;padding:0;
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#8f8b77;
  display:flex;align-items:center;gap:.4em;transition:color .25s;
}
#lib-hdr .drop>button:hover,#lib-hdr .drop.open>button{color:var(--hs-yellow)}
#lib-hdr .drop>button svg{width:.6em;height:.6em;transition:transform .25s}
#lib-hdr .drop.open>button svg{transform:rotate(180deg)}
/* мега-меню: слева восемь направлений с числом страниц, справа — корпус
   выбранного и связанные направления (разметку строит /theme/menu.js) */
#lib-hdr .drop-panel{
  position:absolute;top:calc(100% + .6rem);left:50%;transform:translate(-50%,8px);
  width:min(72rem,94vw);border-radius:14px;overflow:hidden;
  background:rgba(13,13,12,.98);backdrop-filter:blur(16px);border:1px solid rgba(242,237,218,.14);
  box-shadow:0 24px 60px rgba(0,0,0,.5);
  display:grid;grid-template-columns:16rem 1fr;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .25s,transform .25s,visibility .25s;
  z-index:10;text-align:left;
}
#lib-hdr .drop.open .drop-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
#lib-hdr .mm-dirs{display:flex;flex-direction:column;padding:1.3rem 0;border-right:1px solid rgba(242,237,218,.14);background:rgba(255,255,255,.015)}
#lib-hdr .mm-h{
  display:block;font-family:var(--headerFont);font-weight:600;font-size:.6rem;letter-spacing:.24em;
  text-transform:uppercase;color:#8f8b77;padding:0 1.3rem;margin-bottom:.7rem;
}
#lib-hdr .mm-h2{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid rgba(242,237,218,.14)}
#lib-hdr .mm-dir{
  display:flex;align-items:center;justify-content:space-between;gap:.8rem;
  padding:.5rem 1.3rem;color:#f2edda;font-size:.88rem;letter-spacing:0;text-transform:none;
  border-left:2px solid transparent;transition:color .2s,background .2s,border-color .2s;
}
#lib-hdr .mm-dir i{font-style:normal;font-size:.7rem;color:#8f8b77;font-family:var(--bodyFont)}
#lib-hdr .mm-dir.on{color:var(--hs-yellow);border-left-color:var(--hs-yellow);background:rgba(251,232,48,.06)}
#lib-hdr .mm-dir.on i{color:var(--hs-yellow)}
#lib-hdr .mm-lib{padding:.4rem 1.3rem;font-size:.78rem;color:#8f8b77;letter-spacing:0;text-transform:none;transition:color .2s}
#lib-hdr .mm-lib:hover{color:var(--hs-yellow)}
#lib-hdr .mm-panes{position:relative;min-height:19rem}
#lib-hdr .mm-pane{display:none;grid-template-columns:1fr 14rem;height:100%}
#lib-hdr .mm-pane.on{display:grid}
#lib-hdr .mm-body{padding:1.4rem 1.6rem}
#lib-hdr .mm-top{display:flex;align-items:baseline;gap:.9rem;flex-wrap:wrap;margin-bottom:1.1rem}
#lib-hdr .mm-top b{font-family:var(--headerFont);font-weight:500;font-size:1.02rem;color:#f2edda;text-transform:uppercase}
#lib-hdr .mm-top em{font-style:normal;font-size:.78rem;color:#8f8b77}
#lib-hdr .mm-all{margin-left:auto;font-size:.72rem;color:var(--hs-yellow);letter-spacing:.06em;white-space:nowrap;text-transform:none}
#lib-hdr .mm-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:1.3rem}
#lib-hdr .mm-col{display:flex;flex-direction:column;gap:.1rem}
#lib-hdr .mm-ch{
  font-family:var(--headerFont);font-weight:600;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--hs-yellow);padding-bottom:.5rem;margin-bottom:.3rem;border-bottom:1px solid rgba(242,237,218,.14);
}
#lib-hdr .mm-col a{
  display:flex;justify-content:space-between;gap:.7rem;font-size:.8rem;color:#f2edda;
  padding:.3rem .45rem;border-radius:6px;letter-spacing:0;text-transform:none;
  transition:background .2s,color .2s;
}
#lib-hdr .mm-col a i{font-style:normal;font-size:.68rem;color:#8f8b77}
#lib-hdr .mm-col a:hover{background:rgba(251,232,48,.08);color:var(--hs-yellow)}
#lib-hdr .mm-rel{padding:1.4rem;border-left:1px solid rgba(242,237,218,.14);background:rgba(255,255,255,.015);display:flex;flex-direction:column}
#lib-hdr .mm-rel .mm-h{padding:0}
#lib-hdr .mm-rel a{display:block;padding:.38rem 0;letter-spacing:0;text-transform:none}
#lib-hdr .mm-rel b{display:block;font-weight:600;font-size:.8rem;color:#f2edda;transition:color .2s}
#lib-hdr .mm-rel em{font-style:normal;font-size:.7rem;color:#8f8b77}
#lib-hdr .mm-rel a:hover b{color:var(--hs-yellow)}
@media(max-width:1150px){
  #lib-hdr .drop-panel{width:min(56rem,95vw);grid-template-columns:13.5rem 1fr}
  #lib-hdr .mm-pane{grid-template-columns:1fr}
  #lib-hdr .mm-rel{display:none}
}

/* hamburger — right side, mobile only */
#lib-hdr .hbtn{
  display:none;width:2.6rem;height:2.6rem;border-radius:50%;border:1px solid rgba(242,237,218,.14);
  background:transparent;cursor:pointer;position:relative;flex:none;
}
#lib-hdr .hbtn span{
  position:absolute;left:50%;top:50%;width:1.15rem;height:1.5px;background:#f2edda;
  transform:translate(-50%,-50%) translateY(-5px);transition:transform .3s,opacity .3s;
}
#lib-hdr .hbtn span:nth-child(2){transform:translate(-50%,-50%)}
#lib-hdr .hbtn span:nth-child(3){transform:translate(-50%,-50%) translateY(5px)}
#lib-hdr .hbtn.open span:nth-child(1){transform:translate(-50%,-50%) rotate(45deg)}
#lib-hdr .hbtn.open span:nth-child(2){opacity:0}
#lib-hdr .hbtn.open span:nth-child(3){transform:translate(-50%,-50%) rotate(-45deg)}

/* mobile slide-in menu */
#lib-mnav{
  position:fixed;inset:0;z-index:90;visibility:hidden;
}
#lib-mnav.open{visibility:visible}
#lib-mnav .bd{
  position:absolute;inset:0;background:rgba(6,6,5,.6);backdrop-filter:blur(3px);
  opacity:0;transition:opacity .35s;
}
#lib-mnav.open .bd{opacity:1}
#lib-mnav .pnl{
  position:absolute;top:0;right:0;height:100%;width:min(86vw,380px);
  background:#0d0d0c;border-left:1px solid rgba(242,237,218,.14);
  padding:5.5rem 1.6rem 2.4rem;overflow-y:auto;
  transform:translateX(100%);transition:transform .4s cubic-bezier(.6,0,.2,1);
  display:flex;flex-direction:column;gap:.3rem;
}
#lib-mnav.open .pnl{transform:translateX(0)}
#lib-mnav a{
  font-family:var(--headerFont);font-weight:500;font-size:1.05rem;text-transform:uppercase;
  letter-spacing:.02em;color:#f2edda;padding:.9rem .2rem;border-bottom:1px solid rgba(242,237,218,.14);
}
#lib-mnav>.pnl>a:first-child{border-top:1px solid rgba(242,237,218,.14)}
#lib-mnav details{border-bottom:1px solid rgba(242,237,218,.14)}
#lib-mnav summary{
  font-family:var(--headerFont);font-weight:500;font-size:1.05rem;text-transform:uppercase;
  letter-spacing:.02em;color:#f2edda;padding:.9rem .2rem;list-style:none;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;
}
#lib-mnav summary::-webkit-details-marker{display:none}
#lib-mnav summary::after{content:"+";color:var(--hs-yellow);font-size:1.3rem;transition:transform .25s}
#lib-mnav details[open] summary::after{transform:rotate(45deg)}
#lib-mnav details a{
  display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;
  font-family:var(--bodyFont);font-weight:400;font-size:.9rem;text-transform:none;letter-spacing:0;
  color:#8f8b77;padding:.6rem .2rem .6rem 1rem;border-bottom:none;
}
/* второй уровень: направление с корпусом раскрывается вложенным аккордеоном */
#lib-mnav details details{border-bottom:none}
#lib-mnav details details>summary{
  font-family:var(--bodyFont);font-weight:600;font-size:.92rem;text-transform:none;letter-spacing:0;
  color:#f2edda;padding:.6rem .2rem .6rem 1rem;
}
#lib-mnav details details>summary::after{font-size:1rem}
#lib-mnav details a i,#lib-mnav details summary i{
  font-style:normal;font-family:var(--bodyFont);font-size:.72rem;color:#8f8b77;
  margin-left:auto;padding-left:.8rem;
}
#lib-mnav details summary i{margin-right:.8rem}
#lib-mnav details details a{padding-left:1.9rem}
#lib-mnav .mm-m-h{
  display:block;font-family:var(--headerFont);font-weight:600;font-size:.58rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--hs-yellow);padding:.8rem .2rem .25rem 1.9rem;
}
#lib-mnav a.mm-m-all{color:var(--hs-yellow);padding-left:1.9rem}
#lib-mnav a.btn{
  margin-top:1.4rem;text-align:center;border-bottom:none;
  font-size:.8rem;color:#0a0a09;padding:1em 1.6rem;
}
#lib-mnav a.btn:hover{color:#0a0a09}
@media(min-width:1081px){#lib-mnav,#lib-hdr .hbtn{display:none!important}}
/* до 1080px верхний ряд не помещается (6 пунктов + поиск) — уходит в гамбургер */
@media(max-width:1080px){#lib-hdr nav{display:none}#lib-hdr .hbtn{display:block}}

