.prose{--tw-prose-body:var(--foreground);--tw-prose-headings:var(--foreground);--tw-prose-lead:var(--foreground-2);--tw-prose-links:var(--accent);--tw-prose-bold:var(--foreground);--tw-prose-counters:var(--muted-foreground);--tw-prose-bullets:var(--muted-foreground);--tw-prose-hr:var(--border);--tw-prose-quotes:var(--foreground-2);--tw-prose-quote-borders:var(--border-strong);--tw-prose-captions:var(--muted-foreground);--tw-prose-kbd:var(--foreground);--tw-prose-code:var(--foreground);--tw-prose-pre-code:var(--code-fg);--tw-prose-pre-bg:var(--code-bg);--tw-prose-th-borders:var(--border);--tw-prose-td-borders:var(--border);font-size:1.125rem;line-height:1.7}@layer components{.article-body{font-family:var(--font-sans);color:var(--foreground);overflow-wrap:break-word;font-size:1.0625rem;line-height:1.75}@media (min-width:40rem){.article-body{font-size:1.125rem}}.article-body>:first-child{margin-top:0}.article-body :where(p,ul,ol,blockquote,h2,h3,h4,hr,dl):not(:where(.not-prose,.not-prose *)){max-width:36em}.article-body :where(p,ul,ol,blockquote,figure,hr):not(:where(.not-prose,.not-prose *)){margin-block:1.25em}.article-body :where(h2,h3,h4):not(:where(.not-prose,.not-prose *)){color:var(--foreground);letter-spacing:-.015em;text-wrap:balance;scroll-margin-top:6rem}.article-body :where(h2,h3,h4):focus{outline:none}.article-body :where(h2):not(:where(.not-prose,.not-prose *)){margin-top:2.25em;margin-bottom:.6em;font-size:1.55em;font-weight:700;line-height:1.25}.article-body :where(h3):not(:where(.not-prose,.not-prose *)){margin-top:2em;margin-bottom:.5em;font-size:1.2em;font-weight:600;line-height:1.35}.article-body :where(h4):not(:where(.not-prose,.not-prose *)){margin-top:1.75em;margin-bottom:.5em;font-size:1em;font-weight:600;line-height:1.5}.article-body :where(h2,h3,h4)+*{margin-top:0}.article-body .heading-anchor:empty:after{content:"#"}.article-body .heading-anchor{color:var(--muted-foreground);opacity:0;border-radius:.25rem;margin-left:.3em;padding-inline:.15em;font-weight:500;text-decoration:none;transition:opacity .15s ease-out,color .15s ease-out;display:inline-block}.article-body :where(h2,h3,h4):hover .heading-anchor,.article-body .heading-anchor:focus-visible{opacity:1}.article-body .heading-anchor:hover{color:var(--accent)}.article-body :where(a):not(:where(.not-prose,.not-prose *)){color:var(--accent);text-underline-offset:3px;font-weight:500;text-decoration-line:underline;text-decoration-thickness:1px;transition:color .15s ease-out}.article-body :where(a):not(:where(.not-prose,.not-prose *)):hover{color:var(--accent-hover);text-decoration-thickness:2px}.article-body :where(strong):not(:where(.not-prose,.not-prose *)){color:var(--foreground);font-weight:600}.article-body :where(code):not(:where(pre *,.not-prose *)){font-family:var(--font-mono);background:var(--surface-2);color:var(--foreground);overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.375rem;padding:.15em .35em;font-size:.875em;font-weight:500}.article-body :where(a code,h2 code,h3 code,h4 code):not(:where(pre *,.not-prose *)){color:inherit}.article-body :where(ul):not(:where(.not-prose,.not-prose *)){padding-left:1.5em;list-style-type:disc}.article-body :where(ol):not(:where(.not-prose,.not-prose *)){padding-left:1.5em;list-style-type:decimal}.article-body :where(li):not(:where(.not-prose,.not-prose *)){margin-block:.4em;padding-left:.25em}.article-body :where(li)::marker{color:var(--muted-foreground)}.article-body :where(ol>li)::marker{font-weight:500}.article-body :where(li>ul,li>ol):not(:where(.not-prose,.not-prose *)){margin-block:.4em}.article-body :where(li>p):not(:where(.not-prose,.not-prose *)){margin-block:.5em}.article-body :where(blockquote):not(:where(.not-prose,.not-prose *)){border-left:3px solid var(--border-strong);color:var(--foreground-2);padding-left:1.25em;font-style:normal}.article-body :where(hr):not(:where(.not-prose,.not-prose *)){border:0;border-top:1px solid var(--border);margin-block:3em}.article-body :where(img):not(:where(.not-prose,.not-prose *)){border:1px solid var(--border);border-radius:.75rem}.article-body :where(p:has(>img:only-child),figure):not(:where(.not-prose,.not-prose *)){margin-block:2em}.article-body :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--muted-foreground);text-align:center;margin-top:.75em;font-size:.875rem;line-height:1.5}.article-body .table-wrapper{border:1px solid var(--border);border-radius:.75rem;margin-block:1.75em;overflow-x:auto}.article-body .table-wrapper table{border-collapse:collapse;width:100%;margin:0;font-size:.9375rem;line-height:1.6}.article-body .table-wrapper thead{background:var(--surface)}.article-body .table-wrapper :where(th,td){text-align:left;vertical-align:top;padding:.6em 1em}.article-body .table-wrapper th{color:var(--foreground);white-space:nowrap;border-bottom:1px solid var(--border);font-weight:600}.article-body .table-wrapper tbody tr+tr td{border-top:1px solid var(--border)}.article-body .table-wrapper :where(td:first-child){min-width:8em}.article-body figure[data-rehype-pretty-code-figure]{margin-block:1.75em}@media (min-width:64rem){.article-body figure[data-rehype-pretty-code-figure]{margin-inline:-1.5rem}}.code-block{--block-bg:var(--code-bg);--block-fg:var(--code-fg);--block-muted:var(--code-muted);--scroll-shadow:color-mix(in srgb, var(--foreground) 16%, transparent);border:1px solid var(--code-border);background:var(--block-bg);border-radius:.75rem;overflow:hidden}.code-block.is-expanded{z-index:65;flex-direction:column;margin:0;display:flex;position:fixed;inset:1.5rem;box-shadow:0 0 0 100vmax #0000008c,0 24px 48px #00000059}.code-block.is-expanded pre{flex:1;overflow:auto}html.code-expanded{overflow:hidden}.code-block-terminal{--block-bg:var(--terminal-bg);--block-fg:var(--terminal-fg);--block-muted:color-mix(in srgb, var(--terminal-fg) 72%, var(--terminal-bg));--scroll-shadow:#0000008c;border-color:var(--terminal-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.code-block-header{background:var(--code-header);border-bottom:1px solid var(--code-border);min-height:2.75rem;font-family:var(--font-mono);color:var(--muted-foreground);align-items:center;gap:.75rem;padding:.375rem .5rem .375rem 1rem;font-size:.8125rem;line-height:1.4;display:flex}.code-block-terminal .code-block-header{background:var(--terminal-bg);border-bottom-color:color-mix(in srgb, var(--terminal-fg) 16%, transparent);color:var(--terminal-fg)}.code-block-title{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.code-block-terminal .code-block-title{color:var(--block-muted)}.code-block-lang{font-family:var(--font-sans);letter-spacing:.02em;color:var(--muted-foreground);padding-inline:.375rem;font-size:.75rem;font-weight:600}.code-block pre{font-family:var(--font-mono);font-variant-ligatures:none;tab-size:2;color:var(--block-fg);background:linear-gradient(to right, var(--block-bg) 30%, transparent) left center / 2.5rem 100% no-repeat local, linear-gradient(to left, var(--block-bg) 30%, transparent) right center / 2.5rem 100% no-repeat local, radial-gradient(farthest-side at 0 50%, var(--scroll-shadow), transparent) left center / .875rem 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, var(--scroll-shadow), transparent) right center / .875rem 100% no-repeat scroll;background-color:var(--block-bg);border:0;border-radius:0;margin:0;padding:1rem 0;font-size:.84375rem;line-height:1.7;overflow-x:auto}@media (min-width:40rem){.code-block pre{font-size:.875rem}}.code-block pre:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:0 0 .6875rem .6875rem}.code-block pre>code{width:max-content;min-width:100%;font-size:inherit;counter-reset:line;background:0 0;padding:0;font-weight:400;display:grid}.code-block [data-line]{border-left:3px solid #0000;padding-inline:1.25rem 1.5rem;position:relative}code[data-theme] span{color:var(--shiki-light)}.dark code[data-theme] span,.code-block-terminal code[data-theme] span{color:var(--shiki-dark)}.code-block code[data-line-numbers]>[data-line]:before{counter-increment:line;content:counter(line);text-align:right;width:2ch;color:var(--block-muted);-webkit-user-select:none;user-select:none;margin-right:1.25rem;display:inline-block}.code-block code[data-line-numbers-max-digits="3"]>[data-line]:before{width:3ch}.code-block code[data-line-numbers-max-digits="4"]>[data-line]:before{width:4ch}.code-block [data-highlighted-line],.code-block [data-line].highlighted{background:var(--code-highlight);border-left-color:var(--accent)}.code-block [data-line].diff.add{background:var(--code-add);border-left-color:var(--success)}.code-block [data-line].diff.remove{background:var(--code-remove);border-left-color:var(--danger)}.code-block [data-line].diff:after{-webkit-user-select:none;user-select:none;font-weight:600;position:absolute;top:0;left:.3rem}.code-block [data-line].diff.add:after{content:"+";color:var(--success)}.code-block [data-line].diff.remove:after{content:"−";color:var(--danger)}.code-block pre.has-focused [data-line]:not(.focused){opacity:.55;transition:opacity .15s ease-out}.code-block pre.has-focused:hover [data-line]:not(.focused),.code-block pre.has-focused:focus-visible [data-line]:not(.focused){opacity:1}.code-block [data-highlighted-chars],.code-block .highlighted-word{background:color-mix(in srgb, var(--accent) 16%, transparent);border-radius:.25rem;padding:.1em .2em}.article-body .katex-display{margin-block:1.5em;padding-block:.5em;overflow:auto hidden}.article-body .katex-display:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.article-body .katex{font-size:1.08em}.article-body :is(.incident-summary,.decision-summary)>:first-child{margin-top:0}.article-body :is(.incident-summary,.decision-summary)>:last-child{margin-bottom:0}.article-body [data-timeline]{margin-block:1.5em}.article-body [data-timeline] :is(ul,ol){border-left:2px solid var(--border);margin-inline-start:.35rem;padding-left:0;list-style:none}.article-body [data-timeline] .timeline-item{gap:.1rem;margin-block:0;padding:.2rem 0 .9rem 1.35rem;display:grid;position:relative}.article-body [data-timeline] .timeline-item:before{content:"";background:var(--accent);width:.8rem;height:.8rem;box-shadow:0 0 0 3px var(--background);border-radius:9999px;position:absolute;top:.5rem;left:-.47rem}.article-body [data-timeline] .timeline-item:is([data-kind=alert],[data-kind=detected]):before{background:var(--danger)}.article-body [data-timeline] .timeline-item[data-kind=mitigated]:before{background:var(--warning)}.article-body [data-timeline] .timeline-item[data-kind=resolved]:before{background:var(--success)}.article-body [data-timeline] .timeline-time{font-family:var(--font-mono);color:var(--muted-foreground);font-size:.8125rem}.article-body [data-timeline] .timeline-body>p{margin-block:0}.article-body .compare-pane>*+*,.article-body .compare-pane>figure[data-rehype-pretty-code-figure]{margin-top:.5rem}.article-body .compare-pane>:last-child,.article-body .compare-pane>figure[data-rehype-pretty-code-figure]:last-child{margin-bottom:0}.article-body .compare-pane[data-side=before] .code-block [data-highlighted-line]{background:var(--code-remove);border-left-color:var(--danger)}.article-body .compare-pane[data-side=after] .code-block [data-highlighted-line]{background:var(--code-add);border-left-color:var(--success)}.article-body .compare-pane .code-block [data-highlighted-line]:after{-webkit-user-select:none;user-select:none;font-weight:600;position:absolute;top:0;left:.3rem}.article-body .compare-pane[data-side=before] .code-block [data-highlighted-line]:after{content:"−";color:var(--danger)}.article-body .compare-pane[data-side=after] .code-block [data-highlighted-line]:after{content:"+";color:var(--success)}.article-body .benchmark-notes{color:var(--foreground-2);font-size:.9375rem}.article-body .benchmark-notes>:first-child{margin-top:0}.article-body .benchmark-notes>:last-child{margin-bottom:0}.article-body .benchmark-notes summary{cursor:pointer;width:fit-content;font-family:var(--font-mono);color:var(--muted-foreground);font-size:.8125rem}.article-body .benchmark-notes summary:hover{color:var(--foreground)}.article-body .sidenote-ref{font-family:var(--font-mono);vertical-align:super;color:var(--accent);background:var(--accent-soft);cursor:pointer;border-radius:.25rem;margin-inline:.1em .15em;padding-inline:.3em;font-size:.7em;line-height:1.4;display:inline-block}.article-body .sidenote-toggle{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.article-body .sidenote-toggle:focus-visible+.sidenote-ref{outline:2px solid var(--focus);outline-offset:2px}.article-body .sidenote{border-left:2px solid var(--accent-border);background:var(--surface);color:var(--foreground-2);margin-block:.6rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.55;display:none}.article-body .sidenote-toggle:checked~.sidenote{display:block}.article-body .sidenote-number{font-family:var(--font-mono);color:var(--accent);margin-right:.4em;font-size:.75rem}@media (min-width:64rem){.article-body{font-size:1.1875rem}}@media (min-width:80rem){.article-body{font-size:1.25rem;line-height:1.7}}}@media screen{html[data-reading=on]:has(.article-page){--background:#f7f3ea;--surface:#f1ebdf;--surface-2:#e8e0d0;--surface-raised:#fbf8f1;--foreground:#27231f;--foreground-2:#423c35;--muted-foreground:#655d52;--border:#e0d6c4;--border-strong:#8c8474;--selection:#b98c3c40;--code-bg:#fdfbf6;--code-header:#f3eee3;--code-border:#e0d6c4;--success:#12703a;--topic-javascript:#8f5a06;--topic-java:#a8380a;--topic-react:#0b6a83}html.dark[data-reading=on]:has(.article-page){--background:#17181c;--surface:#1d1f24;--surface-2:#25272d;--surface-raised:#1b1d22;--foreground:#e6e0d4;--foreground-2:#cfc8bb;--muted-foreground:#a69f92;--border:#2d2f36;--border-strong:#7f786a}html[data-reading=on]:has(.article-page) :is(body>header,body>footer,.article-rail,.article-aside,.read-hide){display:none!important}html[data-reading=on] .article-page{padding-top:3.5rem;padding-bottom:6rem}html[data-reading=on]:has(.article-page) .reading-toolbar{display:flex}@media not (min-width:64rem){html[data-reading=on] .resume-reading{bottom:4.5rem}}html[data-reading=on] .article-grid{display:block}html[data-reading=on] :is(.article-grid>article,.article-next){max-width:38rem;margin-inline:auto}html[data-reading=on][data-reading-size=s] :is(.article-grid>article,.article-next){max-width:35rem}html[data-reading=on][data-reading-size=l] :is(.article-grid>article,.article-next){max-width:42rem}html[data-reading=on] .article-body{font-size:1.25rem;line-height:1.8}html[data-reading=on][data-reading-size=s] .article-body{font-size:1.125rem}html[data-reading=on][data-reading-size=l] .article-body{font-size:1.4375rem}html[data-reading=on]:not([data-reading-font=sans]) .article-body :where(p,li,blockquote,dd,figcaption,.sidenote){font-family:var(--font-display);letter-spacing:.003em}html[data-reading=on] .article-body :where(p,ul,ol,blockquote,h2,h3,h4){max-width:none}html[data-reading=on] .article-body .reading-now{background:color-mix(in oklab, var(--accent) 12%, transparent);box-shadow:-.75rem 0 0 color-mix(in oklab, var(--accent) 12%, transparent), .75rem 0 0 color-mix(in oklab, var(--accent) 12%, transparent);border-radius:.25rem}@media (min-width:80rem){html[data-reading=on] .article-body .sidenote-toggle{display:none}html[data-reading=on] .article-body .sidenote-ref{cursor:default}html[data-reading=on] .article-body .sidenote{float:right;clear:right;background:0 0;border:0;width:13rem;margin:.35rem -15.5rem .75rem 0;padding:0;font-size:.875rem;line-height:1.55;display:block}}@media (prefers-reduced-motion:no-preference){html[data-reading=on] .article-page{animation:.2s ease-out fade-in}}}@media print{.article-body{font-size:10.5pt;line-height:1.6}.article-body :where(p,ul,ol,blockquote,h2,h3,h4){max-width:none}.article-body :is(h2,h3,h4){break-after:avoid}.article-body :is(figure,table,aside,.benchmark,img,.timeline-item){break-inside:avoid}.article-body a[href^=http]:not(.heading-anchor):after{content:" (" attr(href) ")";color:#444;overflow-wrap:anywhere;font-size:.85em}.article-body pre{white-space:pre-wrap;overflow-wrap:anywhere;overflow:visible!important}.article-body .code-block button{display:none}.article-body .code-block pre.has-focused [data-line]:not(.focused){opacity:1}.article-body :is(.incident-card,.code-block-terminal){-webkit-print-color-adjust:exact;print-color-adjust:exact}.article-body .sidenote-toggle{display:none}.article-body .sidenote{float:none;background:0 0;border-left:2px solid #999;width:auto;margin:.4rem 0;padding:.2rem 0 .2rem .6rem;display:block}.article-body .benchmark-notes summary{display:none}}
