@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,ul,ol,dl,dd,figure,pre,blockquote{margin:0}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit}}@layer base{html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);letter-spacing:var(--tracking-body);font-kerning:normal;background:var(--bg-primary);color:var(--text-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{line-height:var(--leading-heading);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);text-wrap:balance}p,li,dd{text-wrap:pretty}h1,h2,h3,h4,strong,b,dd{color:var(--text-primary)}a{color:var(--link);text-decoration-thickness:var(--line-width);-webkit-text-decoration-color:color-mix(in srgb, var(--link) var(--link-underline-strength), transparent);text-decoration-color:color-mix(in srgb, var(--link) var(--link-underline-strength), transparent);text-underline-offset:.2em;transition:var(--transition-colors)}a:hover{color:var(--link-hover);-webkit-text-decoration-color:var(--link-hover);text-decoration-color:var(--link-hover)}:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset)}::selection{background:var(--accent-wash)}code,pre{font-family:var(--font-mono);font-variant-ligatures:none;font-size:.875em}body{background:var(--bg-canvas)}[id]{scroll-margin-top:var(--space-4)}@media (width>=40rem){[id]{scroll-margin-top:calc(var(--nav-height) + var(--space-4))}}}@layer theme{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-canvas:#efefec;--bg-primary:#fbfbfa;--bg-surface:#fff;--bg-secondary:#f3f3f1;--text-primary:#1a1a19;--text-body:#474746;--text-secondary:#6b6b6a;--text-faint:#a6a6a4;--line-width:1px;--border-soft:#ebebea;--border:#e0e0df;--border-strong:#d3d3d2;--accent-primary:#b8321a;--accent-hover:#9c2914;--accent-wash:#f4e7e4;--on-accent:#fbfbfa;--link:var(--text-primary);--link-underline-strength:35%;--link-hover:var(--text-primary);--marker:var(--text-primary);--hover:#1a1a190f;--focus-ring:var(--text-primary);--focus-width:2px;--focus-offset:2px;--danger:#b8321a;--caution:#8a5a00;--code-fg:#1a1a19;--code-comment:#6b6b6a;--code-punct:#6b6b6a;--code-keyword:#b8321a;--code-type:#1a1a19;--code-annotation:#6b6b6a;--code-string:#2f6b4f;--code-number:#2f6b4f;--code-fn:#1a1a19;--code-highlight:#f0efe9;--code-add:#e2eee6;--code-remove:#f8e3de;--radius-xs:4px;--radius-sm:6px;--radius:9px;--radius-lg:12px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--duration-fast:.15s;--duration-slow:.4s;--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--transition-colors:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), text-decoration-color var(--duration-fast) var(--ease-standard);--font-sans:"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-base:1.0625rem;--text-small:.9375rem;--text-xs:.84375rem;--text-reading:1.0625rem;--text-lede:clamp(1.0625rem, 1rem + .35vw, 1.15625rem);--text-display:clamp(2rem, 1.45rem + 2.2vw, 2.75rem);--text-h2:1.875rem;--text-h3:1.5rem;--text-h4:1.1875rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-body:1.68;--leading-lede:1.55;--leading-snug:1.4;--leading-heading:1.3;--leading-display:1.06;--tracking-body:.005em;--tracking-small:.01em;--tracking-snug:-.01em;--tracking-heading:-.012em;--tracking-display:-.018em;--prose-gap:1.25rem;--list-gap:.6875rem;--prose-h2-gap:2.75rem;--prose-h3-gap:2rem;--prose-heading-gap:.75rem;--frame-width:80rem;--nav-height:3.875rem;--header-opacity:88%;--header-blur:12px;--measure:68ch;--measure-wide:76ch;--prose-bleed:4rem;--rail-width:16rem;--col-time:9.5rem;--gutter:1rem;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--space-7:6rem}@media (width<=39.99rem){:root{--text-h2:1.5rem;--text-h3:1.25rem}}@media (width>=40rem){:root{--gutter:2rem}}@media (width>=64rem){:root{--gutter:2.75rem;--leading-display:1.04;--tracking-display:-.022em}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-canvas:#0c0c0b;--bg-primary:#121211;--bg-surface:#161615;--bg-secondary:#1d1d1c;--text-primary:#f2f1ee;--text-body:#b8b7b5;--text-secondary:#989896;--text-faint:#5a5958;--border-soft:#1f1f1e;--border:#282827;--border-strong:#363634;--accent-primary:#ff7a59;--accent-hover:#ff9677;--accent-wash:#33211b;--on-accent:#1a0e0a;--link:var(--accent-primary);--link-underline-strength:40%;--link-hover:var(--accent-hover);--marker:var(--accent-primary);--hover:#f2f1ee12;--focus-ring:var(--accent-primary);--danger:#ff7a59;--caution:#e0b04f;--code-fg:#f2f1ee;--code-comment:#989896;--code-punct:#989896;--code-keyword:#ff7a59;--code-type:#f2f1ee;--code-annotation:#989896;--code-string:#9cc7a6;--code-number:#9cc7a6;--code-fn:#f2f1ee;--code-highlight:#232321;--code-add:#1d2c22;--code-remove:#3a221b;--shadow-xs:0 1px 2px 0 #0006;--shadow-sm:0 1px 3px 0 #00000080, 0 1px 2px -1px #00000080;--shadow-md:0 4px 6px -1px #00000080, 0 2px 4px -2px #00000080}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-slow:0s}}}@layer components{.page{width:100%;max-width:var(--frame-width);background:var(--bg-primary);flex-direction:column;min-height:100vh;margin-inline:auto;display:flex}@media (width>=80rem){.page{border-inline:var(--line-width) solid var(--border-strong)}}.page__main{flex:1}.wrap{width:100%;padding-inline:var(--gutter);margin-inline:auto}.skip-link{z-index:100;left:var(--gutter);padding:var(--space-2) var(--space-3);background:var(--bg-primary);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius);position:absolute;top:-3rem}.skip-link:focus{top:var(--space-2)}.site-header{border-bottom:var(--line-width) solid var(--border-strong);background:color-mix(in srgb, var(--bg-primary) var(--header-opacity), transparent)}@media (width>=40rem){.site-header{z-index:50;-webkit-backdrop-filter:blur(var(--header-blur));position:sticky;top:0}}.site-nav{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);min-height:var(--nav-height);padding-block:var(--space-2);flex-wrap:wrap;display:flex}.site-nav__name{font-weight:var(--weight-bold);letter-spacing:var(--tracking-snug);color:var(--text-primary);text-decoration:none}.site-nav__links{align-items:center;gap:var(--space-2) var(--space-4);font-size:var(--text-small);letter-spacing:var(--tracking-small);flex-wrap:wrap;padding:0;list-style:none;display:flex}.site-nav__theme{order:2}.site-nav__links{flex-basis:100%;order:3}@media (width>=40rem){.site-nav__theme,.site-nav__links{order:0}.site-nav__links{flex-basis:auto;margin-left:auto}}.site-nav__links a{color:var(--text-secondary);text-decoration:none}.site-nav__links a:hover{color:var(--text-primary)}.site-nav__links a.active{color:var(--text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--accent-primary);text-decoration-color:var(--accent-primary);text-decoration-thickness:var(--line-width);text-underline-offset:.35em}.site-footer{justify-content:space-between;gap:var(--space-2) var(--space-4);padding-block:var(--space-5);margin-top:var(--space-6);color:var(--text-secondary);font-size:var(--text-small);flex-wrap:wrap;display:flex}.button,.icon-button{align-items:center;gap:var(--space-2);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;transition:var(--transition-colors);background:0 0;font-weight:500;text-decoration:none;display:inline-flex}.button{padding:.625rem var(--space-3);box-shadow:var(--shadow-xs)}.icon-button{padding:var(--space-2);border-color:var(--border)}.button:hover,.icon-button:hover{background:var(--hover);color:var(--text-primary)}.button--primary{border-color:var(--text-primary);background:var(--text-primary);color:var(--bg-primary)}.button--primary:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--on-accent)}.button__meta{opacity:.75;font-size:.875em;font-weight:400}.actions{gap:var(--space-2) var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.link-row{gap:var(--space-2) var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.link-row a{align-items:center;gap:.375rem;display:inline-flex}.hero{gap:var(--space-5);padding-block:var(--space-5) var(--space-6);display:grid}@media (width>=64rem){.hero{column-gap:var(--space-6);padding-block:var(--space-6) var(--space-7);grid-template-columns:minmax(0,1fr) 21rem;align-items:end}}.hero__name{font-size:var(--text-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-display);line-height:var(--leading-display)}.hero__focus{margin-top:var(--space-3);max-width:48ch;font-size:var(--text-lede);font-weight:var(--weight-medium);line-height:var(--leading-lede);color:var(--text-primary)}.hero__intro{max-width:56ch;margin-top:var(--space-3);color:var(--text-secondary)}.hero__actions{align-items:center;gap:var(--space-3) var(--space-5);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.hero__facts{border-top:var(--line-width) solid var(--border-strong);font-size:var(--text-small);display:grid}.hero__facts>div{gap:var(--space-3);border-bottom:var(--line-width) solid var(--border-soft);grid-template-columns:6.5rem minmax(0,1fr);padding-block:.75rem;display:grid}.hero__facts dt{color:var(--text-secondary)}.hero__facts dd{font-weight:500;line-height:1.45}.hero__aside{color:var(--text-secondary);font-weight:400}.section{gap:var(--space-4);padding-block:var(--space-5) var(--space-6);display:grid}.section,.site-footer{background:linear-gradient(var(--rule), var(--rule)) center top / 100% var(--line-width) no-repeat}.section{--rule:var(--border-strong)}.site-footer{--rule:var(--border)}.section__head{align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.section__title{font-size:var(--text-h3);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}.section__note{max-width:60ch;color:var(--text-secondary);font-size:var(--text-small);letter-spacing:var(--tracking-small);line-height:var(--leading-snug)}.section__body{min-width:0}.section__more{margin-top:var(--space-4)}@media (width>=40rem){.section__more{padding-left:calc(var(--col-time) + var(--space-4))}}.entry,.skills__row{gap:var(--space-1) var(--space-4);display:grid}@media (width>=40rem){.entry,.skills__row{grid-template-columns:var(--col-time) minmax(0, 1fr)}.entry>*{max-width:var(--measure-wide);grid-column:2}.entry>.entry__when{grid-area:1/1}.entry>.entry__facts{grid-area:2/1/span 4;align-self:start}.entry__facts span{display:block}}@media (width<=39.99rem){.entry__facts span+span:before{content:", "}}.entries{padding:0;list-style:none;display:grid}.entries>li+li{margin-top:var(--space-5);padding-top:var(--space-5);border-top:var(--line-width) solid var(--border)}.entry__title{font-size:var(--text-h4);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-snug)}.entry__when{white-space:nowrap;color:var(--text-secondary);font-size:var(--text-small);padding-top:.2em}.entry__when.is-current{color:var(--accent-primary);font-weight:600}.entry__role{font-weight:500}.entry__facts,.entry__stack{color:var(--text-secondary);font-size:var(--text-small)}.entry__points{gap:var(--list-gap);margin-block:var(--space-3);padding:0;list-style:none;display:grid}.entry__points li{padding-left:1.1rem;position:relative}.entry__points li:before{content:"";border-radius:var(--radius-full);background:var(--marker);opacity:.7;width:5px;height:5px;position:absolute;top:calc(.8em - 2.5px);left:0}.entry__more{margin-top:var(--space-2);font-size:var(--text-small)}.entry__more summary{width:fit-content;color:var(--link);cursor:pointer}.entry__more .entry__points{margin-block:var(--space-2) 0}.entries--compact>li+li{margin-top:var(--space-4);padding-top:var(--space-4)}.entry .link-row{margin-top:var(--space-2)}.skills{display:grid}.skills__row{padding-block:var(--space-4);border-bottom:var(--line-width) solid var(--border-soft)}.skills__row:first-child{padding-top:0}.skills__row:last-child{border-bottom:0}.skills__category{color:var(--text-secondary);font-size:var(--text-small);letter-spacing:var(--tracking-small);padding-top:.85rem;font-weight:500}.skills__grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(13.5rem,1fr));padding:0;list-style:none;display:grid}.skill{--brand-now:var(--brand);--brand-2-now:var(--brand-2);position:relative}:root[data-theme=dark] .skill{--brand-now:var(--brand-dark);--brand-2-now:var(--brand-2-dark)}.skill.is-open{z-index:20}.skill__tile{border:var(--line-width) solid var(--border);border-radius:var(--radius);background:var(--bg-surface);text-align:left;cursor:pointer;width:100%;transition:var(--transition-colors), box-shadow .16s ease;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.skill__tile:hover,.skill.is-open .skill__tile{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.skill__tile:hover{border-color:color-mix(in srgb, var(--brand-now) 45%, var(--border))}.skill.is-open .skill__tile{border-color:var(--brand-now)}.skill__icon{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--brand-now) 12%, var(--bg-surface));width:2.25rem;height:2.25rem;color:var(--brand-now);flex:none;place-items:center;display:grid}.skill__text{min-width:0;line-height:var(--leading-snug);display:grid}.skill__name{color:var(--text-primary);font-weight:var(--weight-semibold)}.skill__summary{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.skill.is-unproven .skill__summary{font-style:italic}.skill-proof{width:min(24rem, calc(100vw - 2 * var(--gutter)));padding:var(--space-3);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-md);font-size:var(--text-small);line-height:var(--leading-snug);position:absolute;top:calc(100% + .375rem);left:0}.skill-proof[hidden]{display:none}.skill-proof--end{left:auto;right:0}.skill-proof:before{content:"";position:absolute;inset:-.5rem 0 100%}.skill-proof__head{padding-bottom:var(--space-2);margin-bottom:var(--space-2);border-bottom:var(--line-width) solid var(--border-soft);color:var(--text-secondary)}.skill-proof__list{gap:.75rem;padding:0;list-style:none;display:grid}.skill-proof__item{grid-template-columns:4.25rem minmax(0,1fr);gap:.75rem;display:grid}.skill-proof__kind{color:var(--text-secondary);padding-top:.1em;font-size:.8125rem}.skill-proof__plain{color:var(--text-primary);font-weight:var(--weight-semibold)}.skill-proof__item a{font-weight:var(--weight-semibold);align-items:baseline;gap:.25rem;display:inline-flex}.skill-proof__item a svg{flex:none;align-self:center}.skill-proof__meta{color:var(--text-secondary);font-size:.8125rem}.skill-proof__note{color:var(--text-body);margin-top:.25rem}.skill-proof__empty{color:var(--text-secondary)}@media (width<=39.99rem){.skills__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skills__category{margin-bottom:var(--space-2);padding-top:0}.skill__summary{white-space:normal}}.essays{padding:0;list-style:none;display:grid}.essay{gap:var(--space-3) var(--space-5);padding-block:var(--space-4);border-bottom:var(--line-width) solid var(--border-soft);display:grid}.essay:first-child{padding-top:0}@media (width>=52rem){.essay{grid-template-columns:minmax(0,1fr) 17.5rem;align-items:start}}@media (width>=72rem){.essay{grid-template-columns:minmax(0,1fr) 21rem}}.essay__title{font-size:var(--text-h4);letter-spacing:var(--tracking-snug);text-wrap:pretty;max-width:58ch}.essay__title a{color:var(--text-primary);text-decoration:none}.essay__title a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--accent-primary);text-decoration-color:var(--accent-primary)}.essay__qa{margin-top:var(--space-3);padding-left:var(--space-3);border-left:2px solid var(--accent-primary);max-width:58ch}.essay__q{color:var(--text-primary);font-weight:var(--weight-medium);line-height:var(--leading-snug)}.essay__a{margin-top:var(--space-1)}.essay__title+.essay__a{margin-top:var(--space-2);max-width:58ch}.essay__meta{margin-top:var(--space-2);color:var(--text-secondary);font-size:var(--text-small)}.essay__spec{padding:var(--space-3);background:var(--bg-surface);border:var(--line-width) solid var(--border);border-radius:var(--radius-lg);margin:0}.essay__prompt{margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--text-xs);line-height:var(--leading-snug)}.spec{gap:var(--space-2);font-size:var(--text-xs);line-height:var(--leading-snug);display:grid}.spec__plot{width:100%;height:auto;overflow:visible}.spec__plot--drag{touch-action:none;cursor:ns-resize}.spec__axis,.spec__cell{fill:none;stroke:var(--border)}.spec__cell--probe{stroke:var(--accent-primary);fill:var(--accent-wash)}.spec__fit{stroke:var(--text-primary);stroke-width:1.75px}.spec__ghost{stroke:var(--text-faint);stroke-dasharray:4 3}.spec__residual{stroke:var(--accent-primary);stroke-dasharray:2 2}.spec__threshold{stroke:var(--accent-primary);stroke-width:1.25px}.spec__dot{fill:var(--text-primary)}.spec__dot--wrong{fill:var(--bg-surface);stroke:var(--accent-primary);stroke-width:1.5px}.spec__handle{fill:var(--bg-surface);stroke:var(--accent-primary);stroke-width:2px;cursor:ns-resize}.spec__handle:focus-visible{stroke-width:3px;fill:var(--accent-wash);outline:none}.spec__probe{stroke:var(--accent-primary);stroke-width:1.25px}.spec__arrowhead{fill:var(--accent-primary)}.spec__label{fill:var(--text-secondary);font-family:var(--font-mono);font-size:10.5px}.spec__readout{color:var(--text-secondary);min-height:2.8em}.spec__readout code,.spec__code{color:var(--text-primary);overflow-wrap:anywhere}.spec__code--bad{color:var(--accent-primary)}.spec__controls{align-items:center;gap:var(--space-2);display:flex}.spec__btn{justify-content:center;align-items:center;gap:var(--space-1);min-width:2rem;height:2rem;padding-inline:var(--space-2);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-colors);background:0 0;display:inline-flex}.spec__btn:hover{background:var(--hover)}.spec__btn--text{padding-inline:var(--space-3)}.spec__seg{border:var(--line-width) solid var(--border);border-radius:var(--radius-sm);margin:0;padding:2px;display:flex}.spec__seg-opt{min-height:1.85rem;padding-inline:var(--space-1);border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;text-align:center;transition:var(--transition-colors);flex:1;place-items:center;display:grid}.spec__seg-opt code{font-size:.68rem}.spec__seg-opt input{opacity:0;pointer-events:none;position:absolute}.spec__seg-opt:has(input:checked){background:var(--bg-secondary);color:var(--text-primary)}.spec__seg-opt:has(input:focus-visible){outline:var(--focus-width) solid var(--focus-ring)}.spec__fates{gap:var(--space-1);margin:var(--space-1) 0 0;display:grid}.spec__fates>div{justify-content:space-between;gap:var(--space-2);display:flex}.spec__fates dd{margin:0}.spec__fate{color:var(--code-string)}.spec__fate--lost{color:var(--accent-primary)}.spec__stages{counter-reset:stage;gap:2px;margin:0;padding:0;list-style:none;display:grid}.spec__stage{counter-increment:stage;gap:var(--space-2);padding:2px var(--space-1);border-radius:var(--radius-xs);color:var(--text-secondary);display:flex}.spec__stage:before{content:counter(stage);min-width:1ch}.spec__stage--done{color:var(--text-body)}.spec__stage--now{color:var(--text-primary);background:var(--bg-secondary)}.spec__files{gap:var(--space-2);display:grid}.spec__file{gap:2px var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.spec__file-name{color:var(--text-secondary);font-family:var(--font-mono);grid-column:1/-1;font-size:.7rem}.spec__input{min-width:0;height:2rem;padding-inline:var(--space-2);font:inherit;color:var(--text-primary);background:var(--bg-primary);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-sm)}.spec__hash{color:var(--text-secondary);font-size:.72rem}.spec__hash--same{color:var(--code-string)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.contact{gap:var(--space-4);justify-items:start;display:grid}.contact__email{font-size:clamp(1.375rem,1.1rem + 1.2vw,1.875rem);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);overflow-wrap:anywhere}.contact__email a{color:var(--text-primary);-webkit-text-decoration-color:var(--accent-primary);text-decoration-color:var(--accent-primary);text-underline-offset:.18em;text-decoration-thickness:2px}.contact__error{color:var(--danger)}.reading{max-width:calc(var(--measure) + 2 * var(--gutter));padding-block:var(--space-6);margin-inline:0}.listing__head{padding-block:var(--space-6) var(--space-5);border-bottom:var(--line-width) solid var(--border-strong)}.listing__head .reading__lede{max-width:60ch;font-size:var(--text-lede);line-height:var(--leading-lede)}.listing__body{padding-block:var(--space-5) var(--space-6)}.reading__title{font-size:var(--text-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-display);line-height:var(--leading-display)}.reading__title--post{font-size:var(--text-display)}.reading__lede,.reading__byline{margin-top:var(--space-3);color:var(--text-secondary)}.reading__back{margin-bottom:var(--space-5);font-size:var(--text-small)}.reading__back a,.reading__foot a{align-items:center;gap:var(--space-1);display:inline-flex}.reading__foot{gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:var(--line-width) solid var(--border-strong);display:grid}.reading .actions{margin-top:var(--space-4)}.categories{margin-top:var(--space-5)}.categories__list{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.categories__link{align-items:baseline;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:var(--line-width) solid var(--border-soft);border-radius:var(--radius-full);color:var(--text-primary);font-size:var(--text-small);text-decoration:none;display:inline-flex}.categories__link:hover{border-color:var(--border-strong)}.categories__link[aria-current=page]{border-color:var(--accent-primary);color:var(--accent-primary)}.categories__count{color:var(--text-secondary)}.category+.category{padding-top:var(--space-5);border-top:var(--line-width) solid var(--border-strong)}.category__head{margin-bottom:var(--space-5);max-width:60ch}.category__title{font-size:var(--text-h3);letter-spacing:var(--tracking-snug)}.category__title a{color:var(--text-primary)}.category__description{margin-top:var(--space-2);color:var(--text-secondary)}.articles{padding:0;list-style:none;display:grid}.articles__item{gap:var(--space-1) var(--space-4);padding-block:var(--space-5);border-bottom:var(--line-width) solid var(--border-soft);display:grid}.articles__item:first-child{padding-top:0}.articles__item:last-child{border-bottom:0}.articles__date{color:var(--text-secondary);font-size:var(--text-small);letter-spacing:var(--tracking-small);padding-top:.2em}.articles__main{min-width:0;max-width:var(--measure-wide)}@media (width>=40rem){.articles__item{grid-template-columns:var(--col-time) minmax(0, 1fr)}}.articles__title{font-size:var(--text-h4);letter-spacing:var(--tracking-snug)}.articles__title a{color:var(--text-primary)}.articles__meta{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--text-small)}.articles__summary{margin-top:var(--space-2)}.articles__tags{gap:var(--space-1) var(--space-3);margin-top:var(--space-2);font-size:var(--text-small);color:var(--text-secondary);flex-wrap:wrap;padding:0;list-style:none;display:flex}.prose{font-size:var(--text-reading);line-height:var(--leading-body);color:var(--text-body)}.prose>*+*{margin-top:var(--prose-gap)}.prose h2{margin-top:var(--prose-h2-gap);font-size:var(--text-h2)}.prose h3{margin-top:var(--prose-h3-gap);font-size:var(--text-h3)}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:var(--prose-heading-gap)}.prose ol{padding-left:1.5rem}.prose ol>li::marker{color:var(--text-secondary)}.prose ul{padding-left:0;list-style:none}.prose ul>li{padding-left:1.1rem;position:relative}.prose ul>li:before{content:"";border-radius:var(--radius-full);background:var(--marker);opacity:.7;width:5px;height:5px;position:absolute;top:calc(.84em - 2.5px);left:0}.prose li+li,.prose li>:is(ul,ol){margin-top:var(--list-gap)}.prose blockquote{padding-left:var(--space-3);border-left:2px solid var(--border-strong);color:var(--text-secondary)}.prose hr{border:0;border-top:var(--line-width) solid var(--border)}.prose{overflow-wrap:break-word}.prose :not(pre)>code{overflow-wrap:anywhere;border-radius:var(--radius-xs);background:var(--bg-secondary);color:var(--text-primary);padding:.1em .3em}.prose img{height:auto}.table-scroll{overflow-x:auto}.table-scroll :not(pre)>code{overflow-wrap:normal}.table-scroll table{border-collapse:collapse;font-size:var(--text-small)}.table-scroll th,.table-scroll td{padding:var(--space-2) var(--space-3);border-bottom:var(--line-width) solid var(--border);text-align:left;vertical-align:top}.table-scroll th{border-bottom-color:var(--border-strong)}.post__band{grid-template-columns:minmax(0,1fr);display:grid}.post__band--head{border-bottom:var(--line-width) solid var(--border-strong)}.post__col{min-width:0;padding-inline:max(var(--gutter), calc((100% - var(--measure)) / 2))}.post__band--head .post__col{padding-block:var(--space-5) var(--space-4)}.post__band--body .post__col{padding-block:var(--space-5) var(--space-6)}.post__rail--actions{padding:0 var(--gutter) var(--space-5)}aside.post__rail{display:none}@media (width>=68rem){.post__band{grid-template-columns:minmax(0, 1fr) var(--rail-width)}.post__col{padding-left:max(var(--gutter), calc((100% - var(--measure) - var(--prose-bleed)) / 2));padding-right:max(calc(var(--gutter) + var(--prose-bleed)), calc((100% - var(--measure) + var(--prose-bleed)) / 2))}.post__band--head .post__col{padding-block:var(--space-6) var(--space-5)}.post__band--body .post__col{padding-block:var(--space-6) var(--space-7)}.post__rail{padding:var(--space-6) var(--space-4) var(--space-5);border-left:var(--line-width) solid var(--border-strong)}aside.post__rail{display:block}.post__rail--actions{align-items:flex-end;display:flex}.post__rail--actions .post-actions{flex-direction:column;align-items:stretch;width:100%;margin-top:0}.post__rail--actions .post-actions__item{justify-content:flex-start}}.post__title{font-size:var(--text-display);font-weight:var(--weight-bold);line-height:var(--leading-display);letter-spacing:var(--tracking-display)}.post__summary{margin-top:var(--space-3);color:var(--text-secondary);font-size:var(--text-lede);line-height:var(--leading-lede)}.post__byline{gap:var(--space-1) var(--space-3);margin-top:var(--space-4);font-size:var(--text-small);color:var(--text-secondary);flex-wrap:wrap;display:flex}.post__byline>:first-child{color:var(--text-primary);font-weight:600}.post__byline>*{white-space:nowrap}@media (width<=39.99rem){.post__byline>:first-child{flex-basis:100%}.post__byline>span:first-child:after{display:none}}.post__byline>:not(:last-child):after{content:"";width:3px;height:3px;margin-left:var(--space-3);vertical-align:middle;background:currentColor;border-radius:50%;display:inline-block}.post__loading{min-height:60vh;color:var(--text-secondary)}.post__foot{gap:var(--space-4);margin-top:var(--space-6);display:grid}.post-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.post-actions__item{align-items:center;gap:var(--space-2);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-xs);color:var(--text-primary);font-size:var(--text-small);cursor:pointer;transition:var(--transition-colors);background:0 0;padding:.375rem .75rem;font-weight:500;text-decoration:none;display:inline-flex}.post-actions__item:hover{background:var(--hover);color:var(--text-primary)}.post-actions__item:disabled{color:var(--text-secondary);cursor:progress}.post-actions__next{border-color:var(--text-primary)}.toc__title{font-size:var(--text-small);font-weight:600}.toc__list{margin-top:var(--space-2);border-left:var(--line-width) solid var(--border);font-size:var(--text-xs);line-height:var(--leading-snug);letter-spacing:var(--tracking-small);padding:0;list-style:none}.toc__link{padding:.3rem 0 .3rem var(--space-3);color:var(--text-secondary);overflow-wrap:anywhere;transition:var(--transition-colors);border-left:2px solid #0000;margin-left:-1px;text-decoration:none;display:block}.toc__item--h3 .toc__link{padding-left:var(--space-5)}.toc__link:hover{color:var(--text-primary)}.toc__link[aria-current]{border-left-color:var(--accent-primary);color:var(--text-primary);font-weight:500}.toc--wide{display:none}.toc--narrow{margin-bottom:var(--space-5);padding:var(--space-2) var(--space-3);border:var(--line-width) solid var(--border);border-radius:var(--radius)}.toc--narrow summary{cursor:pointer}.toc--narrow .toc__list{margin-block:var(--space-2)}@media (width>=68rem){.toc--wide{top:calc(var(--nav-height) + var(--space-5));max-height:calc(100vh - var(--nav-height) - 2 * var(--space-5));overscroll-behavior:contain;display:block;position:sticky;overflow-y:auto}.toc--narrow{display:none}}.prose :is(h2,h3,h4){scroll-margin-top:calc(var(--nav-height) + var(--space-4))}.heading-link{color:inherit;text-decoration:none}.heading-link:hover{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-decoration-thickness:2px}.prose h4{margin-top:var(--prose-h3-gap);font-size:var(--text-h4)}.code{border:var(--line-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:1rem;overflow:hidden}.code__bar{align-items:center;gap:var(--space-3);min-height:2.25rem;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3);border-bottom:var(--line-width) solid var(--border);color:var(--text-secondary);font-size:.8125rem;display:flex}.code__title{font-family:var(--font-mono);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.code__lang{font-family:var(--font-mono)}.code__lang--aside{margin-left:auto}.code__copy{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;transition:var(--transition-colors);background:0 0;border:0;margin-left:auto;display:inline-flex}.code__lang--aside+.code__copy{margin-left:0}.code__copy:hover{color:var(--text-primary)}.code__pre{padding-block:var(--space-3);line-height:1.6;overflow-x:auto}.code__pre>code{min-width:max-content;display:grid}.code__pre [data-line]{padding-inline:var(--space-3);border-left:2px solid #0000}.code__pre [data-highlighted-line],.code__pre .highlighted{border-left-color:var(--accent-primary);background:var(--code-highlight)}.code__pre [data-highlighted-chars]{border-radius:var(--radius-xs);background:var(--code-highlight);padding:.1em .2em}.code__pre.has-diff [data-line]:before{content:" ";width:2ch;color:var(--code-comment);display:inline-block}.code__pre .diff.add{border-left-color:var(--code-string);background:var(--code-add)}.code__pre .diff.add:before{content:"+";color:var(--code-string)}.code__pre .diff.remove{border-left-color:var(--code-keyword);background:var(--code-remove);opacity:.75}.code__pre .diff.remove:before{content:"-";color:var(--code-keyword)}.code__pre code[data-line-numbers]{counter-reset:line}.code__pre code[data-line-numbers]>[data-line]:before{counter-increment:line;content:counter(line);text-align:right;width:2ch;color:var(--code-comment);margin-right:2ch;display:inline-block}.code__pre code[data-line-numbers-max-digits="3"]>[data-line]:before{width:3ch}@media (width>=68rem){.prose>:is(.code-figure,.figure,.table-scroll){margin-right:calc(-1 * var(--prose-bleed))}}.prose>.figure,.prose>.code-figure+*,.prose>.figure+*{margin-top:1.6em}.figure__zoom,.figure__frame{border:var(--line-width) solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);width:100%;padding:0;display:block;position:relative;overflow:hidden}.figure__zoom{cursor:zoom-in}.figure__zoom img,.figure__frame img{width:100%;height:auto;display:block}.figure__zoom-hint{top:var(--space-2);right:var(--space-2);padding:var(--space-1);border:var(--line-width) solid var(--border);border-radius:var(--radius-xs);background:var(--bg-surface);box-shadow:var(--shadow-sm);color:var(--text-secondary);opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);display:inline-flex;position:absolute}.figure__zoom:hover .figure__zoom-hint,.figure__zoom:focus-visible .figure__zoom-hint{opacity:1}.figure__caption,.code-figure>figcaption{margin-top:var(--space-2);font-size:var(--text-small);color:var(--text-secondary);line-height:1.5}.lightbox{max-width:min(96vw,110rem);max-height:96vh;padding:var(--space-5) var(--space-4) var(--space-4);border:var(--line-width) solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-md);color:var(--text-primary);margin:auto}.lightbox::backdrop{background:#000000b8}.lightbox__close{top:var(--space-2);right:var(--space-2);position:absolute}.lightbox__content{max-height:calc(96vh - 8rem);overflow:auto}.lightbox__image{object-fit:contain;max-width:100%;max-height:calc(96vh - 8rem);margin-inline:auto;display:block}.lightbox__caption{max-width:var(--measure);margin:var(--space-3) auto 0;font-size:var(--text-small);color:var(--text-secondary)}.diagram{padding:var(--space-4) var(--space-3);border:var(--line-width) solid var(--border);border-radius:var(--radius-lg);overflow-x:auto}.diagram svg{margin-inline:auto;display:block}.figure__zoom .diagram{border:0}.diagram--full{border:0;min-width:min(90vw,72rem)}.diagram--full svg{width:100%;height:auto;max-width:none!important}.diagram .node.key :is(rect,polygon,circle,path){stroke:var(--accent-primary)!important;stroke-width:2px!important}.diagram--loading{background:var(--bg-secondary);min-height:12rem}.diagram--error{padding:var(--space-3)}.callout{--callout:var(--text-secondary);padding:var(--space-3) var(--space-4);border-left:3px solid var(--callout);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:color-mix(in srgb, var(--callout) 8%, var(--bg-primary))}.callout--tip{--callout:var(--code-string)}.callout--important{--callout:var(--accent-primary)}.callout--warning{--callout:var(--caution)}.callout__label{align-items:center;gap:var(--space-2);color:var(--callout);font-size:var(--text-small);font-weight:600;display:flex}.callout__body{margin-top:var(--space-2)}.callout__body>*+*{margin-top:.8em}.prose>.hsp{margin-top:1.6em}@media (width>=68rem){.prose>.hsp{margin-right:calc(-1 * var(--prose-bleed))}}.hsp__modes,.hsp__script,.hsp__free,.hsp__body{border:var(--line-width) solid var(--border);background:var(--bg-surface)}.hsp__modes{gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-wrap:wrap;display:flex}.hsp__mode{padding:var(--space-1) var(--space-3);border:var(--line-width) solid transparent;border-radius:var(--radius);color:var(--text-secondary);font-size:var(--text-small);cursor:pointer;transition:var(--transition-colors);background:0 0}.hsp__mode:hover{background:var(--hover);color:var(--text-primary)}.hsp__mode[aria-pressed=true]{border-color:var(--border-strong);background:var(--bg-primary);color:var(--text-primary);font-weight:var(--weight-semibold)}.hsp__script,.hsp__free{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:0;display:grid}.hsp .hsp__ops{font-size:var(--text-small);gap:2px;padding:0;list-style:none;display:grid}.hsp__op{padding:2px var(--space-2);border-radius:0 var(--radius-xs) var(--radius-xs) 0;border-left:2px solid #0000}.hsp .hsp__op code{background:0 0;padding:0}.hsp__op[data-state=todo]{color:var(--text-secondary)}.hsp__op[data-state=done]{color:var(--text-body)}.hsp__op[data-state=current]{border-left-color:var(--accent-primary);background:var(--accent-wash);color:var(--text-primary)}.hsp__controls,.hsp__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.hsp__actions .button{padding:var(--space-1) var(--space-2);font-size:var(--text-small)}.hsp__actions .button code{background:0 0;padding:0}.hsp .button:disabled{opacity:.45;cursor:not-allowed}.hsp__fields{gap:var(--space-3);flex-wrap:wrap;display:flex}.hsp__fields label{align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--text-small);display:flex}.hsp__fields :is(select,input){min-width:5rem;padding:var(--space-1) var(--space-2);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font:inherit;font-family:var(--font-mono)}.hsp__hint{color:var(--text-secondary);font-size:var(--text-small)}.hsp__body{gap:var(--space-4);padding:var(--space-4);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:0;display:grid}@media (width>=52rem){.hsp__body{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}}.hsp__label{margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--text-small);font-weight:var(--weight-semibold)}.hsp .hsp__table{gap:var(--space-1);grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid}.hsp__bucket{align-content:start;gap:var(--space-1);min-height:4.25rem;padding:var(--space-1);border:var(--line-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);transition:var(--transition-colors);display:grid}.hsp__bucket[data-looked]{border-color:var(--text-primary);background:var(--bg-secondary)}.hsp__index{color:var(--text-secondary);font-size:var(--text-xs)}.hsp__node{padding:2px var(--space-1);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-xs);background:var(--bg-surface);line-height:1.3;display:grid}.hsp__node[data-stale]{border-color:var(--accent-primary);background:var(--accent-wash)}.hsp__node-ref{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.hsp__node-data{color:var(--text-secondary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.6875rem}.hsp__legend{margin-top:var(--space-2);color:var(--text-secondary);font-size:var(--text-xs);line-height:1.6}.hsp__swatch{width:.75rem;height:.75rem;margin-right:var(--space-1);vertical-align:-1px;border:var(--line-width) solid var(--border-strong);border-radius:2px;display:inline-block}.hsp__swatch[data-stale]{border-color:var(--accent-primary);background:var(--accent-wash)}.hsp__swatch--looked{margin-left:var(--space-2);border-color:var(--text-primary);background:var(--bg-secondary)}.hsp__side{align-content:start;gap:var(--space-4);display:grid}.hsp__vars table{border-collapse:collapse;width:100%;font-size:var(--text-small)}.hsp__vars :is(th,td){padding:var(--space-1) var(--space-2) var(--space-1) 0;border-bottom:var(--line-width) solid var(--border-soft);text-align:left}.hsp__vars th{color:var(--text-secondary);font-weight:var(--weight-medium)}.hsp__vars td[data-lost]{color:var(--accent-primary);font-weight:var(--weight-semibold)}.hsp__trace-code{align-items:center;gap:var(--space-2);font-size:var(--text-small);flex-wrap:wrap;display:flex}.hsp__result{padding:0 var(--space-2);border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);background:var(--bg-secondary);color:var(--text-primary)}.hsp__result[data-tone=ok]{background:var(--code-add);color:var(--code-string)}.hsp__result[data-tone=bad]{background:var(--accent-wash);color:var(--accent-primary)}.hsp__steps{gap:var(--space-1);margin-top:var(--space-2);color:var(--text-body);font-size:var(--text-small);padding-left:1.25rem;line-height:1.45;display:grid}.hsp__empty{color:var(--text-secondary);font-size:var(--text-small)}.hsp li+li{margin-top:0}.hsp>.figure__caption{margin-top:var(--space-2)}.prose>.txs{margin-top:1.6em}@media (width>=68rem){.prose>.txs{margin-right:calc(-1 * var(--prose-bleed))}}.txs__presets,.txs__config,.txs__body{border:var(--line-width) solid var(--border);background:var(--bg-surface)}.txs__presets{gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-wrap:wrap;display:flex}.txs__preset,.txs__opt{padding:var(--space-1) var(--space-3);border:var(--line-width) solid transparent;border-radius:var(--radius);color:var(--text-secondary);font-size:var(--text-small);cursor:pointer;transition:var(--transition-colors);background:0 0}.txs__preset:hover,.txs__opt:hover:not(:disabled){background:var(--hover);color:var(--text-primary)}.txs__preset[aria-pressed=true],.txs__opt[aria-pressed=true]{border-color:var(--border-strong);background:var(--bg-primary);color:var(--text-primary);font-weight:var(--weight-semibold)}.txs__opt{padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs)}.txs__opt code{font-size:inherit;background:0 0;padding:0}.txs__opt:disabled{cursor:not-allowed}.txs__config{gap:var(--space-4);padding:var(--space-3) var(--space-4);border-top:0;display:grid}@media (width>=52rem){.txs__config{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.txs__fields{align-content:start;gap:var(--space-3);display:grid}.txs__field{gap:var(--space-1);display:grid}.txs__field[data-disabled]{opacity:.45}.txs__field-label,.txs__label{color:var(--text-secondary);font-size:var(--text-small);font-weight:var(--weight-semibold)}.txs__seg{border:var(--line-width) solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);flex-wrap:wrap;gap:2px;width:fit-content;max-width:100%;padding:2px;display:flex}.prose .txs__code{padding:var(--space-3);border:var(--line-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);font-size:var(--text-xs);margin:0;line-height:1.55;overflow-x:auto}.prose .txs__code code{white-space:pre;background:0 0;padding:0}.txs__body{gap:var(--space-4);padding:var(--space-4);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:0;display:grid}@media (width>=52rem){.txs__body{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}.txs__timeline-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.txs__controls{gap:var(--space-2);flex-wrap:wrap;display:flex}.txs__controls .button{padding:var(--space-1) var(--space-2);font-size:var(--text-small)}.txs .button:disabled{opacity:.45;cursor:not-allowed}.txs .txs__steps{gap:2px;padding:0;list-style:none;display:grid}.txs__step{gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:0 var(--radius-xs) var(--radius-xs) 0;font-size:var(--text-small);border-left:2px solid #0000;grid-template-columns:6.5rem minmax(0,1fr);line-height:1.45;display:grid}.txs__step[data-tone=bad] .txs__text{color:var(--accent-primary)}.txs__step[data-tone=ok] .txs__text{color:var(--code-string)}.txs__step[data-current]{border-left-color:var(--accent-primary);background:var(--accent-wash)}.txs__actor{color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold);padding-top:1px}.txs__text{color:var(--text-body)}.txs__side{align-content:start;gap:var(--space-4);display:grid}.txs__side .txs__label{margin-bottom:var(--space-2)}.txs .txs__txs{gap:var(--space-1);padding:0;list-style:none;display:grid}.txs__tx{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-primary);font-size:var(--text-small);flex-wrap:wrap;display:flex}.txs__tx[data-status=suspended]{border-style:dashed}.txs__tx[data-status=rollback-only]{border-color:var(--accent-primary)}.txs__tx-name{color:var(--text-primary);font-weight:var(--weight-semibold)}.txs__tx-meta{color:var(--text-secondary);font-size:var(--text-xs);flex:1}.txs__badge{padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.txs__badge[data-status=committed]{background:var(--code-add);color:var(--code-string)}.txs__badge:is([data-status=rolled\ back],[data-status=rollback-only]){background:var(--accent-wash);color:var(--accent-primary)}.txs__rows{border-collapse:collapse;width:100%;font-size:var(--text-small)}.txs__rows :is(th,td){padding:var(--space-1) var(--space-2) var(--space-1) 0;border-bottom:var(--line-width) solid var(--border-soft);text-align:left}.txs__rows th{color:var(--text-secondary);font-weight:var(--weight-medium)}.txs__rows td[data-state=committed]{color:var(--code-string);font-weight:var(--weight-semibold)}.txs__rows td[data-state=rolled\ back]{color:var(--accent-primary);font-weight:var(--weight-semibold)}.txs__verdict{padding:var(--space-2) var(--space-3);border-left:2px solid var(--border-strong);background:var(--bg-secondary);font-size:var(--text-small);line-height:1.5}.txs__verdict[data-tone=bad]{border-left-color:var(--accent-primary)}.txs__empty{color:var(--text-secondary);font-size:var(--text-small)}.txs li+li{margin-top:0}.prose .txs ul>li:before{content:none}.txs>.figure__caption{margin-top:var(--space-2)}@media (width<=30rem){.txs__step{grid-template-columns:minmax(0,1fr);gap:0}}.post-nav{gap:var(--space-3);padding-top:var(--space-4);border-top:var(--line-width) solid var(--border-strong);display:grid}.post-nav__link{gap:var(--space-1);padding:var(--space-3);border:var(--line-width) solid var(--border);border-radius:var(--radius);color:var(--text-primary);text-decoration:none;display:grid}.post-nav__link:hover{border-color:var(--border-strong);background:var(--hover);color:var(--text-primary)}.post-nav__link:hover .post-nav__title{text-decoration:underline;-webkit-text-decoration-color:var(--link-hover);text-decoration-color:var(--link-hover)}.post-nav__dir{align-items:center;gap:var(--space-1);font-size:var(--text-small);color:var(--text-secondary);display:inline-flex}.post-nav__title{font-weight:var(--weight-semibold);line-height:1.3}.post-nav__link--next{text-align:right}.post-nav__link--next .post-nav__dir{justify-self:end}@media (width>=40rem){.post-nav{grid-template-columns:1fr 1fr}.post-nav__link--next{grid-column:2}}.prose>.lrx,.prose>.lrx-diagram{margin-top:1.6em}@media (width>=68rem){.prose>.lrx{margin-right:calc(-1 * var(--prose-bleed))}}.lrx__panel{border:var(--line-width) solid var(--border);background:var(--bg-surface)}.lrx__panel--top{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:grid}.lrx__panel--body{gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:0;display:grid}.lrx__sliders{gap:var(--space-3);display:grid}@media (width>=40rem){.lrx__sliders{gap:var(--space-4);grid-template-columns:1fr 1fr}}.lrx__slider{gap:var(--space-1);display:grid}.lrx__slider>span{align-items:baseline;gap:var(--space-2);color:var(--text-secondary);font-size:var(--text-small);flex-wrap:wrap;display:flex}.lrx var{color:var(--text-primary);font-style:italic}.lrx__slider output{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-xs)}.lrx__slider small{font-size:var(--text-xs)}.lrx__slider input[type=range]{width:100%;accent-color:var(--accent-primary)}.lrx__row{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.lrx__label{color:var(--text-secondary);font-size:var(--text-small)}.lrx__segmented{gap:var(--space-1);flex-wrap:wrap;display:flex}.lrx__segmented button{padding:2px var(--space-2);border:var(--line-width) solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font:inherit;font-size:var(--text-xs);cursor:pointer;transition:var(--transition-colors);background:0 0}.lrx__segmented button:hover{background:var(--hover);color:var(--text-primary)}.lrx__segmented button[aria-pressed=true]{border-color:var(--border-strong);background:var(--bg-primary);color:var(--text-primary);font-weight:var(--weight-semibold)}.lrx__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.lrx__actions .button{padding:var(--space-1) var(--space-2);font-size:var(--text-small)}.lrx .button:disabled{opacity:.45;cursor:not-allowed}.lrx__check{align-items:center;gap:var(--space-2);margin-left:var(--space-1);color:var(--text-secondary);font-size:var(--text-small);cursor:pointer;display:inline-flex}.lrx__check input{accent-color:var(--accent-primary)}.lrx__chart{width:100%;height:auto;display:block;overflow:visible}.lrx__chart--clickable{cursor:crosshair}.lrx__plot-bg{fill:#0000}.lrx__grid{stroke:var(--border-soft);stroke-width:1px}.lrx__tick,.lrx__axis-label{fill:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.lrx__point{fill:var(--text-primary);stroke:var(--bg-surface);stroke-width:2px}.lrx__line{stroke:var(--accent-primary);stroke-width:2.5px}.lrx__best{stroke:var(--text-secondary);stroke-width:1.5px;stroke-dasharray:5 4}.lrx__residual{stroke:var(--accent-primary);stroke-width:1.5px}.lrx__square{fill:color-mix(in srgb, var(--accent-primary) 12%, transparent);stroke:color-mix(in srgb, var(--accent-primary) 45%, transparent);stroke-width:1px}.lrx__contour{fill:none;stroke:var(--border-strong);stroke-width:1.25px}.lrx__path{fill:none;stroke:var(--accent-primary);stroke-width:1.75px;stroke-linejoin:round}.lrx__path-dot{fill:var(--accent-primary)}.lrx__current{fill:var(--accent-primary);stroke:var(--bg-surface);stroke-width:2px}.lrx__optimum{stroke:var(--text-primary);stroke-width:2px}.lrx__spark{gap:var(--space-1);display:grid}.lrx__spark-line{fill:none;stroke:var(--text-primary);stroke-width:1.75px}.lrx__readout{gap:var(--space-2) var(--space-4);padding-top:var(--space-3);border-top:var(--line-width) solid var(--border-soft);grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));margin:0;display:grid}.lrx__readout dt{color:var(--text-secondary);font-size:var(--text-xs)}.lrx__readout dd{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-xs);margin:0}.prose .lrx__status{padding:var(--space-2) var(--space-3);border-left:3px solid var(--border-strong);background:var(--bg-primary);color:var(--text-body);font-size:var(--text-small);margin:0}.lrx__status[data-status=converged]{border-left-color:var(--text-primary)}.lrx__status[data-status=diverged]{border-left-color:var(--accent-primary)}.lrx>.figure__caption{margin-top:var(--space-2)}.lrx__curve{fill:none}.lrx__point--hollow{fill:var(--bg-surface);stroke:var(--text-primary);stroke-width:1.5px}.lrx__point--wrong{stroke:var(--accent-primary);stroke-width:2.5px}.lrx__threshold{stroke:var(--border-strong);stroke-width:1px;stroke-dasharray:2 3}.lrx__boundary{stroke:var(--accent-primary);stroke-width:1.25px;stroke-dasharray:2 3}.lrx__boundary--strong{stroke-width:2px;stroke-dasharray:none}.lrx__region{fill:var(--accent-wash)}.lrx__split{gap:var(--space-4);align-items:center;display:grid}@media (width>=40rem){.lrx__split{grid-template-columns:3fr 2fr}}.lrx__roc{justify-self:center;max-width:18rem}.lrx .lrx__roc .lrx__tick,.lrx .lrx__roc .lrx__axis-label{font-size:12px}.prose .lrx__matrix{border-collapse:collapse;width:100%;font-size:var(--text-small);margin:0}.lrx__matrix caption{padding-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--text-xs);text-align:left}.lrx__matrix th{padding:var(--space-2);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-medium);text-align:left}.lrx__matrix td{padding:var(--space-2) var(--space-3);border:var(--line-width) solid var(--border);background:var(--bg-primary);vertical-align:top}.lrx__matrix thead td{background:0 0;border:0}.lrx__matrix td strong{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-base);display:block}.lrx__matrix td small{color:var(--text-secondary);font-size:var(--text-xs)}.lrx__matrix td[data-error=true]{background:var(--accent-wash)}.lrx__matrix td[data-error=true] strong{color:var(--accent-primary)}.lrx-diagram__svg{width:100%;height:auto;padding:var(--space-3);border:var(--line-width) solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);display:block}.lrx-diagram__plane{fill:var(--bg-secondary);stroke:var(--border-strong);stroke-width:1px}.lrx-diagram__col{stroke:var(--text-secondary);stroke-width:1.5px}.lrx-diagram__vec{stroke:var(--text-primary);stroke-width:2px}.lrx-diagram__vec--accent{stroke:var(--accent-primary)}.lrx-diagram__head{fill:var(--text-primary)}.lrx-diagram__col+.lrx-diagram__label{fill:var(--text-secondary)}.lrx-diagram__head--accent{fill:var(--accent-primary)}.lrx-diagram__resid{stroke:var(--text-primary);stroke-width:1.5px;stroke-dasharray:5 4}.lrx-diagram__right{fill:none;stroke:var(--text-secondary);stroke-width:1.25px}.lrx-diagram__origin{fill:var(--text-primary)}.lrx-diagram__label{fill:var(--text-primary);font-size:15px}.lrx-diagram__label--strong{font-weight:var(--weight-semibold)}.lrx-diagram__label--accent{fill:var(--accent-primary)}.lrx-diagram__note{fill:var(--text-secondary);font-size:12.5px}@media (width<=40rem){.lrx__tick,.lrx__axis-label{font-size:20px}.lrx-diagram{overflow-x:auto}.lrx-diagram__svg{min-width:34rem}}.prose .katex-display{padding:var(--space-1) 0;margin:0;overflow:auto hidden}.prose .katex{font-size:1.08em}.projects{gap:var(--space-6);grid-template-columns:minmax(0,1fr);display:grid}.project-label{margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase}.case{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=64rem){.case{column-gap:var(--space-6);grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.case__intro{align-content:start;gap:var(--space-3);display:grid}.case__visual{align-content:start;gap:var(--space-4);min-width:0;display:grid}.case__eyebrow{gap:var(--space-2);color:var(--text-secondary);font-size:var(--text-small);flex-wrap:wrap;align-items:center;display:flex}.case__eyebrow span:first-child{color:var(--accent-primary);font-weight:var(--weight-semibold)}.case__eyebrow span+span:before{content:"·";margin-right:var(--space-2);color:var(--text-faint)}.case__title{font-size:clamp(1.625rem,1.3rem + 1.2vw,2.125rem);font-weight:var(--weight-bold);letter-spacing:var(--tracking-display);line-height:1.12}.case__summary{font-size:var(--text-lede);line-height:var(--leading-lede);color:var(--text-primary)}.case__role{color:var(--text-secondary);font-size:var(--text-small)}.case__problem{margin-top:var(--space-2);padding-top:var(--space-3);border-top:var(--line-width) solid var(--border)}.case__problem p{color:var(--text-body)}.case__decisions{padding-top:var(--space-4);border-top:var(--line-width) solid var(--border);grid-column:1/-1}.case__foot{gap:var(--space-3);grid-column:1/-1;display:grid}.status{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.status__chip{border:var(--line-width) solid var(--border);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-primary);align-items:center;gap:.4rem;padding:.2rem .6rem;display:inline-flex}.status__chip:before{content:"";border-radius:var(--radius-full);background:var(--text-faint);width:7px;height:7px}.status__chip--live:before{background:var(--code-string);box-shadow:0 0 0 3px color-mix(in srgb, var(--code-string) 22%, transparent)}.status__chip--progress:before{background:var(--caution)}.facts{border-block:var(--line-width) solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.facts__item{padding:var(--space-3) var(--space-3) var(--space-3) 0;flex-direction:column-reverse;justify-content:flex-end;gap:.15rem;display:flex}.facts__item+.facts__item{padding-left:var(--space-3);border-left:var(--line-width) solid var(--border-soft)}.facts__value{font-size:1.625rem;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);color:var(--text-primary);line-height:1.1}.facts__label{color:var(--text-secondary);font-size:var(--text-xs);line-height:var(--leading-snug)}.proof{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));padding:0;list-style:none;display:grid}.proof__link{align-items:center;gap:var(--space-2);border:var(--line-width) solid var(--border);border-radius:var(--radius);background:var(--bg-surface);height:100%;color:var(--text-primary);transition:var(--transition-colors);padding:.625rem .75rem;text-decoration:none;display:flex}.proof__link:hover{border-color:var(--text-primary);color:var(--text-primary)}.proof__icon{color:var(--text-secondary);flex:none;display:inline-flex}.proof__text{flex:1;min-width:0;display:grid}.proof__label{font-size:var(--text-small);font-weight:var(--weight-semibold);line-height:1.3}.proof__meta{color:var(--text-secondary);font-size:var(--text-xs);line-height:1.35}.proof__arrow{color:var(--text-faint);transition:var(--transition-colors);flex:none}.proof__link:hover .proof__arrow{color:var(--accent-primary)}.decisions{gap:var(--space-4) var(--space-5);padding:0;list-style:none;display:grid}@media (width>=48rem){.decisions{grid-template-columns:repeat(3,minmax(0,1fr))}}.decisions__item{align-content:start;gap:var(--space-1);display:grid}.decisions__n{color:var(--accent-primary);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.decisions__title{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-snug);margin:0}.decisions__body{color:var(--text-body);font-size:var(--text-small);line-height:1.6}.project-next{gap:var(--space-1);padding:var(--space-3) var(--space-4);border-left:3px solid var(--accent-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--accent-wash);color:var(--text-primary);font-size:var(--text-small);line-height:1.55;display:grid}.project-next__label{color:var(--accent-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase}.project-stack{gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.project-stack>span:not(.visually-hidden){border-radius:var(--radius-xs);background:var(--bg-secondary);color:var(--text-secondary);font-family:var(--font-mono);padding:.125rem .5rem;font-size:.78125rem}.viewer{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.viewer__tabs{gap:var(--space-1);border:var(--line-width) solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);width:fit-content;padding:3px;display:flex}.viewer__tab{border-radius:calc(var(--radius) - 3px);color:var(--text-secondary);font:inherit;font-size:var(--text-small);font-weight:var(--weight-medium);cursor:pointer;transition:var(--transition-colors);background:0 0;border:0;align-items:center;gap:.4rem;padding:.375rem .75rem;display:inline-flex}.viewer__tab:hover{color:var(--text-primary)}.viewer__tab[aria-selected=true]{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-xs)}.viewer__panel .figure,.screens{margin:0}.browser{border:var(--line-width) solid var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);overflow:hidden}.browser__bar{align-items:center;gap:var(--space-3);border-bottom:var(--line-width) solid var(--border);background:var(--bg-secondary);padding:.5rem .75rem;display:flex}.browser__dots{gap:5px;display:flex}.browser__dots i{border-radius:var(--radius-full);background:var(--border-strong);width:9px;height:9px}.browser__url{border-radius:var(--radius-xs);background:var(--bg-primary);min-width:0;color:var(--text-secondary);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;flex:1;padding:.125rem .625rem;font-size:.75rem;overflow:hidden}.browser .figure__zoom{border:0;border-radius:0}.screens .figure__caption{margin-top:var(--space-2)}.projects__grid{gap:var(--space-4);display:grid}@media (width>=64rem){.projects__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pcard{gap:var(--space-3);min-width:0;padding:var(--space-4);border:var(--line-width) solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);flex-direction:column;display:flex}@media (width>=40rem){.pcard{padding:var(--space-4) var(--space-5) var(--space-5)}}.pcard__head{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.pcard__title{font-size:1.375rem;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}.pcard__period{color:var(--text-secondary);font-size:var(--text-small)}.pcard__summary{color:var(--text-body)}.pcard__diagram .diagram{background:var(--bg-primary)}.pcard__diagram .figure{margin:0}.pcard__decisions{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.pcard__decisions dt{font-weight:var(--weight-semibold);font-size:var(--text-small)}.pcard__decisions dd{color:var(--text-body);font-size:var(--text-small);line-height:1.6}.pcard__foot{gap:var(--space-3);padding-top:var(--space-3);border-top:var(--line-width) solid var(--border-soft);margin-top:auto;display:grid}.pcard .proof__link{background:var(--bg-primary)}.run{gap:var(--space-1);grid-template-columns:minmax(0,1fr);display:grid}.run__label{color:var(--text-secondary);font-size:var(--text-xs)}.run__line{align-items:center;gap:var(--space-2);border:var(--line-width) solid var(--border);border-radius:var(--radius-sm);background:var(--bg-secondary);padding:.375rem .375rem .375rem .75rem;display:flex}.run__code{min-width:0;color:var(--code-fg);font-family:var(--font-mono);white-space:nowrap;flex:1;font-size:.8125rem;overflow-x:auto}.run__prompt{color:var(--text-faint);margin-right:.6em}.run__copy{color:var(--text-secondary);flex:none;padding:.375rem}.earlier{gap:var(--space-3);display:grid}.earlier__title{align-items:baseline;gap:var(--space-1) var(--space-3);font-size:var(--text-h4);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-snug);flex-wrap:wrap;display:flex}.earlier__note{color:var(--text-secondary);font-size:var(--text-small);font-weight:var(--weight-regular);letter-spacing:var(--tracking-small)}.earlier__list{border-top:var(--line-width) solid var(--border);padding:0;list-style:none}.earlier__item{gap:var(--space-1) var(--space-4);padding-block:var(--space-3);border-bottom:var(--line-width) solid var(--border-soft);display:grid}@media (width>=40rem){.earlier__item{grid-template-columns:var(--col-time) minmax(0, 1fr) auto;align-items:baseline}}.earlier__date{color:var(--text-secondary);font-size:var(--text-small)}.earlier__main{max-width:var(--measure-wide);gap:.2rem;display:grid}.earlier__name{font-size:var(--text-base);font-weight:var(--weight-semibold)}.earlier__summary{color:var(--text-body);font-size:var(--text-small)}.earlier__stack{color:var(--text-secondary);font-family:var(--font-mono);font-size:.78125rem}.earlier__link{font-size:var(--text-small)}.earlier__link a{align-items:center;gap:.375rem;display:inline-flex}.earlier__private{color:var(--text-secondary);font-size:var(--text-xs)}}@layer utilities{.num{font-variant-numeric:tabular-nums}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin-var.woff2)format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin-var-italic.woff2)format("woff2");font-weight:100 1000;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-var.woff2)format("woff2");font-weight:100 800;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-symbols-var.woff2)format("woff2");font-weight:100 800;font-display:swap;unicode-range:U+2190-21FF,U+25??}
