@font-face{font-family:Heading;src:url(../../../fonts/bitcount-single-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-display:optional}@font-face{font-family:Space Mono;src:url(../../../fonts/space-mono-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:optional}@font-face{font-family:Space Mono;src:url(../../../fonts/space-mono-latin-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Space Mono;src:url(../../../fonts/space-mono-latin-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Space Mono;src:url(../../../fonts/space-mono-latin-700-italic.woff2)format("woff2");font-weight:700;font-style:italic;font-display:swap}:root{color-scheme:light dark;--font-text:"Space Mono", ui-monospace, "Cascadia Mono", Menlo, Consolas, monospace;--font-head:"Heading", var(--font-text);--space-2xs:2px;--space-xs:4px;--space-s:8px;--space-m:12px;--space-l:16px;--space-xl:24px;--space-2xl:32px;--gutter:16px;--measure:72ch;--date-column:9ch;--icon-size:24px;--rule:1px solid var(--line)}:root,[data-swatch=catppuccin]{--bg:light-dark(#eff1f5,#1e1e2e);--fg:light-dark(#4c4f69,#cdd6f4);--dim:light-dark(#5c5f77,#a6adc8);--head:light-dark(#8839ef,#cba6f7);--link:light-dark(#1b5fe6,#89b4fa);--prompt:light-dark(#2f7d1f,#a6e3a1);--hot:light-dark(#d20f39,#f38ba8);--line:light-dark(#ccd0da,#313244)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root[data-scheme=mars-exploration],[data-swatch=mars-exploration]{--bg:light-dark(#faf3eb,#211a18);--fg:light-dark(#583d32,#f1e4d8);--dim:light-dark(#7e6c5f,#bca99c);--head:light-dark(#ad573d,#f08d70);--link:light-dark(#8e693e,#ddb17a);--prompt:light-dark(#607655,#a7c18d);--hot:light-dark(#8a6658,#c69b88);--line:light-dark(#ddd2ca,#463e3b)}:root[data-scheme=solar-flare],[data-swatch=solar-flare]{--bg:light-dark(#fff8ed,#201812);--fg:light-dark(#523b2a,#f8ebdd);--dim:light-dark(#846b55,#c7ad98);--head:light-dark(#a85f00,#ffb36b);--link:light-dark(#ba493c,#f28a75);--prompt:light-dark(#8f6d21,#e8c66f);--hot:light-dark(#775c9a,#b99be5);--line:light-dark(#e0d6ca,#473e37)}:root[data-scheme=golden-record],[data-swatch=golden-record]{--bg:light-dark(#fbf8e6,#12100a);--fg:light-dark(#4a4120,#f8f2de);--dim:light-dark(#6f6740,#b8b09a);--head:light-dark(#806a00,#ffd84d);--link:light-dark(#a8521f,#ffb45c);--prompt:light-dark(#56701f,#cbd97a);--hot:light-dark(#a8423a,#ff9478);--line:light-dark(#dfd9bc,#322e20)}:root[data-scheme=aurora-borealis],[data-swatch=aurora-borealis]{--bg:light-dark(#f5f8f6,#0b1311);--fg:light-dark(#1b352a,#e6f4ec);--dim:light-dark(#4f685c,#9db4a8);--head:light-dark(#0f7a42,#5fe39a);--link:light-dark(#6a45c4,#c2a8ff);--prompt:light-dark(#4f6f12,#cdec7c);--hot:light-dark(#b0347e,#f58ac6);--line:light-dark(#d0ddd5,#25332d)}:root[data-scheme=nasa-mission-control],[data-swatch=nasa-mission-control]{--bg:light-dark(#f5f7f8,#101c27);--fg:light-dark(#183d56,#e3edf5);--dim:light-dark(#526574,#a3b7c6);--head:light-dark(#176b9a,#61b9e9);--link:light-dark(#c04c35,#ff806b);--prompt:light-dark(#26805c,#63d5a0);--hot:light-dark(#98671b,#e9bd69);--line:light-dark(#cdd6db,#36424c)}:root[data-scheme=cosmic-nebula],[data-swatch=cosmic-nebula]{--bg:light-dark(#f2f2fb,#14152a);--fg:light-dark(#363a66,#dfe1f8);--dim:light-dark(#5b5e80,#9c9fc0);--head:light-dark(#4b53b8,#a0a8f8);--link:light-dark(#ae4d7e,#e18bb5);--prompt:light-dark(#427a58,#8bd3a5);--hot:light-dark(#946521,#e8bc70);--line:light-dark(#d0d2e4,#383a52)}:root[data-scheme=event-horizon],[data-swatch=event-horizon]{--bg:light-dark(#fff,#000);--fg:light-dark(#000,#fff);--dim:light-dark(#595959,#b0b0b0);--head:light-dark(#000,#fff);--link:light-dark(#333,#d6d6d6);--prompt:light-dark(#4d4d4d,#bdbdbd);--hot:light-dark(#1a1a1a,#e6e6e6);--line:light-dark(#d9d9d9,#2e2e2e);--banner-mid:light-dark(#7a7a7a,#8c8c8c)}*,:before,:after{box-sizing:border-box}:root{scrollbar-color:var(--head) transparent}html{background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:color-mix(in srgb, var(--dim) 30%, transparent);scrollbar-gutter:stable}body{background:var(--bg);color:var(--fg);font:400 clamp(1rem, .95rem + .25vw, 1.1875rem) / 1.7 var(--font-text);font-variant-ligatures:none;margin:0}.site{gap:var(--space-2xl);min-height:100svh;max-width:calc(var(--measure) + 2 * var(--gutter));padding:var(--space-xl) max(var(--gutter), env(safe-area-inset-right)) var(--space-xl) max(var(--gutter), env(safe-area-inset-left));flex-direction:column;margin-inline:auto;display:flex}main{overflow-wrap:anywhere;outline:none;flex:1;min-width:0}a{color:var(--link);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--prompt);outline-offset:2px}::selection{background:var(--head);color:var(--bg)}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}[hidden]{display:none!important}.sr-only,.repeat:not([hidden]+.entry)>:first-child:not(:focus-visible){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{top:-100px;left:var(--gutter);z-index:3;padding:var(--space-xs) var(--space-s);background:var(--bg);position:absolute}.skip-link:focus{top:var(--space-s)}.icon{width:var(--icon-size);height:var(--icon-size);shape-rendering:crispedges;flex:none;display:block}.with-icon{gap:var(--space-xs);align-items:center;display:inline-flex}.plain-list{padding:0;list-style:none}.dated{grid-template-columns:var(--date-column) minmax(0, 1fr);column-gap:var(--space-m);display:grid}@media (width<=520px){.dated{grid-template-columns:minmax(0,1fr);column-gap:0}}.bracketed{white-space:nowrap}.bracketed:before{content:"["}.bracketed:after{content:"]"}.id{font-family:var(--font-head);font-size:1.2em;line-height:1}.top,footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 20px;display:flex}.brand{color:var(--head);font:small-caps 500 1.7em/1.1 var(--font-head);text-decoration:none}nav{gap:var(--space-xs) var(--space-m);flex-wrap:wrap;display:flex}nav a{text-decoration:none}nav a:hover,nav a[aria-current=page]{text-underline-offset:3px;text-decoration:underline}.icon-button{color:var(--link);display:none}:root[data-theme] .icon-button{align-items:center;display:inline-flex}.icon-button:hover{color:var(--head)}:root[data-theme=light] [data-to=light],:root[data-theme=dark] [data-to=dark],:root[data-theme] .appearance .icon-button{display:none}.appearance{display:contents}.schemes{flex-basis:100%;justify-content:center;display:flex}.schemes label{cursor:pointer;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:relative}@media (hover:hover) and (pointer:fine) and (width>=521px){.appearance{top:50%;right:var(--gutter);z-index:1;align-items:center;gap:var(--space-s);flex-direction:column;width:24px;display:flex;position:fixed;transform:translateY(-50%)}:root[data-theme] .appearance .icon-button{display:inline-flex}:root[data-theme] nav [data-theme-toggle]{display:none}.schemes{flex-direction:column;flex:none}.schemes label{width:16px}}@media (hover:hover) and (pointer:fine) and (width>=521px) and (width<=57em){.site{max-width:calc(var(--measure) + var(--gutter) + 48px);padding-right:48px}}.schemes input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.schemes span{background:var(--head);width:10px;height:10px;box-shadow:0 0 0 1px var(--line);forced-color-adjust:none;display:block}.schemes input:checked+span{outline:2px solid var(--fg);outline-offset:1px}.schemes input:focus-visible+span,.banner summary:focus-visible,.keys-help input:focus-visible~svg{outline:2px dashed var(--link);outline-offset:1px}.schemes input:focus-visible+span{outline-offset:2px}.dev-link{top:var(--space-2xs);right:var(--gutter);opacity:.6;font-size:12px;position:absolute}footer{padding-top:var(--space-m);border-top:var(--rule);color:var(--dim)}.more{overflow-wrap:anywhere;margin:0}.more a{color:inherit}@media (hover:none),(pointer:coarse),(width<=520px){.top{flex-direction:column}nav,footer{justify-content:center}.more,.hints{text-align:center;flex-basis:100%;justify-content:center}.more>span{display:none}}.feed-link:hover{color:var(--fg)}.feed-link .icon{vertical-align:middle;display:inline-block}.hints{align-items:center;gap:2ch;margin:0;display:flex}.hint:hover{color:var(--fg)}@media (hover:none),(pointer:coarse){.hints{display:none}}kbd{color:var(--prompt);font:inherit}:root[data-keys-off] .hint kbd{display:none}p,ul,ol,dl,pre,table,blockquote{margin:0 0 1em}h1,h2,h3,h4,h5,h6{color:var(--head);font-family:var(--font-head);text-wrap:balance;margin:1.5em 0 .5em;font-weight:500;line-height:1.25}h1{margin-top:0;font-size:2em}h2{font-size:1.6em}h3{font-size:1.3em}h4,h5,h6{font-size:1.1em}h2.cmd{color:var(--dim);font:400 1em/1.7 var(--font-text);text-wrap:wrap;margin:2em 0 .5em}main>h2.cmd:first-of-type,.read>h2.cmd:first-child{margin-top:0}.cmd span,.more span,.keybar span,.tag{color:var(--prompt)}.empty,.byline,time{color:var(--dim)}.banner{margin:0 0 var(--space-xl);position:relative}.banner-image{--scale:1;height:calc(var(--height) * var(--scale));position:relative;overflow:hidden}.banner-image i{background:var(--tone);mask:var(--image) calc(var(--focus) * 100%) var(--layer) / calc(960px * var(--scale)) calc(var(--height) * 4 * var(--scale)) no-repeat;image-rendering:pixelated;position:absolute;inset:0}.banner-image i:first-of-type{--tone:color-mix(in srgb, var(--banner-mid,var(--head)) 40%, var(--bg));--layer:0%}.banner-image i:nth-of-type(2){--tone:var(--banner-mid,var(--head));--layer:33.333%}.banner-image i:nth-of-type(3){--tone:var(--link);--layer:66.667%}.banner-image i:nth-of-type(4){--tone:var(--fg);--layer:100%}.banner-image canvas{top:0;left:round(calc((100% - 960px * var(--scale)) * var(--focus)), 1px);width:calc(960px * var(--scale));height:100%;image-rendering:pixelated;position:absolute}.banner-image.live i{visibility:hidden}.banner-image.hold i{animation:.8s step-end banner-hold}@keyframes banner-hold{0%,to{visibility:hidden}}@media (width<=512px){.banner-image{--scale:.5}}.error-hero{position:relative}.error-hero h1{padding:var(--space-s) var(--space-l);background:var(--bg);color:var(--fg);font:small-caps 500 clamp(2.5rem, 12vw, 6rem) / 1 var(--font-head);margin:0;position:absolute;top:0;left:0}.error-hero h1 span{display:block}@media (width<=512px){.error-hero h1{padding:var(--space-xs) var(--space-m);font-size:2rem}}.banner summary{z-index:1;color:var(--fg);background:var(--bg);cursor:pointer;list-style:none;display:flex;position:absolute;bottom:0;right:0}.banner summary:after{content:"";position:absolute;inset:-2px}.banner summary::-webkit-details-marker{display:none}.banner summary:hover{color:var(--link)}.banner summary .icon{--icon-size:18px;shape-rendering:auto;margin:1px}.banner details:not([open]) [data-when=open],.banner details[open] [data-when=closed]{display:none}.banner figcaption p{padding:var(--space-2xs) 28px 0 var(--space-s);color:var(--dim);background:var(--bg);border-top:var(--rule);margin:0;font-size:.72em;line-height:1.25rem;position:absolute;bottom:0;left:0;right:0}blockquote{padding-left:var(--space-m);border-left:2px solid var(--hot)}blockquote>:last-child{margin-bottom:0}code{color:var(--prompt);font:inherit;font-size:.94em}pre{padding:var(--space-m);border:var(--rule);line-height:1.55;overflow-x:auto}pre code{color:var(--fg);font-size:.9em}table{border-collapse:collapse;display:block;overflow-x:auto}th,td{padding:var(--space-2xs) var(--space-l) var(--space-2xs) 0;border-bottom:var(--rule);text-align:start}th{color:var(--dim);font-weight:400}img{max-width:100%;height:auto}hr{border:0;border-top:var(--rule);margin:2em 0}.hljs-comment,.hljs-quote,.hljs-meta{color:var(--dim)}.hljs-keyword,.hljs-selector-tag{color:var(--head)}.hljs-string,.hljs-regexp{color:var(--prompt)}.hljs-number,.hljs-literal,.hljs-symbol{color:var(--hot)}.hljs-title,.hljs-section,.hljs-built_in{color:var(--link)}.hljs-attr,.hljs-attribute,.hljs-variable,.hljs-params,.hljs-type{color:var(--prompt)}.entry{border-top:var(--rule);padding-block:10px}.entry>a{color:var(--dim);place-self:start;text-decoration:none}.entry>a:hover{color:var(--fg)}.entry>a time{color:inherit}.entry p:last-of-type{margin-bottom:.25em}.entry p:last-child{margin-bottom:0}.entry:has(a:focus-visible){background:color-mix(in srgb, var(--line) 50%, transparent)}.entry h3{margin:0 0 .25em}.stacked .entry{grid-template-columns:minmax(0,1fr)}@media (width>=521px){.contact{row-gap:var(--space-xs)}}.contact dt{color:var(--dim)}.contact dd{overflow-wrap:anywhere;margin:0}.contact code.id{font-size:1.1em}.contact-links{gap:var(--space-xs) 2ch;margin-top:var(--space-m);flex-wrap:wrap;display:flex}@media (width<=520px){.contact dd{margin-bottom:var(--space-s)}}.keybar,.jump{z-index:2;border-top:var(--rule);background:var(--bg);position:fixed;bottom:0;left:0;right:0}.keybar{padding:6px var(--gutter);gap:1ch;display:flex}.keybar input{min-width:0;color:var(--fg);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:0}.jump ul{max-height:50svh;margin:0;overflow-y:auto}.jump a{padding:var(--space-2xs) var(--gutter);color:var(--fg);justify-content:space-between;gap:2ch;text-decoration:none;display:flex}.jump a[aria-selected=true]{background:color-mix(in srgb, var(--line) 70%, transparent);color:var(--link)}.jump a>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jump code{color:var(--dim);flex-shrink:0}@media (width<=520px){.jump a{flex-direction:column;gap:0}}.jump p{padding:var(--space-2xs) var(--gutter);color:var(--dim);margin:0}.jump .keybar{position:static}.keys-help{max-width:min(60ch, calc(100vw - 2 * var(--gutter)));padding:var(--space-l) 20px;border:var(--rule);background:var(--bg);color:var(--fg)}.keys-help::backdrop{background:color-mix(in srgb, var(--bg) 70%, transparent)}.keys-help h2{margin:0 0 var(--space-s)}.keys-help table{width:100%;display:table}.keys-help td:first-child{color:var(--prompt);white-space:nowrap}.keys-help label{cursor:pointer;align-items:center;gap:1ch;display:flex;position:relative}.keys-help input:not(:checked)~[data-box=on],.keys-help input:checked~[data-box=off]{display:none}@media print{nav,footer,.skip-link{display:none}}
