.article-page{--article-width:720px;--article-rail-width:248px;--article-gap:clamp(2rem, 4vw, 4rem)}.article-page .article-layout{grid-template-columns:minmax(0, var(--article-width)) var(--article-rail-width);justify-content:center;column-gap:var(--article-gap);max-width:var(--site-max);grid-template-areas:"heading rail""content rail";row-gap:0;padding-top:3rem;display:grid}.article-page .article-header{text-align:left;grid-area:heading;padding-block:0 2.5rem}.article-page .article-heading{min-width:0}.article-page .article-header h1{text-wrap:balance;font-size:clamp(2.25rem,3.3vw,3rem);line-height:1.12}.article-page .article-header .lead{max-width:none;margin:1.25rem 0;font-size:1.2rem;line-height:1.65}.article-page .article-header .blog-meta{justify-content:flex-start}.article-page .article-layout{align-items:start}.article-page .article-rail{scrollbar-width:thin;scrollbar-color:var(--rule) transparent;grid-area:rail;max-height:calc(100dvh - 128px);overflow-y:auto}.article-page .article-toc-mobile{grid-area:toc}.article-page .prose{grid-area:content;width:100%;line-height:1.75}.article-page .prose>:first-child{margin-top:0}.article-page .prose p,.article-page .prose li{max-width:none}.article-page .prose>p,.article-page .prose li>p{text-align:justify;text-align-last:left;hyphens:auto;hyphenate-limit-chars:8 3 3;overflow-wrap:break-word}.article-page .prose h2{text-wrap:balance;margin:2.5rem 0 1rem;font-size:clamp(1.75rem,2.5vw,2.15rem);line-height:1.2}.article-page .prose h3{margin:1.75rem 0 .75rem;font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.3}.article-page .prose :is(ul,ol){margin:1rem 0 1.5rem;padding-left:1.4rem}.article-page .prose li{margin-block:.4rem;padding-left:.15rem}.article-page .prose blockquote{border-left:3px solid var(--huangdan);background:var(--ivory-deep);margin:1.5rem 0;padding:.9rem 1.15rem}.article-page .prose blockquote>:last-child{margin-bottom:0}.article-page .prose :is(figure,table,pre){width:100%;max-width:100%;margin:1.75rem 0}.article-page .prose figure{background:var(--paper);border:1px solid var(--rule);border-radius:10px;overflow:hidden}.article-page .prose figure :is(img,svg){object-fit:contain;width:100%;height:auto;margin:0;display:block}.article-page .prose figcaption{border-top:1px solid var(--rule);color:var(--muted);text-align:left;padding:.85rem 1rem;font-size:.875rem;line-height:1.6}.article-page .prose>p>img{width:100%;height:auto}.article-page .prose table{border-collapse:collapse;font-size:1rem;line-height:1.55;display:table}.article-page .prose :is(th,td){border:1px solid var(--rule);text-align:left;vertical-align:top;overflow-wrap:break-word;font-variant-numeric:tabular-nums;padding:.8rem .9rem}.article-page .prose th{background:var(--ivory-deep);color:var(--graphite);font-weight:700}.article-page .prose tbody tr:nth-child(2n){background:#fffdf873}.article-page .prose table:not(:has(th:nth-child(3))){table-layout:fixed}.article-page .prose table:not(:has(th:nth-child(3))) th:first-child{width:36%}.article-page .prose .article-cell-label{display:none}.article-page .prose pre{background:var(--paper);border:1px solid var(--rule);padding:1rem;overflow-x:auto}@media (width<=1023px){.article-page .article-layout{grid-template-columns:minmax(0, var(--article-width));grid-template-areas:"heading""toc""content";gap:0;padding-top:2.5rem}.article-page .article-header{padding-block:0 2rem}}@media (width<=600px){.article-page .prose>p,.article-page .prose li>p{text-align:left;hyphens:none}.article-page .article-layout{padding-top:2rem}.article-page .article-header{padding-block:0 1.75rem}.article-page .article-header h1{font-size:clamp(2rem,8.5vw,2.35rem)}.article-page .article-header .lead{font-size:1.08rem}.article-page .prose :is(figure,table,pre){margin-block:1.5rem}.article-page .prose table{font-size:.9375rem}.article-page .prose :is(th,td){padding:.65rem .6rem}.article-page .prose figcaption{padding:.8rem .85rem}.article-page .prose table:has(th:nth-child(3)){display:block;overflow-x:auto}.article-page .prose table.article-table-stacked{display:block;overflow:visible}.article-page .prose .article-table-stacked thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.article-page .prose .article-table-stacked tbody{gap:.9rem;display:grid}.article-page .prose .article-table-stacked tbody tr{background:var(--paper);border:1px solid var(--rule);border-radius:8px;grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.article-page .prose .article-table-stacked td{border:0;border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,36%) minmax(0,1fr);gap:.75rem;padding:.7rem .8rem;display:grid}.article-page .prose .article-table-stacked td:last-child{border-bottom:0}.article-page .prose .article-cell-label{color:var(--muted);font-size:.8rem;font-weight:600;line-height:1.5;display:block}}
