:root { --reading:720px; }
.blog { font-size:18px;line-height:1.8; }
.article-header { max-width:var(--reading);padding:74px 0 0;margin:auto; }
.article-header h1 { font:500 clamp(36px,6vw,55px)/1.1 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:14px 0 13px; }
.article-header .subtitle { font-size:20px;line-height:1.5;color:var(--muted);margin:0; }
.article-byline { margin:14px 0 0; font-size:13px; color:var(--muted); }
.article-byline a,.article-header .eyebrow a { color:inherit; text-decoration:none; }
.article-byline a:hover,.article-header .eyebrow a:hover { text-decoration:underline; }
.article-links { display:flex;gap:24px;font-size:13px;margin:24px 0; }
.article-links a,.article-nav a { color:var(--muted);text-decoration:none; }
.article-links a:hover,.article-nav a:hover { color:var(--blue-ink); }
.article-nav { max-width:var(--reading);margin:0 auto 45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;gap:22px;font-size:12px; }
.article { max-width:1160px;padding:0 30px 100px; }
.article article>p,.article article>ol,.article article>h2,.article article>h3 { max-width:var(--reading);margin-left:auto;margin-right:auto; }
.article article>p { margin-top:0;margin-bottom:23px; }
.article article>h2 { font:500 31px/1.3 Georgia,"Times New Roman",serif;letter-spacing:-.015em;margin-top:70px;margin-bottom:24px;scroll-margin-top:28px; }
.article article>h3 { font-size:22px;line-height:1.45;font-weight:550;margin-top:42px;margin-bottom:18px;scroll-margin-top:28px; }
.article ol { padding-left:26px;margin-top:22px;margin-bottom:28px; }
.article li { padding-left:5px;margin-bottom:10px; }
.article strong { font-weight:600; }
.article .method-trajectory { color:#486e8f; }
.article .method-factorized { color:#8b6a39; }
.article .tex-source[data-display] { max-width:960px;margin:30px auto;overflow-x:auto;overflow-y:hidden;padding:7px 10px; }
.article .katex-display { margin:0; }
.article p .katex { font-size:1.05em; }
.blog-figure { margin:43px 0 48px;padding:24px 12px 25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;scroll-margin-top:24px; }
.blog-figure>figcaption { text-align:left;font-size:13px;font-weight:500;letter-spacing:.01em;color:var(--muted);margin:0 0 20px; }
.blog-figure .controls { margin-bottom:0; }
.blog-figure .draft-note { font-size:11px; }
.blog-figure .section-heading { margin-bottom:18px; }
.blog-figure .katex { font-size:1.05em; }
.related-work { max-width:var(--reading);margin:42px auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;line-height:1.75; }
.related-work summary { padding:17px 0;cursor:pointer;font-size:16px;font-weight:500; }
.related-work summary::marker { color:var(--blue-ink); }
.related-work summary:focus-visible { outline:2px solid var(--blue-ink);outline-offset:5px; }
.related-work-content { padding:0 0 10px; }
.related-work-content h3 { margin:22px 0 10px;font-size:16px;font-weight:550;line-height:1.4; }
.related-work-content p { margin:0 0 16px; }
.related-work-content ul { margin:0 0 16px;padding-left:22px; }
.related-work-content a,.article article>p a[href^="mailto:"] { color:var(--blue-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px; }
.blog #v1 { padding:0; border:0; }
.opener-comparison iframe { display:block; width:100%; height:620px; border:0; }
.opener-comparison>figcaption { margin:12px 0 0; font-weight:400; }
@media(max-width:650px) { .opener-comparison iframe { height:640px; } }
.blog #v4 .dependency-row { max-width:270px; }
.compact-figure { max-width:620px;margin-left:auto;margin-right:auto; }
#results-growth { max-width:760px; }
#results-hierarchy { width:100%;max-width:640px;aspect-ratio:3/2;position:relative;margin:auto; }
.hierarchy-action { color:var(--blue-ink);font-size:12px;text-align:center;margin-top:5px; }
#hierarchy-progress { width:150px;height:16px;accent-color:var(--blue-ink);cursor:pointer;margin-left:10px; }
#results-growth .controls { justify-content:center; }
.placeholder { max-width:var(--reading);margin-left:auto;margin-right:auto;border:1px dashed #cdd3dc;border-radius:5px;padding:30px;text-align:center;background:#fcfcfd; }
.placeholder>span { color:#9097a0;font-size:11px;letter-spacing:.08em;text-transform:uppercase; }
.placeholder>figcaption { margin:8px 0 0;text-align:center;font-size:14px;font-weight:400; }
@media(max-width:820px) { .article-header,.article-nav { margin-left:24px;margin-right:24px; }.article-header{padding-top:42px;}.article{padding-left:24px;padding-right:24px;}.blog{font-size:17px;}.blog-figure{padding-left:0;padding-right:0;} }
@media(max-width:500px) { .article-header,.article-nav {margin-left:18px;margin-right:18px;}.article{padding-left:18px;padding-right:18px;}.article-nav{gap:10px 18px;}.blog-figure{margin-top:32px;margin-bottom:34px;}.article article>h2{font-size:28px;}.article article>h3{font-size:21px;}.article .tex-source[data-display]{font-size:15px;text-align:left;}.article .katex-display>.katex{display:block;text-align:left;} }
