@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-italic.CsGl1sm0.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-serif-latin-500-normal.REKAfBVG.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-500-normal.C3_OdgN3.woff)format("woff")}@font-face{font-family:IBM Plex Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-serif-latin-400-italic.BCf4TsCA.woff2)format("woff2"),url(/_astro/ibm-plex-serif-latin-400-italic.Dd68USph.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff")}:root{color-scheme:light;--bg:#f5f7fa;--bg-elev:#ebeff4;--ink:#0e1726;--ink-2:#3b4656;--ink-3:#5a6676;--rule:#dce2ea;--accent:#1f5bd8;--accent-soft:#1f5bd81a;--accent-line:#1f5bd866;--domain-ai:#6d28d9;--domain-analytics:#0e7c70;--domain-finance:#be123c;--font-serif:"IBM Plex Serif", "Iowan Old Style", Georgia, serif;--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--text-body:1.125rem;--leading:1.65;--text-sm:.875rem;--text-xs:.75rem;--tracking-label:.06em;--measure:40rem;--rail:10rem;--rail-gap:2rem;--side-gap:3rem;--side:15rem;--gutter:1.25rem;--radius:4px}:root[data-theme=dark]{color-scheme:dark;--bg:#0d1b2e;--bg-elev:#13243b;--ink:#e8eef6;--ink-2:#b4c2d3;--ink-3:#8597ad;--rule:#23364f;--accent:#7db3ff;--accent-soft:#7db3ff24;--accent-line:#7db3ff66;--domain-ai:#b39dff;--domain-analytics:#4fd1c0;--domain-finance:#ff7a93}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#0d1b2e;--bg-elev:#13243b;--ink:#e8eef6;--ink-2:#b4c2d3;--ink-3:#8597ad;--rule:#23364f;--accent:#7db3ff;--accent-soft:#7db3ff24;--accent-line:#7db3ff66;--domain-ai:#b39dff;--domain-analytics:#4fd1c0;--domain-finance:#ff7a93}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg);scroll-padding-top:1.5rem}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading);font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.site{flex-direction:column;min-height:100vh;display:flex;overflow-x:clip}.site>main{flex:1 0 auto;align-content:start}img,svg,video{max-width:100%;height:auto}::selection{background:var(--accent-soft);color:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}h1,h2,h3,h4{font-family:var(--font-serif);text-wrap:balance;margin:0;font-weight:500}p{margin:0}.sr-only{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:10;background:var(--ink);color:var(--bg);font:500 var(--text-sm) / 1.2 var(--font-sans);border-radius:var(--radius);padding:.5rem .75rem;text-decoration:none;position:absolute;top:-10rem;left:1rem}.skip-link:focus{top:1rem}.label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-3);font-weight:500;line-height:1.4}a.label{text-decoration:none}.topic-labels__sep{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3)}a.label:hover{color:var(--accent)}.meta{font-family:var(--font-mono);letter-spacing:.01em;color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.8125rem;line-height:1.5}.meta--text{font-family:var(--font-sans);font-size:var(--text-sm);letter-spacing:0}time{font-variant-numeric:tabular-nums}.grid{grid-template-columns:[full-start] minmax(var(--gutter), 1fr) [rail-start text-start] minmax(0, var(--measure)) [text-end rail-end side-start side-end] minmax(var(--gutter), 1fr) [full-end];display:grid}@media (width>=1200px){.grid{--gutter:1.5rem;grid-template-columns:[full-start] minmax(var(--gutter), 1fr) [rail-start] var(--rail) [rail-end] var(--rail-gap) [text-start] var(--measure) [text-end] var(--side-gap) [side-start] var(--side) [side-end] minmax(var(--gutter), 1fr) [full-end]}}.subgrid{grid-column:full;grid-template-columns:subgrid;display:grid}.col-text{grid-column:text;min-width:0}.col-wide{grid-column:text-start/side-end;min-width:0}.col-all{grid-column:rail-start/side-end;min-width:0}.col-rail{grid-column:rail;min-width:0}.section{grid-column:full;grid-template-columns:subgrid;row-gap:1rem;padding-block:2.5rem 0;display:grid}.section__label{grid-column:rail;margin:0}.section__body{grid-column:text-start/side-end;min-width:0}@media (width>=1200px){.section__label{grid-row:1;padding-top:.45rem}.section:has(>.section__body>.entry-list:first-child)>.section__label{padding-top:calc(1rem + 1px)}.section__body{grid-row:1}}.site-header{padding-block:1.25rem 0}.site-header__inner{border-bottom:1px solid var(--rule);flex-wrap:wrap;grid-column:rail-start/side-end;align-items:center;gap:.75rem 1.5rem;padding-bottom:1rem;display:flex}.wordmark{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--ink);align-items:center;gap:.6rem;margin-right:auto;font-size:1.25rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.wordmark__mark{flex:none;width:1.5rem;height:1.5rem}.wordmark__mark .wm-tile{fill:var(--accent)}.wordmark__mark .wm-grid{fill:none;stroke:var(--bg);stroke-width:1px;stroke-opacity:.3}.wordmark__mark .wm-route{fill:none;stroke:var(--bg);stroke-width:1.6px}.wordmark__mark .wm-node{fill:var(--bg)}.wordmark:hover{color:var(--accent)}.site-nav{flex-basis:100%;order:3}.site-nav ul{gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}@media (width<=539.98px){.site-nav ul{flex-wrap:wrap;justify-content:space-between;gap:.5rem .9rem}}.site-nav a{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-2);padding-block:.25rem;font-weight:500;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent)}.site-nav a[aria-current=page]{text-underline-offset:.5em;text-decoration:underline 1px}.site-tools{align-self:center;align-items:center;gap:.25rem;display:flex}@media (width>=720px){.site-nav{flex-basis:auto;order:0}.site-tools{margin-left:.5rem}}.icon-button{border-radius:var(--radius);min-width:2.25rem;height:2.25rem;color:var(--ink-2);font:500 var(--text-xs) / 1 var(--font-mono);letter-spacing:var(--tracking-label);cursor:pointer;background:0 0;border:0;place-items:center;padding:0 .4rem;text-decoration:none;display:inline-grid;position:relative}.icon-button:hover{color:var(--accent);background:var(--accent-soft)}.icon-button svg{width:1.125rem;height:1.125rem}.theme-toggle{visibility:hidden}.js .theme-toggle{visibility:visible}.theme-toggle .i-light,.theme-toggle .i-dark,:root[data-theme=light] .theme-toggle .i-system,:root[data-theme=dark] .theme-toggle .i-system{display:none}:root[data-theme=light] .theme-toggle .i-light,:root[data-theme=dark] .theme-toggle .i-dark{display:block}.site-footer{padding-block:4rem 2.5rem}.site-footer__inner{border-top:1px solid var(--rule);font-family:var(--font-mono);color:var(--ink-3);flex-wrap:wrap;grid-column:rail-start/side-end;gap:.5rem 1.25rem;padding-top:1.25rem;font-size:.8125rem;display:flex}.site-footer a{color:var(--ink-2);text-decoration:none}.site-footer a:hover{color:var(--accent)}.site-footer__links{gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.page-head{padding-top:3rem}.page-head__title{letter-spacing:-.01em;font-size:clamp(2.125rem,1.45rem + 2.4vw,3rem);line-height:1.12}.page-head__dek{color:var(--ink-2);text-wrap:pretty;margin-top:.85rem;font-size:1.1875rem;line-height:1.5}.page-head .label{margin-bottom:1rem;display:block}.entry-list{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.entry-row{border-bottom:1px solid var(--rule);grid-template-columns:1fr;grid-template-areas:"meta""title";gap:.2rem;padding-block:.85rem;display:grid}.entry-row__date{grid-area:meta}.entry-row__title{font-family:var(--font-serif);letter-spacing:-.005em;text-wrap:pretty;grid-area:title;font-size:1.1875rem;font-weight:500;line-height:1.35;text-decoration:none}.entry-row__title:hover{color:var(--accent)}.entry-row__topics{text-align:right;grid-area:meta;justify-self:end}@media (width>=640px){.entry-row{grid-template-columns:8rem 1fr auto;grid-template-areas:"date title topics";align-items:baseline;column-gap:1.25rem}.entry-row__date{grid-area:date}.entry-row__topics{grid-area:topics}}.entry-row .draft-badge{vertical-align:.2em;margin-left:.5rem}.listen-mark{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.02em;color:var(--ink-3);white-space:nowrap;align-items:center;gap:.3rem;font-style:normal;font-weight:400;line-height:1.3;display:inline-flex}.entry-row__title .listen-mark{vertical-align:.15em;margin-left:.6rem}.listen-mark__icon{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;width:.85rem;height:.85rem}.listen-mark__icon rect{fill:currentColor;stroke:none}.empty-state{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding-block:1.5rem}.empty-state__title{font-family:var(--font-serif);color:var(--ink-2);font-size:1.25rem;font-style:italic}.empty-state__hint{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-3);margin-top:.25rem}.more-link{font-family:var(--font-mono);letter-spacing:.02em;color:var(--accent);margin-top:1rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-block}.more-link:hover{text-underline-offset:.3em;text-decoration:underline}.draft-badge{border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font-family:var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase;padding:.1rem .4rem;font-size:.6875rem;font-weight:500;line-height:1.3;display:inline-block}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.reading-progress{display:none}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.reading-progress{z-index:20;background:var(--accent);transform-origin:0;height:2px;animation:linear both reading-progress scroll(root);display:block;position:fixed;inset:0 0 auto;transform:scaleX(0)}}}@keyframes reading-progress{to{transform:scaleX(1)}}main:focus{outline:none}@media print{:root,:root[data-theme=dark]{color-scheme:light;--bg:#fff;--bg-elev:#f4f4f4;--ink:#000;--ink-2:#222;--ink-3:#444;--rule:#bbb;--accent:#000;--accent-line:#000}@page{margin:2cm 2.2cm}body{background:#fff;font-size:11pt}.site-header,.site-footer,.skip-link,.reading-progress,.toc,.post-footer,.theme-toggle,.sidenote{display:none!important}.grid{display:block}.prose{font-size:11pt}.prose a[href^=http]:after{content:" (" attr(href) ")";word-break:break-all;color:#444;font-size:.85em}.footnotes,.footnotes li[data-sidenote],.footnotes.footnotes--sidenoted{clip-path:none!important;white-space:normal!important;width:auto!important;height:auto!important;margin:2em 0 0!important;position:static!important;overflow:visible!important}.prose pre,.prose .table-scroll,.prose .katex-display{white-space:pre-wrap;overflow:visible}.prose h2,.prose h3{break-after:avoid}.figure,.callout,.pullquote,.prose pre,.prose table{break-inside:avoid}.plot--narrow{display:none!important}.plot--regular{display:block!important}}
