:root{--color-bg:#ffffff;--color-bg-sidebar:#374151;--color-text:#374151;--color-text-muted:#6b7280;--color-text-sidebar:#ffffff;--color-accent:#15803d;--color-accent-hover:#166534;--color-accent-light:#22c55e;--color-nav-hover:#15803d;--color-sidebar-accent:#4ade80;--color-border:#e5e7eb;--color-code-bg:#f3f4f6;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--sidebar-width-lg:16rem;--sidebar-width-xl:20rem;--content-max-width:45rem;--content-padding-lg:2rem;--content-gap:clamp(0rem, 4vw - 2rem, 4rem)}@media(prefers-color-scheme:dark){:root{--color-bg:#18181b;--color-text:#d1d5db;--color-text-muted:#9ca3af;--color-accent:#4ade80;--color-accent-hover:#86efac;--color-border:#4b5563;--color-code-bg:#27272a}}*,*::before,*::after{box-sizing:border-box}body{margin:0;background-color:var(--color-bg);font-family:var(--font-serif);line-height:1.5}img{max-width:100%;height:auto}a{color:inherit;text-decoration:inherit}.skip-link{position:absolute;top:-4rem;left:.5rem;z-index:10;padding:.5rem 1rem;background-color:var(--color-bg);color:var(--color-text);border:2px solid var(--color-accent);border-radius:.25rem}.skip-link:focus{top:.5rem}.sidebar :focus-visible{outline:2px solid var(--color-sidebar-accent);outline-offset:-2px}.main-content :focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:.125rem}.sidebar{text-align:center;overflow-y:auto;background-color:var(--color-bg-sidebar);color:var(--color-text-sidebar);padding-top:1rem;height:100%}@media(min-width:1024px){.sidebar{width:var(--sidebar-width-lg);position:fixed;top:0;left:0;bottom:0}}@media(min-width:1280px){.sidebar{width:var(--sidebar-width-xl)}}.main-content{max-width:var(--content-max-width);margin:0 auto;padding:1rem 1rem 0}@media(min-width:1024px){.main-content{--box:calc(var(--content-max-width) + 2 * var(--content-padding-lg));--sidebar-width:var(--sidebar-width-lg);max-width:var(--box);margin-left:calc(var(--sidebar-width) + var(--content-gap));padding:2rem var(--content-padding-lg)0}}@media(min-width:1280px){.main-content{--sidebar-width:var(--sidebar-width-xl)}}.sidebar-header{font-family:var(--font-serif);font-size:1.25rem}@media(min-width:640px){.sidebar-header{display:grid;grid-template-columns:repeat(2,1fr);align-items:center}}@media(min-width:1024px){.sidebar-header{display:block}}.profile-section{margin-bottom:1rem}@media(min-width:640px){.profile-section{border-right:1px dotted}}@media(min-width:1024px){.profile-section{border-right:none}}.site-title{font-size:2.25rem;margin:0;font-weight:inherit}.profile-image{border-radius:9999px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);width:75%;margin:0 auto 1rem;display:block}.site-name-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(min-width:1024px){.site-name-text{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal}}.sidebar-divider{width:75%;margin:1rem auto;border:none;border-top:1px dotted}@media(min-width:640px){.sidebar-divider{display:none}}@media(min-width:1024px){.sidebar-divider{display:block}}.nav-menu{display:grid}@media(min-width:640px){.nav-menu{font-size:1.5rem}}@media(min-width:1024px){.nav-menu{font-size:1.25rem}}.mobile-site-title{display:none;font-size:2.25rem;margin-bottom:1rem}@media(min-width:640px){.mobile-site-title{display:inline}}@media(min-width:1024px){.mobile-site-title{display:none}}.nav-link{display:block;padding:1rem;transition:background-color .3s ease-in-out}@media(min-width:640px){.nav-link{padding:.5rem}}@media(min-width:1024px){.nav-link{padding:1rem}}.nav-link:hover{background-color:var(--color-nav-hover)}.nav-link[aria-current=page]{background-color:rgba(255,255,255,8%);box-shadow:inset 4px 0 0 var(--color-sidebar-accent)}.nav-link[aria-current=page]:hover{background-color:var(--color-nav-hover)}.social-links{font-size:1.5rem;margin-bottom:1rem;display:flex;flex-wrap:wrap;width:75%;margin-left:auto;margin-right:auto}@media(min-width:640px){.social-links{grid-column:1/3}}.social-link{flex:1;transition:background-color .3s ease-in-out;border-radius:.75rem;margin:0 .125rem}.social-link svg{width:1em;height:1em;vertical-align:-.125em;fill:currentColor}.social-link:hover{background-color:var(--color-nav-hover)}.sidebar-footer{font-family:var(--font-sans);font-size:1rem}.main-content{font-family:var(--font-serif);font-size:1rem;line-height:1.75;color:var(--color-text)}@media(min-width:1024px){.main-content{font-size:1.125rem;line-height:1.778}}.main-content p{margin-top:1.25em;margin-bottom:1.25em}.main-content h1{font-size:2.25em;margin-top:0;margin-bottom:.889em;line-height:1.1;font-weight:800;color:var(--color-text)}@media(prefers-color-scheme:dark){.main-content h1{color:#f9fafb}}.main-content h2{font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.33;font-weight:700;color:var(--color-text)}@media(prefers-color-scheme:dark){.main-content h2{color:#f9fafb}}.main-content h3{font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6;font-weight:600;color:var(--color-text)}@media(prefers-color-scheme:dark){.main-content h3{color:#f9fafb}}.main-content h4{font-size:1em;margin-top:1.5em;margin-bottom:.5em;font-weight:600;color:var(--color-text)}@media(prefers-color-scheme:dark){.main-content h4{color:#f9fafb}}.main-content a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.main-content a:hover{color:var(--color-accent-hover)}.main-content strong{font-weight:600;color:var(--color-text)}@media(prefers-color-scheme:dark){.main-content strong{color:#f9fafb}}.main-content code{font-family:var(--font-mono);font-size:1rem}.main-content blockquote{border-left:4px solid var(--color-border);padding-left:1em;margin:1.6em 0;font-style:italic;color:var(--color-text-muted)}.main-content blockquote p:first-of-type::before,.main-content blockquote p:last-of-type::after{content:none}.main-content ul,.main-content ol{margin:1.25em 0;padding-left:1.625em}.main-content li{margin:.5em 0}.main-content li>ul,.main-content li>ol{margin:.5em 0}.main-content hr{border:none;border-top:1px solid var(--color-border);margin:3em 0}.main-content img{margin:2em auto;border-radius:.5rem;display:block}.main-content figure{margin:2em 0}.main-content figcaption{font-size:.875em;color:var(--color-text-muted);margin-top:.75em;text-align:center}.main-content table{width:100%;border-collapse:collapse;margin:2em 0;font-size:.875em}.table-scroll{--edge:color-mix(in srgb, var(--color-text) 25%, transparent);margin:1.75em 0;overflow-x:auto;background:linear-gradient(to right,var(--color-bg) 30%,transparent)0/2rem 100%,linear-gradient(to left,var(--color-bg) 30%,transparent)100%/2rem 100%,linear-gradient(to right,var(--edge),transparent)0/.75rem 100%,linear-gradient(to left,var(--edge),transparent)100%/.75rem 100%;background-repeat:no-repeat;background-attachment:local,local,scroll,scroll}.table-scroll:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.table-scroll table{margin:0}.main-content th,.main-content td{padding:.5714em .75em;border:1px solid var(--color-border);text-align:left}.main-content th{font-weight:600;background-color:var(--color-code-bg)}.article-disclaimer{font-size:.875rem;margin:1rem 0;font-style:italic;color:var(--color-text-muted)}.article-meta{color:var(--color-text-muted);font-size:.875em}.main-content .paper-byline{margin:0;color:var(--color-text-muted);font-size:.875em}.paper-venue{color:var(--color-text);font-weight:600}.paper-award{color:var(--color-accent);font-weight:600}.main-content .entry-list{list-style:none;margin:0;padding:0}.main-content .entry-list .entry{margin:0;padding:1.75rem 0;border-top:1px solid var(--color-border)}.main-content .entry-list .entry:first-child{padding-top:0;border-top:none}.main-content .entry-title{margin:0 0 .25em;font-size:1.5em;line-height:1.3}.main-content .entry-title a{text-decoration:none}.main-content .entry-title a:hover,.main-content .entry-title a:focus-visible{text-decoration:underline}.main-content .entry-summary p{margin:.6em 0}.entry-summary>:first-child{margin-top:.75em}.entry-summary>:last-child{margin-bottom:.5em}.main-content .entry-more{font-size:.9em}.main-content .archive-list dt{margin-top:1.25em}.main-content .archive-list dd{margin:.125em 0 0}.pager{display:flex;justify-content:space-between;margin:2rem 0}.pager-end{color:var(--color-text-muted)}.katex-display{overflow-x:auto;overflow-y:hidden}.katex .vertical-separator,.katex .frac-line{border-color:var(--color-text)}@media(prefers-color-scheme:dark){.katex .vertical-separator,.katex .frac-line{border-color:#fff}}:root{--code-bg:#f3f4f6;--code-border:#d1d5db;--code-text:#1f2937;--code-muted:#566170;--code-hll:#fde68a;--code-focus:#15803d;--syn-comment:#5b6573;--syn-keyword:#9a3412;--syn-string:#166534;--syn-number:#1d4ed8;--syn-function:#6d28d9;--syn-type:#0e7490;--syn-constant:#a21caf;--syn-variable:#9a3412;--syn-attr:#92400e;--syn-output:#4b5563;--syn-del:#991b1b;--syn-del-bg:rgba(220, 38, 38, 0.12);--syn-ins:#166534;--syn-ins-bg:rgba(22, 163, 74, 0.14)}@media(prefers-color-scheme:dark){:root{--code-bg:#27272a;--code-border:#3f3f46;--code-text:#d4d4d8;--code-muted:#a1a1aa;--code-hll:#52525b;--code-focus:#4ade80;--syn-comment:#a1a1aa;--syn-keyword:#f0a05a;--syn-string:#a8c968;--syn-number:#7fb0dc;--syn-function:#ffd27a;--syn-type:#6fd0d9;--syn-constant:#c3a0e3;--syn-variable:#f0a05a;--syn-attr:#ffd27a;--syn-output:#b4b4bd;--syn-del:#fca5a5;--syn-del-bg:rgba(248, 113, 113, 0.16);--syn-ins:#86efac;--syn-ins-bg:rgba(74, 222, 128, 0.14)}}.highlight{position:relative;margin:1.5em 0;background-color:var(--code-bg);color:var(--code-text);border:1px solid var(--code-border);border-radius:.5rem;overflow:hidden}.main-content pre{font-family:var(--font-mono);line-height:1.5;overflow-x:auto;padding:.75em 1em;background-color:var(--code-bg);color:var(--code-text);border-radius:.5rem}.highlight pre,.highlight pre code{font-family:var(--font-mono);font-size:.875rem;line-height:1.5}.highlight pre{margin:0;padding:.75em 1em;overflow-x:auto;background:0 0;border-radius:0;tab-size:4}.highlight pre:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.main-content .lntable{display:block;width:auto;margin:0;border:none;font-size:inherit}.lntable tr{display:grid;grid-template-columns:auto minmax(0,1fr)}.lntable td{padding:0;border:none;min-width:0}.lntable .lntd:first-child{-webkit-user-select:none;user-select:none;color:var(--code-muted);text-align:right}.lntable .lntd:first-child pre{padding-right:.75em;overflow:visible}.lntable .lntd:last-child pre{padding-left:.25em}.highlight .gp,.highlight .wrap-marker{color:var(--code-muted);-webkit-user-select:none;user-select:none}.highlight .go{color:var(--syn-output)}.highlight .hl{display:block;background-color:var(--code-hll)}.highlight .c,.highlight .ch,.highlight .cm,.highlight .c1,.highlight .cs,.highlight .cpf{color:var(--syn-comment);font-style:italic}.highlight .k,.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .ow,.highlight .cp{color:var(--syn-keyword)}.highlight .kt,.highlight .nc,.highlight .ne{color:var(--syn-type)}.highlight .s,.highlight .sa,.highlight .sb,.highlight .sc,.highlight .dl,.highlight .sd,.highlight .s2,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx,.highlight .sr,.highlight .s1,.highlight .ss{color:var(--syn-string)}.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo,.highlight .il{color:var(--syn-number)}.highlight .nf,.highlight .fm,.highlight .nb{color:var(--syn-function);font-weight:600}.highlight .no{color:var(--syn-constant);font-style:italic}.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi,.highlight .vm,.highlight .nt{color:var(--syn-variable)}.highlight .na,.highlight .nd{color:var(--syn-attr)}.highlight .gd{color:var(--syn-del);background-color:var(--syn-del-bg)}.highlight .gi{color:var(--syn-ins);background-color:var(--syn-ins-bg)}.highlight .gt,.highlight .gr{color:var(--syn-del)}.highlight .gh,.highlight .gu,.highlight .gs{font-weight:600}.highlight .ge{font-style:italic}.highlight .err{color:inherit;background:0 0;border:none}.copy-button{position:absolute;top:.375rem;right:.375rem;z-index:1;display:grid;place-items:center;width:2rem;height:2rem;padding:0;color:var(--code-muted);background-color:var(--code-bg);border:1px solid var(--code-border);border-radius:.375rem;cursor:pointer;opacity:0;transition:opacity .15s ease-in-out}.highlight:hover .copy-button,.highlight:focus-within .copy-button,.copy-button:focus-visible{opacity:1}@media(hover:none){.copy-button{opacity:1}}@media(prefers-reduced-motion:reduce){.copy-button{transition:none}}.copy-button:hover{color:var(--code-text)}.copy-button:focus-visible{outline:2px solid var(--code-focus);outline-offset:1px}.copy-button[data-state=copied]{color:var(--syn-ins)}.copy-button[data-state=failed]{color:var(--syn-del)}.copy-button svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media print{.copy-button{display:none}.highlight{break-inside:avoid}}