:root{--background:245 244 239;--foreground:27 27 27;--muted:229 228 220;--muted-foreground:104 104 104;--link:89 89 89;--border:64 62 55;--font-serif:"EB Garamond", "Times New Roman", serif;--font-sans:"Inter", "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", Menlo, monospace;--measure-content:48rem;--measure-media:80rem;--page-pad:1rem;--page-pad-md:3rem;--space-1:.25rem;--space-2:.5rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-media:.75rem;--shadow-media:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--text-chrome:.875rem;--leading-chrome:1.25rem;--text-brand:1.875rem;--leading-brand:2.25rem;--text-title:3rem;--leading-title:1;--text-h2:clamp(2.125rem, 3.4vw, 2.6rem);--leading-h2:1.08;--text-h3:clamp(1.55rem, 2.4vw, 1.8rem);--leading-h3:1.16;--text-body:1rem;--leading-body:1.62;--text-caption:.875rem;--leading-caption:1.625;--text-toc:.6875rem;--text-toc-sub:.625rem;--toc-width:12rem;--meta-label-col:120px;--meta-gap:.125rem;--meta-row-gap:.75rem;--link-underline-offset-nav:8px;--link-underline-offset-email:4px;--link-underline-offset-paper:2px;--link-hover-thickness:2px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:rgb(var(--background));min-height:100vh;color:rgb(var(--foreground));font-family:var(--font-mono);font-size:var(--text-chrome);line-height:var(--leading-chrome);-webkit-font-smoothing:antialiased;margin:0;font-weight:400}a{color:inherit}.page{padding:var(--page-pad)}@media (width>=768px){.page{padding:var(--page-pad-md)}}.site-header{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-16);flex-wrap:wrap;display:flex}.brand{font-family:var(--font-serif);font-size:var(--text-brand);line-height:var(--leading-brand);font-weight:400;text-decoration:none}.brand:hover{text-underline-offset:var(--link-underline-offset-nav);text-decoration:underline}.layout{gap:var(--space-12);display:grid}@media (width>=1100px){.layout{grid-template-columns:minmax(0, var(--measure-content)) minmax(0, var(--toc-width));column-gap:var(--space-16);padding-left:calc(var(--toc-width) + var(--space-16));justify-content:center;align-items:start}.layout>article{justify-self:center;width:100%}}@media (width<=1099px){.toc{display:none}}.toc{top:var(--space-12);width:100%;padding-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-toc);line-height:var(--leading-chrome);position:sticky}.toc-label{margin:0 0 var(--space-2);font-weight:700}.toc-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.toc-list>li{gap:var(--space-1);display:grid}.toc-list,.toc-sublist,.toc-list>li{grid-template-columns:minmax(0,1fr)}.toc-sublist{padding:0 0 0 var(--space-6);gap:var(--space-1);margin:0;list-style:none;display:grid}.toc-sublist a{font-size:var(--text-toc-sub)}.toc-list a{color:rgb(var(--muted-foreground));white-space:nowrap;text-overflow:ellipsis;text-decoration:none;display:block;overflow:hidden}.toc-list a:hover{color:rgb(var(--foreground))}.toc-list a.is-active{color:rgb(var(--foreground));background:rgb(var(--foreground) / .07);padding-block:.125rem;padding-inline:var(--space-1);margin-inline:calc(var(--space-1) * -1);border-radius:.25rem;font-weight:700}.article-title{margin-block:0 var(--space-6);font-family:var(--font-serif);font-size:var(--text-title);line-height:var(--leading-title);letter-spacing:-.025em;text-wrap:pretty;font-weight:500}.meta-bar{gap:var(--meta-row-gap);margin-block:0 var(--space-12);font-family:var(--font-mono);font-size:var(--text-chrome);line-height:var(--leading-chrome);display:grid}.meta-row{gap:var(--space-2);display:grid}@media (width>=768px){.meta-row{grid-template-columns:var(--meta-label-col) 1fr;gap:var(--meta-gap)}}.meta-row+.meta-row{margin-top:var(--space-2)}@media (width>=768px){.meta-row+.meta-row{margin-top:0}}.meta-label{color:rgb(var(--foreground))}.meta-value a[href^=mailto\:]{text-decoration:underline dotted;text-decoration-color:rgb(var(--foreground) / .5);text-underline-offset:var(--link-underline-offset-email)}.meta-value a.paper-link{color:rgb(var(--foreground));text-underline-offset:var(--link-underline-offset-paper);text-decoration:underline}.meta-value .bibtex-copy{margin:0;margin-right:var(--space-2);color:rgb(var(--foreground));font:inherit;text-underline-offset:var(--link-underline-offset-paper);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.meta-value .bibtex-copy:hover,.meta-value .bibtex-jump:hover{text-decoration-thickness:var(--link-hover-thickness)}.meta-value .bibtex-status{margin-left:var(--space-2);color:rgb(var(--muted-foreground))}.meta-value .meta-muted,.authors{color:rgb(var(--muted-foreground))}.hero-band{max-width:var(--measure-media);margin-block:0 var(--space-12)}.figure{margin:var(--space-8) auto;max-width:44rem}.figure-zoom{cursor:zoom-in;background:0 0;border:none;width:100%;margin:0;padding:0;display:block}.figure img,.hero{width:100%;height:auto;display:block}.zoom-overlay{z-index:50;background:#000000d9;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.zoom-stage{cursor:grab;place-items:center;display:grid}.zoom-stage:active{cursor:grabbing}.zoom-stage img{object-fit:contain;user-select:none;pointer-events:none;width:auto;max-width:90vw;height:auto;max-height:90vh}.zoom-hint{bottom:var(--space-4);padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--text-chrome);line-height:var(--leading-chrome);color:#ffffffa6;pointer-events:none;background:#00000080;border-radius:.375rem;margin:0;position:absolute;left:50%;transform:translate(-50%)}.figure figcaption{margin-top:var(--space-2);font-family:var(--font-serif);font-size:var(--text-caption);line-height:var(--leading-caption);color:rgb(var(--foreground) / .65)}.lead{margin-block:0 var(--space-4);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body)}.prose{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body)}.tei-scale{margin:0 0 var(--space-4);border-top:1px solid rgb(var(--border) / .45);border-bottom:1px solid rgb(var(--border) / .45);flex-wrap:wrap;justify-content:center;gap:.4rem 1.75rem;padding:.7rem 0;list-style:none;display:flex}.tei-scale li{white-space:nowrap;align-items:baseline;gap:.45rem;display:flex}.tei-scale strong{font-family:var(--font-mono);letter-spacing:.08em;color:rgb(var(--foreground) / .55);font-size:.6875rem;font-weight:600}.tei-scale span{font-family:var(--font-serif);font-size:1.05rem;font-weight:500;line-height:1.25}.prose :where(p,ul,ol){margin:0 0 var(--space-4)}.prose :where(ul,ol){padding-left:var(--space-8)}.prose :where(strong){font-weight:700}.prose :where(a){color:rgb(var(--link));text-decoration:underline}.prose :where(a):hover{text-decoration-thickness:var(--link-hover-thickness)}.prose :where(h2){margin:var(--space-8) 0 var(--space-4);font-family:var(--font-serif);font-size:var(--text-h2);line-height:var(--leading-h2);letter-spacing:-.025em;scroll-margin-top:var(--space-8);font-weight:600}.prose :where(h2:first-child){margin-top:0}.prose :where(h3){margin:var(--space-2) 0 var(--space-4);font-family:var(--font-serif);font-size:var(--text-h3);line-height:var(--leading-h3);letter-spacing:-.025em;font-weight:600}.prose :where(blockquote){margin:0 0 var(--space-4);padding-left:var(--space-4);border-left:2px solid rgb(var(--border) / .35);color:rgb(var(--foreground) / .85)}.prose :where(hr){margin:var(--space-8) 0;border:0;border-top:1px solid rgb(var(--border) / .25)}.prose :where(pre){margin:0 0 var(--space-4);padding:var(--space-4);font-family:var(--font-mono);font-size:var(--text-chrome);line-height:var(--leading-chrome);background:rgb(var(--muted));border-radius:var(--radius-media);overflow-x:auto}.prose :where(code){font-family:var(--font-mono);font-size:.92em}.prose :where(pre code){font-size:inherit}.prose :where(table){width:fit-content;max-width:100%;margin:0 auto var(--space-4);border-collapse:collapse;font-size:var(--text-chrome);line-height:var(--leading-chrome);text-align:center;display:block;overflow-x:auto}.prose :where(th,td){padding:var(--space-2) var(--space-4);border-bottom:1px solid rgb(var(--border) / .2);text-align:center;vertical-align:top}.prose :where(th){font-weight:600}.prose :where(.formula){margin:0 0 var(--space-4);font-family:var(--font-mono);font-size:var(--text-chrome);line-height:var(--leading-chrome);overflow-x:auto}.site-footer{margin-block:var(--space-16) 0;padding-top:var(--space-8);font-family:var(--font-serif);font-size:var(--text-brand);line-height:var(--leading-brand)}
