.article-index,.article-reading{max-width:720px;padding-block:48px 72px}.article-index-heading{margin-bottom:40px}.article-index-heading h1{font-size:var(--page-title-size);letter-spacing:-.035em;margin:0;font-weight:500;line-height:1.35}.article-list-entry{padding-block:28px 32px}.article-list-entry+.article-list-entry{border-top:1px solid #1518191a}.article-list-entry h2{letter-spacing:-.025em;margin:16px 0 12px;font-size:clamp(21px,2.2vw,24px);font-weight:500;line-height:1.45}.article-list-entry h2 a{transition:color .18s;display:block}.article-list-entry h2 a:hover{color:var(--accent)}.article-list-entry h2 a>span{color:var(--accent);margin-left:12px;font-size:20px;display:inline-block}.article-list-entry>p{margin:0;font-size:16px;line-height:1.8}.article-meta{color:var(--ink);flex-wrap:wrap;gap:8px 22px;font-size:13px;line-height:1.6;display:flex}.article-meta time{font-variant-numeric:tabular-nums}.article-tags{flex-wrap:wrap;gap:6px 18px;margin:16px 0 0;padding:0;list-style:none;display:flex}.article-tags li{color:var(--accent-dark);font-size:12px;line-height:1.6}.article-heading{margin-bottom:28px}.article-back{align-items:center;gap:12px;font-size:14px;display:inline-flex}.article-back>span,.article-back:hover{color:var(--accent)}.article-heading h1{letter-spacing:-.035em;text-wrap:pretty;margin:28px 0 24px;font-size:clamp(27px,3vw,36px);font-weight:500;line-height:1.3}.article-contents{background:var(--paper-deep);border-radius:8px;margin:0 0 28px;padding:14px 18px}.article-contents summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;font-size:14px;list-style:none;display:flex}.article-contents summary::-webkit-details-marker{display:none}.article-contents summary>span{color:var(--accent);transition:transform .18s}.article-contents[open] summary>span{transform:rotate(45deg)}.article-contents summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.article-contents ol{gap:10px;margin:18px 0 4px;padding:0;list-style:none;display:grid}.article-contents a{font-size:14px;line-height:1.6;display:block}.article-contents a:hover{color:var(--accent)}.article-body{overflow-wrap:anywhere;font-size:16px;font-weight:400;line-height:1.8}.article-cover{border-radius:8px;width:100%;height:auto;margin-block:24px;display:block}.article-body>:first-child{margin-top:0}.article-body p{margin:0 0 14px}.article-body :is(h2,h3){letter-spacing:-.025em;scroll-margin-top:calc(var(--header-height) + 24px);margin:34px 0 16px;font-size:24px;font-weight:550;line-height:1.45}.article-body :is(h4,h5,h6){scroll-margin-top:calc(var(--header-height) + 24px);margin:26px 0 12px;font-size:19px;font-weight:550;line-height:1.5}.article-body strong{font-weight:550}.article-body :is(ul,ol){margin:14px 0 20px;padding-left:24px}.article-body li{margin-block:6px;padding-left:4px}.article-body li::marker{color:var(--accent-dark)}.article-body li>:is(ul,ol){margin-block:8px}.article-body li>p{margin-bottom:6px}.article-body a{color:var(--accent-dark);text-underline-offset:4px;text-decoration:underline 1px}.article-body blockquote{border-left:2px solid var(--accent);margin:22px 0;padding:4px 0 4px 20px}.article-body blockquote>:last-child{margin-bottom:0}.article-body img{border-radius:8px;max-width:100%;height:auto;margin:24px auto;display:block}.article-body :not(pre)>code{background:var(--paper-deep);border-radius:3px;padding:2px 5px;font-size:.9em}.article-body pre{border-radius:8px;max-width:100%;margin:22px 0;padding:18px;font-size:14px;line-height:1.7;overflow-x:auto}.article-body table{border-collapse:collapse;max-width:100%;margin:22px 0;font-size:15px;display:block;overflow-x:auto}.article-body :is(th,td){text-align:left;border-bottom:1px solid #1518191f;min-width:120px;padding:12px 16px}.article-body th{background:var(--paper-deep);font-weight:550}.article-body hr{border:0;border-top:1px solid #1518191f;margin:28px 0}.article-body .katex{overflow-wrap:normal;font-size:1.08em}.article-body .katex-display{max-width:100%;margin:22px 0;padding-block:6px;overflow:auto hidden}.article-body .katex-display>.katex{text-align:center;width:max-content;min-width:100%;display:block}.article-end{flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:42px;padding-top:20px;display:flex}@media (width<=720px){.article-index,.article-reading{padding-block:32px 48px}.article-index-heading{margin-bottom:24px}.article-heading h1{margin-block:24px 20px;font-size:27px}.article-body :is(h2,h3){margin-top:28px;font-size:22px}.article-contents{padding-inline:14px}.article-end{margin-top:30px}}@media (prefers-reduced-motion:reduce){.article-contents summary>span,.article-list-entry h2 a{transition:none}}
