.has-reading-toc .reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 210px;align-items:start;gap:24px;width:var(--content,min(1280px,calc(100% - 48px)));margin:0 auto}.has-reading-toc .reading-layout>.article-body{width:100%;max-width:none;min-width:0;box-sizing:border-box;padding-inline:clamp(20px,3vw,44px)}.reading-toc{position:sticky;top:115px;max-height:calc(100dvh - 135px);overflow:auto;min-width:0;padding:16px 0}.reading-toc summary{font-weight:800;font-size:15px;line-height:1.6;cursor:pointer;min-height:44px;display:flex;align-items:center}.reading-toc ol{list-style:none;padding:0;margin:8px 0;display:grid;gap:4px}.reading-toc a{display:flex;align-items:baseline;gap:9px;min-height:44px;box-sizing:border-box;padding:10px 8px;border-left:3px solid transparent;font-size:14px;line-height:1.65;text-decoration:none;color:#555;word-break:normal}.reading-toc a>span:last-child{min-width:0}.reading-toc .toc-number{flex:0 0 20px;font-size:12px;color:#777}.reading-toc a:hover,.reading-toc a[aria-current="location"]{background:#f2eefb;color:#50349a;border-color:#7050c5}.reading-toc :focus-visible{outline:2px solid #7050c5;outline-offset:2px}.has-reading-toc .reading-anchor{scroll-margin-top:130px}.reading-anchor:focus{outline:none}@media(min-width:1101px){.reading-toc summary{pointer-events:none;list-style:none}.reading-toc summary::-webkit-details-marker{display:none}}@media(max-width:1100px){.has-reading-toc .reading-layout{grid-template-columns:minmax(0,1fr);gap:20px}.reading-toc{position:static;grid-row:1;max-height:none;overflow:visible;padding:8px 18px;border:1px solid #ddd;border-radius:16px;background:white}.reading-toc summary::after{content:'＋';margin-left:auto}.reading-toc details[open] summary::after{content:'－'}.reading-toc ol{grid-template-columns:repeat(2,minmax(0,1fr))}.has-reading-toc .reading-layout>.article-body{padding-inline:20px}}@media(max-width:600px){.reading-toc ol{grid-template-columns:minmax(0,1fr)}.reading-toc a{font-size:15px}.has-reading-toc .reading-anchor{scroll-margin-top:110px}}
/* Older inline contents are superseded only after the shared navigation exists. */
.reading-layout .article-body .article-toc,.reading-layout .article-body .travel-toc{display:none}
/* Long Latin names must wrap when text is enlarged; Chinese keeps natural breaks. */
.has-reading-toc h1,.has-reading-toc h2,.has-reading-toc h3,.reading-toc a{overflow-wrap:anywhere;min-width:0}.reading-toc .toc-number{flex-basis:auto;min-width:20px}
.reading-layout .article-body nav[aria-label="文章目錄"]{display:none}
