@font-face{font-family:Plex;src:url('./fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Plex;src:url('./fonts/ibm-plex-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:PlexMono;src:url('./fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
:root{color-scheme:dark;--background:#000;--foreground:#ccc;--muted:#909090;--border:#242424;--focus:#727272;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s6:48px;--s8:64px;--page:1120px;--measure:640px;font-family:Plex,Arial,sans-serif;font-size:16px;line-height:24px}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--foreground)}h1,h2,h3,p,ul,ol,blockquote{margin:0}h1{font-size:40px;line-height:48px;font-weight:400;letter-spacing:-.03em}h2{font-size:24px;line-height:32px;font-weight:400;letter-spacing:-.02em}h3{font-size:16px;line-height:24px;font-weight:500}a{color:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#626262}a:hover{color:#e0e0e0;text-decoration-color:currentColor}button,input{font:inherit;color:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:1px solid var(--focus);outline-offset:4px}::selection{background:#333;color:#ddd}.shell{width:min(100%,var(--page));margin-inline:auto;padding-inline:var(--s4)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);min-height:80px;padding-block:var(--s3)}.brand{font-weight:500;text-decoration:none}.site-header nav,.actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s3)}.site-header nav{font-size:14px;line-height:24px}.site-header nav a{text-decoration:none}.muted,.lead,.meta{color:var(--muted)}.meta{font:12px/16px PlexMono,monospace}.lead{font-size:16px;line-height:24px;max-width:var(--measure)}.actions :is(a,span){font-size:14px;line-height:24px}.actions span{color:var(--muted)}.site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3);border-top:1px solid var(--border);padding-block:calc(var(--s3) - 1px) var(--s3);font:12px/16px PlexMono,monospace;color:var(--muted)}.prose{display:flow-root;overflow-wrap:break-word}.prose>*+*{margin-top:var(--s2)}.prose>h2:not(:first-child){margin-top:var(--s4)}.prose>h3:not(:first-child){margin-top:var(--s3)}.prose>:is(p,ul,ol,blockquote,h2,h3){max-width:var(--measure)}.prose blockquote{border-left:1px solid var(--border);padding-left:var(--s2);color:var(--muted)}.prose li>*+*{margin-top:var(--s1)}.prose ul,.prose ol{padding-left:var(--s3)}.prose li+li{margin-top:var(--s1)}.prose code{font:14px/16px PlexMono,monospace;background:#111;padding:0 4px;overflow-wrap:break-word}.prose pre{padding:calc(var(--s2) - 1px);border:1px solid var(--border);overflow-x:auto;font:14px/24px PlexMono,monospace}.prose pre code{padding:0;background:none;line-height:inherit}.prose strong{font-weight:500}.table-wrap{overflow-x:auto}table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:14px;line-height:24px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:var(--s1) var(--s2) calc(var(--s1) - 1px);vertical-align:top}:is(th,td):first-child{padding-left:0}:is(th,td):last-child{padding-right:0}th{font-weight:400;color:var(--muted)}th:first-child{width:calc(100% / 3)}th:nth-child(2):nth-last-child(2){width:calc(100% / 6)}.skip{position:absolute;top:-100px;padding:var(--s1);background:#111;color:var(--foreground);z-index:5}.skip:focus{top:0}[hidden]{display:none!important}@media(max-width:760px){.shell{padding-inline:var(--s2)}.site-header{flex-wrap:wrap;gap:var(--s2);min-height:0;padding-block:var(--s3)}h1{font-size:32px;line-height:40px}.site-footer{align-items:flex-start;flex-direction:column;gap:var(--s2)}}
.tabs{display:flex;flex-wrap:wrap;gap:0 var(--s3)}.tabs input{position:absolute;opacity:0;pointer-events:none}.tabs label{font-size:14px;line-height:24px;color:var(--muted);border-bottom:1px solid transparent;padding-bottom:calc(var(--s1) - 1px);cursor:pointer}.tabs label:hover{color:var(--foreground)}.tabs input:checked+label{color:var(--foreground);border-bottom-color:var(--foreground)}.tabs input:focus-visible+label{outline:2px solid var(--focus);outline-offset:2px}.tab{display:none;flex:0 0 100%;padding-top:var(--s2)}.tab>*+*{margin-top:var(--s2)}.tab>:is(p,ul,ol){max-width:var(--measure)}.tabs input:nth-of-type(1):checked~.tab:nth-of-type(1),.tabs input:nth-of-type(2):checked~.tab:nth-of-type(2),.tabs input:nth-of-type(3):checked~.tab:nth-of-type(3),.tabs input:nth-of-type(4):checked~.tab:nth-of-type(4){display:block}
.soon{position:relative;color:var(--muted);cursor:default}.soon__spin{display:inline-block;width:10px;height:10px;margin-right:var(--s1);border:1px solid var(--muted);border-top-color:transparent;border-radius:50%;vertical-align:-1px;animation:soon-spin 1s linear infinite}@keyframes soon-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.soon__spin{animation:none}}.soon[data-tip]:is(:hover,:focus-visible)::after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 4px);z-index:1;white-space:nowrap;padding-right:var(--s1);background:var(--background);color:var(--foreground);font-size:12px;line-height:16px}
.roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3)}.roadmap h2{margin-bottom:var(--s1)}.roadmap ul{list-style:none;padding:0;font-size:14px;line-height:24px}.roadmap ul:empty::before{content:'Nothing yet';color:var(--muted)}@media (max-width:640px){.roadmap{grid-template-columns:minmax(0,1fr)}}
