@font-face{font-family:"Martian Mono";font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/martian-mono-400.woff2) format("woff2")}
@font-face{font-family:"Martian Mono";font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/martian-mono-700.woff2) format("woff2")}
:root{
  --paper:#e6e9ed; --paper-2:#d8dde3; --ink:#0b0c0e; --ink-2:#2a2e35; --hl:#7cc9d6;
  --mono:"Martian Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --fs:13px; --lh:1.75; --gut:16px; --indent:0ch;
}
@media (min-width:640px){:root{--fs:14px;--gut:28px}}
@media (min-width:900px){:root{--indent:7ch}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--fs)/var(--lh) var(--mono);font-variant-ligatures:none;overflow-wrap:break-word}
::selection{background:var(--hl);color:var(--ink)}
a{color:var(--ink);text-decoration:underline;text-underline-offset:.25em;text-decoration-thickness:2px}
a:hover{background:var(--hl);text-decoration-color:transparent}
a:focus-visible,button:focus-visible,pre:focus-visible{outline:3px solid var(--ink);outline-offset:2px;background:var(--hl)}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--paper);padding:.5em 1em;z-index:9}
.skip:focus{left:var(--gut)}
.page{max-width:calc(86ch + 2*var(--gut));margin:0 auto;padding:0 var(--gut)}
.manhead,.mf-row{display:flex;justify-content:space-between;gap:2ch}
.manhead{padding-top:1.4rem;font-weight:700}
.manhead a{text-decoration:none}
.mh-c{display:none}
@media (min-width:640px){.mh-c{display:block}}
.nav{display:flex;flex-wrap:wrap;gap:0 2ch;margin:.4rem 0 clamp(2rem,6vw,4rem)}
.nav a{text-decoration:none;padding:0 .5ch}
.nav a::before{content:"[";}
.nav a::after{content:"]";}
.nav a[aria-current]{background:var(--ink);color:var(--paper)}
.sec{margin:0 0 clamp(2.2rem,5vw,3.6rem)}
.sec h2{margin:0 0 .4rem;font-size:1em;font-weight:700;letter-spacing:0}
.body{padding-left:var(--indent);max-width:calc(80ch + var(--indent))}
.body>:first-child{margin-top:0}
p,ul,ol,dl{margin:0 0 1.2rem}
h1{margin:0;font-size:clamp(2rem,9vw,4.4rem);line-height:1.05;font-weight:700;letter-spacing:-.04em}
h1.h1-sm{font-size:clamp(1.5rem,5.2vw,2.5rem);line-height:1.15;letter-spacing:-.03em}
.cursor{display:inline-block;width:.55em;height:.9em;margin-left:.15em;background:var(--hl);vertical-align:-.08em}
@media (prefers-reduced-motion:no-preference){.cursor{animation:blink 1.1s steps(1) infinite}}
@keyframes blink{50%{opacity:0}}
.lede{margin-top:1rem;font-size:1.1em;max-width:60ch}
.meta{color:var(--ink-2)}
h3{margin:2.2rem 0 .6rem;font-size:1em;font-weight:700}
h3::before{content:"> ";background:var(--hl);padding:0 .3ch;margin-right:.6ch}
.prose ul{padding-left:2ch}
.prose li{margin-bottom:.3rem}
code{font-family:inherit;background:var(--paper-2);padding:.05em .4ch}
pre{margin:0 0 1.4rem;padding:1rem 2ch;background:var(--paper-2);overflow-x:auto;line-height:1.6;tab-size:2}
pre code{background:none;padding:0}
.syn b{background:var(--hl);font-weight:700;padding:0 .3ch}
.syn i{font-style:normal}
.notelist dt{font-weight:700;margin-top:1.1rem}
.notelist dt:first-child{margin-top:0}
.notelist dd{margin:0;padding-left:2ch}
.notelist time{background:var(--paper-2);padding:0 .5ch;margin-right:1ch}
/* pipeline breakdown */
.pipeline{margin:1.6rem 0 0;padding:0}
.pipeline figcaption{font-weight:700;margin-bottom:.8rem}
.cmdline{background:var(--ink);color:var(--paper);padding:1rem 2ch;margin-bottom:1.2rem;overflow-x:auto;white-space:nowrap;line-height:2.1}
.cmdline .ps{color:var(--hl)}
.cmdline .pipe{color:var(--hl);font-weight:700;padding:0 .5ch}
.cmdline .file{opacity:.8}
.cmdline button{font:inherit;color:inherit;background:none;border:0;padding:0 .5ch;cursor:default}
.pipeline.is-live .cmdline button{cursor:pointer}
.cmdline button:hover,.cmdline button[aria-pressed=true]{background:var(--hl);color:var(--ink)}
.cmdline button:focus-visible{outline:3px solid var(--hl);outline-offset:2px}
.stages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem}
.stage{margin:0}
.st-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem 1.5ch}
.st-n{background:var(--ink);color:var(--paper);min-width:3ch;text-align:center;font-weight:700}
.st-h code{background:none;padding:0;font-weight:700}
.st-d{color:var(--ink-2)}
.stage pre{margin:.3rem 0 0 0;padding:.5rem 2ch;max-height:none}
.pipeline.is-live .stage{opacity:.55;transition:opacity .15s}
.pipeline.is-live .stage.is-on,.pipeline.is-live .stage-src{opacity:1}
.pipeline.is-live .stage.is-on .st-n{background:var(--hl);color:var(--ink)}
.pipeline.is-live .stage.is-on pre{background:var(--hl)}
@media (prefers-reduced-motion:reduce){.pipeline.is-live .stage{transition:none}}
.manfoot{margin-top:clamp(3rem,8vw,6rem);padding:1rem 0 1.6rem;background:var(--paper)}
.mf-row{flex-wrap:wrap;color:var(--ink)}
.mf-row:first-child{font-weight:700}
