/* BCC GALAXY — Sidebar (Diplodoc TOC) */

/* vars */
:root{
  --toc-font: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --toc-fg:#111827;
  --toc-fg-muted:#6B7280;
  --toc-link:#355075;
  --toc-link-hover:#465d7e;
  --toc-active-bg:#EAF1FF;   /* мягкий active */
  --toc-active-dot:#4F46E5;
  --toc-hover-bg:#F2F5FF;    /* светлый hover */
  --toc-branch:#E5E7EB;
}
@media (prefers-color-scheme: dark){
  :root{
    --toc-fg:#E5E7EB;
    --toc-fg-muted:#9CA3AF;
    --toc-link:#E5E7EB;
    --toc-link-hover:#E5E7EB;
    --toc-active-bg:#3c4b6b;  /* мягкий active в тёмной теме */
    --toc-active-dot:#60A5FA;
    --toc-hover-bg:#47526b;   /* светлее, без “чёрного” */
    --toc-branch:#374151;
  }
}

/* base list */
.dc-toc__list{
  font-family:var(--toc-font);
  font-size:14px;
  line-height:1.35;
  margin:0; padding-left:0;
  list-style:none; color:var(--toc-fg);
}

/* вложенная “рейка” ближе к тексту */
.dc-toc__list .dc-toc__list{
  margin:2px 0 2px 6px;      /* было 12 */
  padding-left:6px;          /* было 10–12 */
  border-left:1px solid var(--toc-branch);
}

/* элементы — меньше расстояние */
.dc-toc__list-item{margin:1px 0; position:relative;}

.dc-toc__list-item_main > a,
.dc-toc__list-item_main > summary{
  display:flex; align-items:center; gap:4px; /* было 6 */
  padding:4px 8px;                           /* было 8px 12px */
  border-radius:6px; text-decoration:none;
  color:var(--toc-link);
  transition:background .15s ease,color .15s ease;
  cursor:pointer;
}

/* hover светлый */
.dc-toc__list-item_main > a:hover,
.dc-toc__list-item_main > summary:hover{
  background:var(--toc-hover-bg);
  color:var(--toc-link-hover);
}

/* активный пункт */
.dc-toc__list-item.is-active > a,
.dc-toc__list-item._active > a,
.dc-toc__list a[aria-current="page"]{
  background:var(--toc-active-bg);
  color:var(--toc-link);
  font-weight:600;
}

/* точка слева у активного */
.dc-toc__list-item.is-active > a::before,
.dc-toc__list-item._active > a::before,
.dc-toc__list a[aria-current="page"]::before{
  content:""; position:absolute; left:-4px; top:50%;
  width:4px; height:4px; border-radius:50%;
  background:var(--toc-active-dot); transform:translateY(-50%);
}

/* стрелочка у групп (<details><summary>) */
.dc-toc__list-item_main > summary::before{
  content:""; display:inline-block; width:8px; height:8px; margin-right:2px;
  background:currentColor;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M9 18l6-6-6-6"/></svg>') no-repeat center/contain;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M9 18l6-6-6-6"/></svg>') no-repeat center/contain;
  transition:transform .15s ease; opacity:.85;
}
.dc-toc__list-item_main[open] > summary::before{ transform:rotate(90deg); }

/* типографика и компакт для глубоких уровней */
.dc-toc__list a{ color:var(--toc-link); text-decoration:none; }
.dc-toc__list small,.dc-toc__list .muted{ color:var(--toc-fg-muted); font-size:12px; }
.dc-toc__list .dc-toc__list .dc-toc__list-item_main > a,
.dc-toc__list .dc-toc__list .dc-toc__list-item_main > summary{
  padding:3px 6px;           /* ещё компактней для вложенных */
  border-radius:5px;
}

/* полос прокрутки (необязательно) */
.dc-toc__list::-webkit-scrollbar{ width:8px; }
.dc-toc__list::-webkit-scrollbar-thumb{ background:var(--toc-branch); border-radius:6px; }
.dc-toc__list::-webkit-scrollbar-track{ background:transparent; }
