:root{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-body:Charter, Georgia, serif;--measure:43rem;--gutter:clamp(1.25rem, 4vw, 2rem);--ease:cubic-bezier(.22, .61, .36, 1);--ground:#fff;--paper:#f2f1ee;--ink:#111;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.theme-dark{--ground:#0b0b0b;--paper:#0e0e10;--ink:#ececec;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--ink-2:color-mix(in srgb, var(--ink) 80%, transparent);--ink-3:color-mix(in srgb, var(--ink) 60%, transparent);--ink-4:color-mix(in srgb, var(--ink) 45%, transparent);--rule:color-mix(in srgb, var(--ink) 12%, transparent);--rule-2:color-mix(in srgb, var(--ink) 22%, transparent);--tint:color-mix(in srgb, var(--ink) 5%, transparent)}@font-face{font-family:Charter;font-style:normal;font-weight:400;font-display:swap;src:local(Charter Roman),local(Charter-Roman),url(/fonts/charter/charter-regular.woff2)format("woff2")}@font-face{font-family:Charter;font-style:italic;font-weight:400;font-display:swap;src:local(Charter Italic),local(Charter-Italic),url(/fonts/charter/charter-italic.woff2)format("woff2")}@font-face{font-family:Charter;font-style:normal;font-weight:700;font-display:swap;src:local(Charter Bold),local(Charter-Bold),url(/fonts/charter/charter-bold.woff2)format("woff2")}@font-face{font-family:Charter;font-style:italic;font-weight:700;font-display:swap;src:local(Charter Bold Italic),local(Charter-BoldItalic),url(/fonts/charter/charter-bold-italic.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--ground)}body{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--ground);color:var(--ink-2);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:1rem;line-height:1.7}h1,h2,h3,h4,p,dl,dd,ul,ol,figure,blockquote{margin:0}a{color:inherit}button{font:inherit;color:inherit}img{max-width:100%;height:auto}::selection{background:var(--rule-2)}:focus-visible{outline:2px solid var(--ink-3);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.page{flex-direction:column;min-height:100dvh;display:flex}.shell{width:100%;max-width:calc(var(--measure) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);font-size:.7rem;font-weight:500;line-height:1.4}.rail{justify-content:space-between;align-items:center;gap:1.25rem;padding-block:1.5rem;display:flex}.wordmark{white-space:nowrap;color:var(--ink);align-items:baseline;gap:.6em;font-size:1.0625rem;font-weight:600;line-height:1;display:flex}.wordmark a{text-decoration:none}.rail__nav{align-items:center;gap:1.5rem;display:flex}.rail__link{color:var(--ink-3);transition:color .15s var(--ease);text-decoration:none}.rail__link:hover{color:var(--ink)}.mode-toggle{cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:0;display:inline-flex}.mode-toggle__track{border:1px solid var(--ink-3);width:30px;height:12px;display:block;position:relative}.mode-toggle__knob{background:var(--ink);width:8px;height:8px;transition:transform .25s var(--ease);position:absolute;top:1px;left:1px}.mode-toggle[data-pref=system] .mode-toggle__knob{transform:translate(9px)}.mode-toggle[data-pref=dark] .mode-toggle__knob{transform:translate(18px)}.mode-toggle__label{text-align:left;min-width:2.6em}.mode-toggle:hover .mode-toggle__label{color:var(--ink)}.home{flex-direction:column;flex:1;gap:2.5rem;padding-top:1rem;padding-bottom:5rem;display:flex}.plate{border:1px solid var(--rule);background:var(--paper);overflow:hidden}.plate__img{--tone:invert(0) hue-rotate(0deg);opacity:0;width:100%;filter:var(--tone) blur(8px);transition:opacity .7s var(--ease), filter .7s var(--ease);display:block}.theme-dark .plate__img{--tone:invert(1) hue-rotate(180deg)}.plate__img--dry{opacity:1;filter:var(--tone) blur(0)}.prose .stem-rule{width:3rem;color:color-mix(in srgb, var(--ink) 45%, var(--ground));margin:2rem auto;display:block}.d-post{flex:1;padding-bottom:5rem}.d-title{padding-block:2rem 1.5rem}.d-title h1{color:var(--ink);text-wrap:balance;margin-bottom:.5rem;font-size:40px;font-weight:700;line-height:1.1}.d-title p{font-family:var(--font-body);font-size:1.2rem;font-weight:300;line-height:1.55}.d-byline{border-top:1px solid var(--rule);padding-block:1.5rem;font-size:.8rem;line-height:1.8}.d-byline__grid{grid-template-columns:1fr 1fr;display:grid}.d-article{border-top:1px solid var(--rule);padding-top:2rem}@media (min-width:768px){.d-title{padding-top:4rem}.d-title h1{font-size:50px}.d-byline__grid{grid-template-columns:repeat(4,1fr)}}.d-index{margin-top:-1.5rem;padding:0;list-style:none}.d-index>li{border-bottom:1px solid var(--rule)}.d-index__entry{grid-template-columns:8.5rem 1fr;gap:2rem;padding-block:1.5rem;text-decoration:none;display:grid}.d-index__date{color:var(--ink-4);font-size:.8rem;line-height:1.9}.d-index__text{flex-direction:column;gap:.35rem;display:flex}.d-index__title{color:var(--ink);font-size:1.25rem;font-weight:600;line-height:1.3}.d-index__summary{font-family:var(--font-body);color:var(--ink-3);font-size:.9375rem;line-height:1.55}@media (hover:hover){.d-index__entry:hover .d-index__title{text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--ink-4);text-decoration-color:var(--ink-4)}}.d-index__empty{color:var(--ink-4)}@media (max-width:640px){.d-index__entry{grid-template-columns:1fr;gap:.25rem}}.prose{font-family:var(--font-body)}.prose>*+*{margin-top:1em}.prose h2,.prose h3,.prose h4{font-family:var(--font-sans);color:var(--ink);text-wrap:balance}.prose h2{border-bottom:1px solid var(--rule);margin:2rem 0 1.5rem;padding-bottom:1rem;font-size:24px;font-weight:600;line-height:1.25}.prose h3{margin:2em 0 1em;font-size:18px;font-weight:700;line-height:1.4}.prose h4{text-transform:uppercase;margin:2em 0 .75em;font-size:14px;font-weight:600;line-height:1.4}@media (min-width:1024px){.d-article,.home .prose{font-size:1.06rem}.prose h2{font-size:36px}.prose h3{font-size:20px}}.prose a{border-bottom:1px solid var(--ink-4);transition:border-color .12s var(--ease);text-decoration:none}.prose a:hover{border-bottom-color:var(--ink-2)}.prose strong{color:var(--ink);font-weight:600}.prose ul,.prose ol{padding-left:24px}.prose li::marker{color:var(--ink-4)}.prose li+li,.prose li>ul,.prose li>ol{margin-top:.5em}.prose blockquote{border-left:2px solid var(--rule-2);color:var(--ink-3);margin-block:1.5em;padding-left:2em}.prose blockquote>*+*{margin-top:.75em}.prose blockquote h4{margin-top:0}.prose p:has(>img){color:var(--ink-3);margin-block:1.5em 2.5em;font-size:13px;line-height:1.5}.prose img{width:100%;margin-bottom:.75em;display:block}.theme-dark .prose img[data-invert]{filter:invert()hue-rotate(180deg)}.prose hr{border:0;border-bottom:1px solid var(--rule);margin-block:3.5rem}.prose code{font-family:var(--font-mono);background:var(--tint);border-radius:2px;padding:.1em .3em;font-size:.85em}.prose pre{font-family:var(--font-mono);background:var(--tint);color:var(--ink);border-radius:2px;padding:1em 1.25em;font-size:14px;line-height:1.6;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose table{border-collapse:collapse;font-variant-numeric:lining-nums tabular-nums;max-width:100%;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--tint);padding:4px 8px}.prose th{color:var(--ink);border-bottom-color:var(--rule-2);font-weight:600}.prose tr:last-of-type td{border-bottom-color:var(--rule-2)}.katex{font-size:1.05em}.katex-display{margin-block:1.5em;padding-block:.25rem;overflow:auto hidden}.prose [data-footnotes]{color:var(--ink-4);margin-top:60px;padding-top:2.5rem;font-size:.8em;line-height:1.7;position:relative}.prose [data-footnotes]:before{content:"";background:var(--rule);height:1px;box-shadow:0 0 0 100vmax var(--rule);clip-path:inset(0 -100vmax);position:absolute;top:0;left:0;right:0}.prose [data-footnotes] h2{color:var(--ink-3);border:0;margin:0 0 1em;padding:0;font-size:15px;font-weight:500;line-height:1.4}.prose [data-footnotes] ol{padding-left:1.5em}.prose [data-footnotes] li+li{margin-top:1em}.prose [data-footnotes] a{color:var(--ink-3)}.prose [data-footnote-ref]{vertical-align:baseline;color:var(--ink-3);border-bottom:0;padding:0 .1em;font-size:.75em;line-height:1;position:relative;top:-.5em}.prose [data-footnote-ref]:hover{color:var(--ink)}.prose [data-footnotes] [data-footnote-backref]{color:var(--ink-4);border-bottom:0;margin-left:.5em}.margin-notes{width:0;height:0;position:absolute;top:0;left:0}.margin-note{font-family:var(--font-body);color:var(--ink-3);transition:color .25s var(--ease);font-size:12px;line-height:1.6;position:absolute}.margin-note--active{color:var(--ink)}.margin-note__number{font-weight:600}.margin-note p{display:inline}.margin-note a{border-bottom:1px solid var(--rule-2);text-decoration:none}@media (max-width:640px){.rail{padding-block:1rem}.wordmark__crumb,.mode-toggle__label{display:none}}
