.article-page{padding-top:2.5rem}.article{max-width:720px;margin:0 auto}@media (min-width:1180px){.article-layout{grid-template-columns:minmax(0,.5fr) minmax(0,720px) minmax(13rem,1fr);column-gap:3rem;display:grid}.article{grid-area:1/2;max-width:none;margin:0}.article-toc{grid-area:1/3}}@media (max-width:1179px){.article-toc{display:none}}.toc{max-height:calc(100dvh - 8rem);animation:rise .7s var(--ease) .2s both;padding-top:.4rem;position:sticky;top:6.5rem;overflow-y:auto}.toc ol{border-left:1px solid var(--ym-border);margin-top:1rem;list-style:none}.toc a{color:var(--ym-secondary);transition:color .2s var(--ease), border-color .2s var(--ease);border-left:1px solid #0000;margin-left:-1px;padding:.4rem 0 .4rem 1rem;font-size:.8125rem;line-height:1.45;display:block}.toc a:hover{color:var(--foreground)}.toc a.active{color:var(--foreground);border-left-color:var(--ym-blue)}.reading-progress{display:none}@supports (animation-timeline:scroll()){.reading-progress{z-index:41;background:var(--ym-blue);transform-origin:0;height:2px;animation:linear both reading-progress;animation-timeline:scroll(root);display:block;position:fixed;inset:0 0 auto}}@keyframes reading-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.markdown-content :is(h2,h3){scroll-margin-top:6.5rem}.article-header{margin-bottom:2.5rem}.article-topic{color:var(--ym-blue-text)}.article-topic:hover{color:var(--foreground)}.article-title{letter-spacing:-.045em;margin-top:1.25rem;font-size:clamp(2rem,4.8vw,3.25rem);line-height:1.08}.article-description{color:var(--ym-secondary);margin-top:1.1rem;font-size:1.1875rem;line-height:1.6}.article-byline{border-top:1px solid var(--ym-border);border-bottom:1px solid var(--ym-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:1rem 0;display:flex}.article-byline-author{align-items:center;gap:.75rem;display:inline-flex}.article-byline-author>span{flex-direction:column;line-height:1.3;display:flex}.article-byline-name{font-size:.9375rem;font-weight:600}.article-byline-role{color:var(--ym-secondary);font-size:.8125rem}.article-byline-author:hover .article-byline-name{text-underline-offset:3px;text-decoration:underline}.article-byline-meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ym-secondary);flex-wrap:wrap;gap:.5rem 1rem;font-size:.6875rem;display:flex}.article-hero-image{border-radius:var(--radius-card);border:1px solid var(--ym-border);background:var(--ym-surface);margin:0 -2rem 3rem;overflow:hidden}.article-hero-image img{width:100%;height:auto}.article-author-end{margin-top:4rem}.article-more{border-top:1px solid var(--ym-border);margin-top:3rem;padding-top:2rem}.article-more h2{letter-spacing:-.02em;margin-bottom:1rem;font-size:1.25rem}.article-more h2 a{text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--foreground) 30%, transparent);text-decoration-color:color-mix(in srgb, var(--foreground) 30%, transparent)}.article-more ul{border-top:1px solid var(--ym-border);list-style:none}.article-more li a{border-bottom:1px solid var(--ym-border);color:color-mix(in srgb, var(--foreground) 88%, transparent);padding:.95rem 0;font-weight:500;display:block}.article-more li a:hover{color:var(--foreground)}@media (max-width:800px){.article-page{padding-top:1rem}.article-hero-image{margin:0 0 2rem}}
