.reading-progress{z-index:25;background:0 0;height:5px;position:fixed;top:67px;left:0;right:0}.reading-progress span{background:var(--blue);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.reader{min-height:70vh}.article-header{background:var(--yellow);border-bottom:var(--line) solid var(--ink);padding:5rem max(12vw,1.3rem) 4rem}.back-link{margin-bottom:3.5rem;font-weight:850;display:inline-block}.article-header h1{letter-spacing:-.06em;max-width:1050px;margin:.8rem 0 1.3rem;font-size:clamp(3.4rem,7vw,7rem);line-height:.91}.article-summary{color:var(--ink);max-width:780px;font-size:clamp(1.15rem,2vw,1.45rem)}.article-tags{margin-bottom:0}.article-hero{border-bottom:var(--line) solid var(--ink);background:#020b16;place-items:center;min-height:0;margin:0;padding:clamp(1rem,3vw,2rem);display:grid;overflow:hidden}.article-hero img{-o-object-fit:contain;object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 7rem);display:block}.article-layout{background:#fff;grid-template-columns:minmax(190px,.3fr) minmax(0,1fr);gap:clamp(2rem,6vw,7rem);padding:5rem max(10vw,1.3rem);display:grid}.article-rail{background:var(--paper);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);align-self:start;padding:1.2rem}.article-rail p:not(.label){color:var(--muted);font-size:.92rem}.article-rail a{font-weight:800}.article-content{width:100%;min-width:0;max-width:780px;font-family:Georgia,Times New Roman,serif;font-size:1.12rem;line-height:1.75}.article-content>:first-child{margin-top:0}.article-content h2,.article-content h3,.article-content h4{letter-spacing:-.035em;font-family:Arial,Helvetica,sans-serif;line-height:1.05}.article-content h2{margin:3.5rem 0 1rem;font-size:clamp(2rem,4vw,3.25rem)}.article-content h3{margin:2.7rem 0 .8rem;font-size:1.65rem}.article-content a{color:#064fc4;text-underline-offset:.15em;text-decoration-thickness:2px}.article-content code,.article-content kbd,.article-content pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.article-content code{background:var(--paper);padding:.12em .3em;font-size:.92em}.article-content pre{background:var(--ink);border:2px solid var(--ink);color:#fff;padding:1.2rem;font-size:.9rem;line-height:1.55;overflow-x:auto}.article-content pre code{color:inherit;background:0 0;padding:0}.article-content blockquote{background:var(--paper);border-left:8px solid var(--coral);margin:2rem 0;padding:.4rem 1.4rem}.table-scroll{border:2px solid var(--ink);max-width:100%;margin:2rem 0;overflow-x:auto}.article-content table{border-collapse:collapse;width:100%;min-width:620px;font-family:Arial,Helvetica,sans-serif;font-size:.92rem}.article-content td,.article-content th{border:1px solid var(--ink);text-align:left;vertical-align:top;padding:.75rem}.article-content th{background:var(--yellow)}.article-content img{max-width:100%;height:auto}.post-nav{background:var(--ink);border-top:var(--line) solid var(--ink);gap:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.post-nav a{background:var(--mint);align-items:center;min-height:130px;padding:1.4rem max(7vw,1.3rem);font-weight:850;display:flex}.post-nav a:last-child{background:var(--coral);text-align:right;justify-content:flex-end}@media (max-width:800px){.article-layout{grid-template-columns:1fr;padding-top:3rem}.article-rail{max-width:420px}}@media (max-width:650px){.reading-progress{top:113px}.article-header{padding-top:3rem}.back-link{margin-bottom:2.5rem}.article-header h1{font-size:clamp(3rem,14vw,4.3rem)}.article-layout{padding-top:2.5rem;padding-bottom:3.5rem}.article-content{font-size:1.04rem}.post-nav{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.reading-progress{display:none}}
