.article-reading-layout { min-width: 0; }
.article-toc { margin: 24px 0; padding: 16px 20px; border: 1px solid #dce3ef; border-radius: 12px; background: #f8faff; }
.article-toc summary { cursor: pointer; min-height: 44px; display: list-item; align-content: center; font-size: 18px; font-weight: 700; color: #101828; }
.article-toc nav { max-height: 55vh; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.article .article-toc ul { list-style: none; padding: 0; margin: 8px 0 0; }
.article .article-toc li { margin: 0; border-bottom: 1px solid #e4e7ec; font-size: 14px; line-height: 1.5; }
.article .article-toc li:last-child { border-bottom: 0; }
.article-toc a { display: flex; align-items: center; min-height: 44px; padding: 10px 8px; color: #344054; overflow-wrap: anywhere; }
.article-toc .toc-subheading a { padding-left: 22px; font-size: 13px; }
.article-toc a:hover, .article-toc a[aria-current] { color: #174bd6; background: #edf2ff; }
.article-toc a[aria-current] { box-shadow: inset 3px 0 #245cf4; }
.article-toc a:focus-visible, .article-toc summary:focus-visible { outline: 2px solid #245cf4; outline-offset: 2px; }
.toc-heading { scroll-margin-top: 130px; }
@media (min-width: 1100px) {
  .article.has-article-toc { max-width: 1120px; }
  .has-article-toc > :not(.article-reading-layout) { max-width: 800px; margin-left: auto; margin-right: auto; }
  .has-article-toc > .tag { display: table; margin-left: 160px; }
  .article-reading-layout:has(.article-toc) { display: grid; grid-template-columns: 250px minmax(0, 800px); gap: 40px; align-items: start; }
  .article-reading-layout > .entry-content { min-width: 0; }
  .article-toc { position: sticky; top: 110px; margin: 0; padding: 0 18px 0 0; border: 0; border-right: 1px solid #e4e7ec; border-radius: 0; background: transparent; }
  .article-toc nav { max-height: calc(100vh - 190px); }
  .admin-bar .article-toc { top: 142px; }
  .admin-bar .article-toc nav { max-height: calc(100vh - 222px); }
}
@media print { .article-toc { display: none; } .article-reading-layout { display: block !important; } }
