.blog-post{padding:clamp(120px,12vw,172px) clamp(18px,4vw,56px) 0}.article-header{text-align:center;max-width:1000px;margin:0 auto}.article-markdown{min-height:44px;color:var(--e-mute);text-underline-offset:4px;align-items:center;gap:8px;margin-top:12px;font-size:13px;text-decoration:underline;display:inline-flex}.article-markdown:hover{color:var(--e-a)}.article-breadcrumb{color:var(--e-mute);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-bottom:32px;font-size:12px;line-height:1.7;display:flex}.article-breadcrumb a{color:var(--e-mute)}.article-breadcrumb a:hover{color:var(--e-a)}.article-meta{color:var(--e-mute);flex-wrap:wrap;justify-content:center;gap:12px 24px;font-size:13px;display:flex}.article-header h1{letter-spacing:-.045em;text-wrap:balance;max-width:25ch;margin:24px auto;font-size:clamp(38px,5.6vw,78px);font-weight:400;line-height:1.1}.article-deck{color:var(--e-mute);max-width:56ch;margin:0 auto;font-size:clamp(18px,1.7vw,23px);line-height:1.6}.article-author{justify-content:center;gap:10px;margin:26px 0 0;font-size:14px;display:flex}.article-author span{color:var(--e-mute)}.article-cover{max-width:1320px;margin:clamp(36px,5vw,72px) auto clamp(48px,7vw,100px)}.article-cover img{aspect-ratio:16/9;object-fit:cover;background:var(--e-bg-2);border-radius:14px;width:100%;height:auto;display:block}.article-cover figcaption{color:var(--e-mute);text-align:center;max-width:90ch;margin:14px auto 0;font-size:12px;line-height:1.7}.article-reading{grid-template-columns:minmax(0,190px) minmax(0,720px);align-items:start;gap:clamp(32px,5vw,80px);max-width:1080px;margin:auto;display:grid}.article-toc{font-size:13px;line-height:1.6;position:sticky;top:110px}.article-toc summary{cursor:pointer;min-height:36px;font-weight:500}.article-toc ol{border-left:1px solid var(--e-line);margin:12px 0 0;padding:0;list-style:none}.article-toc li{margin:0}.article-toc a{color:var(--e-mute);padding:8px 0 8px 18px;display:block}.article-toc a:hover{color:var(--e-a)}.article-prose{min-width:0;font-size:18px;line-height:1.8}.article-prose>p{margin:0 0 26px}.article-prose>p:first-child{font-size:21px;line-height:1.75}.article-prose h2{letter-spacing:-.03em;margin:60px 0 24px;scroll-margin-top:110px;font-size:clamp(27px,3vw,38px);font-weight:450;line-height:1.2}.article-prose h3{margin:36px 0 18px;font-size:24px;font-weight:500;line-height:1.35}.article-prose strong{font-weight:600}.article-prose a{color:var(--e-a);text-underline-offset:4px;text-decoration:underline 1px}.article-prose a:hover{color:var(--e-ink)}.article-prose ul,.article-prose ol{margin:24px 0 32px;padding-left:24px}.article-prose li{margin:12px 0;padding-left:5px}.article-prose blockquote{border-left:3px solid var(--e-a);letter-spacing:-.02em;margin:38px 0;padding:20px 0 20px 28px;font-size:clamp(21px,2vw,26px);line-height:1.5}.article-prose blockquote p{margin:0}.article-prose table{border-collapse:collapse;max-width:100%;margin:32px 0;font-size:15px;line-height:1.65;display:block;overflow-x:auto}.article-prose th,.article-prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--e-line);min-width:135px;padding:15px 18px 15px 0}.article-prose th{color:var(--e-ink);font-weight:500}.article-prose td{color:var(--e-mute)}.article-prose pre{background:var(--e-bg-2);border-radius:10px;padding:22px;font-size:14px;overflow:auto}.article-prose img{border-radius:10px;max-width:100%;height:auto}.article-end{border-top:1px solid var(--e-line);flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:48px;padding-top:28px;display:flex}.article-end a{align-items:center;gap:12px;min-height:44px;font-size:14px;text-decoration:none;display:inline-flex}.article-end i{font-size:22px}.article-related{border-top:1px solid var(--e-line);max-width:1080px;margin:clamp(60px,8vw,120px) auto;padding:48px 0 72px}.article-related>h2{letter-spacing:-.035em;margin:0 0 36px;font-size:clamp(28px,3.5vw,44px);font-weight:400;line-height:1.15}.article-related>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px);display:grid}@media (width<=900px){.article-reading{grid-template-columns:minmax(0,720px);justify-content:center}.article-toc{border-block:1px solid var(--e-line);padding:18px 0;position:static}.article-toc ol{columns:2;column-gap:24px}.article-toc li{break-inside:avoid}.article-cover{margin-bottom:40px}}@media (width<=600px){.article-breadcrumb{margin-bottom:24px}.article-header h1,.article-header,.article-cover figcaption{text-align:left}.article-meta,.article-author,.article-breadcrumb{justify-content:flex-start}.article-toc ol{columns:1}.article-prose{font-size:17px;line-height:1.8}.article-prose>p:first-child{font-size:19px}.article-prose h2{margin-top:44px}.article-related>div{grid-template-columns:1fr}.article-cover img{border-radius:10px}}
