.article-toc-desktop{display:none}
.article-toc-mobile{margin:0 0 32px;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:0 18px}
.article-toc-mobile summary{padding:15px 0;color:var(--text);font-size:16px;font-weight:700;cursor:pointer}
.article-toc-mobile[open] summary{border-bottom:1px solid var(--border);margin-bottom:12px}
.article-toc-mobile nav{max-height:50vh;overflow-y:auto;margin-bottom:14px}
.article-reading-layout nav[aria-label="In this article"] ol{list-style:none;margin:0;padding:0}
.article-reading-layout nav[aria-label="In this article"] li{margin:0 0 3px}
.article-reading-layout nav[aria-label="In this article"] a{display:block;padding:8px 10px;border-left:2px solid transparent;border-radius:0 7px 7px 0;color:var(--muted);font-size:14px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;transition:color .15s,background-color .15s}
.article-reading-layout nav[aria-label="In this article"] a:hover,.article-reading-layout nav[aria-label="In this article"] a[aria-current]{color:var(--accent);background:var(--soft);border-left-color:var(--accent)}
.article-reading-layout nav[aria-label="In this article"] a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.article-reading-layout nav[aria-label="In this article"] .toc-subsection a{padding-left:23px;font-size:13px}
.article-body-column .prose h2,.article-body-column .prose h3{scroll-margin-top:20px}
@media(min-width:1100px){
 .article-reading-layout{max-width:1184px;margin:40px auto 0;padding:0 28px;display:grid;grid-template-columns:minmax(0,760px) minmax(220px,280px);gap:40px;align-items:start}
 .article-reading-layout .article-body-column{width:100%;max-width:none;margin:0;min-width:0}
 .article-toc-mobile{display:none}
 .article-toc-desktop{display:block;align-self:stretch;min-width:0}
 .article-toc-sticky{position:sticky;top:var(--article-toc-top,112px);border:1px solid var(--border);border-radius:16px;padding:20px 15px;background:var(--surface)}
 .article-toc-sticky h2{margin:0 10px 14px;font-size:16px;font-weight:750;color:var(--text)}
 .article-toc-sticky nav{max-height:calc(100vh - var(--article-toc-top,112px) - 110px);max-height:calc(100dvh - var(--article-toc-top,112px) - 110px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
}
@media(prefers-reduced-motion:reduce){.article-reading-layout nav[aria-label="In this article"] a{transition:none}}
@media print{.article-toc-mobile,.article-toc-desktop{display:none}.article-reading-layout{display:block;padding:0;margin:0;max-width:none}}
