.posts{gap:.7rem;display:grid}.postcard{border:1px solid var(--line);background:var(--raise);border-radius:0;padding:1.1rem;text-decoration:none;transition:border-color .2s,background .2s;display:block}.postcard:hover{border-color:var(--red)}.postcard__title{font-family:var(--display);font-size:var(--t-2);letter-spacing:-.022em;text-wrap:balance;font-weight:650;font-stretch:95%;line-height:1.15;transition:color .18s}.postcard:hover .postcard__title{color:var(--red-lit)}.postcard__blurb{color:var(--dim);font-size:var(--t--1);max-width:62ch;margin-top:.4rem}.postmeta{font-size:var(--t--2);color:var(--dim);flex-wrap:wrap;align-items:center;gap:.4rem .9rem;display:flex}.postcard .postmeta{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.7rem}.tag{border:1px solid var(--line);color:var(--dim);white-space:nowrap;border-radius:999px;padding:.15rem .55rem}.flag-draft,.flag-fallback{background:var(--red-wash);color:var(--red-lit);white-space:nowrap;border-radius:999px;padding:.15rem .55rem;font-weight:600}.empty{border:1px dashed var(--dim);text-align:center;color:var(--dim);border-radius:0;padding:2rem 1.25rem}.post{padding-block-end:var(--section-gap)}.post__grid{gap:2rem;display:grid}@media (width>=64rem){.post__grid{grid-template-columns:minmax(0,38rem) minmax(0,1fr);align-items:start;gap:clamp(2.5rem,6vw,5rem)}}.toc{display:none}@media (width>=64rem){.toc{border-left:1px solid var(--line);padding-left:1.1rem;display:block;position:sticky;top:1.75rem}}.toc__title{font-family:var(--display);font-size:var(--t--1);margin-bottom:.6rem;font-weight:650;font-stretch:95%}.toc__list{counter-reset:toc;gap:.1rem;display:grid}.toc__list a{font-size:var(--t--2);color:var(--dim);border-left:2px solid #0000;margin-left:-1.1rem;padding:.35rem 0 .35rem .7rem;line-height:1.4;text-decoration:none;transition:color .18s,border-color .18s;display:block}.toc__list a:hover{color:var(--white)}.toc__list a[aria-current=true]{color:var(--red-lit);border-left-color:var(--red);font-weight:600}.post__head{margin-bottom:clamp(1.75rem,4vw,2.75rem)}.post__title{font-family:var(--display);font-size:var(--t-4);letter-spacing:-.03em;text-wrap:balance;font-weight:700;font-stretch:98%;line-height:1.04}.post__blurb{color:var(--dim);font-size:var(--t-1);margin-top:.9rem;line-height:1.5}.post__head .postmeta{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:.9rem}.notice{border:1px solid var(--line);border-left:3px solid var(--red);background:var(--raise);font-size:var(--t--1);color:var(--dim);border-radius:0;margin-bottom:1.75rem;padding:.9rem 1.1rem}.notice strong{color:var(--white)}.post__back{font-size:var(--t--1);color:var(--dim);align-items:center;gap:.4rem;margin-bottom:1.2rem;margin-left:-.4rem;padding:.3rem .4rem;text-decoration:none;transition:color .18s;display:inline-flex}.post__back:hover{color:var(--red-lit)}.post__back svg{width:.85rem;height:.85rem}.prose{max-width:38rem;color:var(--white);font-size:1.125rem;line-height:1.68}.prose>*+*{margin-top:1.15em}.prose h2{font-family:var(--display);font-size:var(--t-3);letter-spacing:-.025em;border-top:1px solid var(--line);text-wrap:balance;margin-top:2.4em;padding-top:1.1rem;font-weight:700;font-stretch:98%;line-height:1.12}.prose h3{font-family:var(--display);font-size:var(--t-1);letter-spacing:-.015em;text-wrap:balance;margin-top:1.9em;font-weight:650;font-stretch:95%}.prose h2+*,.prose h3+*{margin-top:.6em}.prose a{color:var(--red-lit);text-underline-offset:.18em;text-decoration-thickness:1px}.prose a:hover{text-decoration-thickness:2px}.prose strong{font-weight:650}.prose ul,.prose ol{gap:.5em;padding-left:1.3rem;display:grid}.prose ul{padding-left:0;list-style:none}.prose ul>li{padding-left:1.3rem;position:relative}.prose ul>li:before{content:"";background:var(--red);width:.6rem;height:1px;position:absolute;top:.78em;left:0}.prose ol{list-style:decimal}.prose ol>li::marker{color:var(--dim);font-variant-numeric:tabular-nums}.prose blockquote{border-left:3px solid var(--dim);color:var(--dim);margin:0;padding-left:1.1rem}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.2em}.tablewrap{border:1px solid var(--line);border-radius:0;max-width:100%;overflow-x:auto}.tablewrap:focus-visible{outline:2px solid var(--red-lit);outline-offset:2px}.prose table{border-collapse:collapse;width:100%;font-size:var(--t--1)}.tablewrap table{min-width:30rem}.tablewrap th:first-child,.tablewrap td:first-child{padding-left:.9rem}.tablewrap tr:last-child td{border-bottom:0}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .7rem}.prose th{border-bottom-color:var(--dim);white-space:nowrap;font-weight:650}.prose :not(pre)>code{background:var(--raise);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:5px;padding:.12em .36em;font-family:ui-monospace,Cascadia Mono,SF Mono,Menlo,Consolas,monospace;font-size:.875em}.codeblock{margin-top:1.3em;position:relative}.codeblock__head{border:1px solid var(--line);background:var(--raise);font-size:var(--t--2);color:var(--dim);border-bottom:0;border-radius:0;align-items:center;gap:.6rem;padding:.45rem .7rem;display:flex}.codeblock__lang{font-weight:600}.copy{border:1px solid var(--dim);background:var(--raise);min-height:1.9rem;color:var(--dim);font-size:var(--t--2);cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;margin-left:auto;padding:.2rem .6rem;transition:color .18s,border-color .18s,background .18s;display:inline-flex}.copy:hover{color:var(--white);border-color:var(--red)}.copy[data-state=done]{color:#fff;background:var(--red);border-color:var(--red);font-weight:600}.copy svg{width:.8rem;height:.8rem}.copy[data-state=done] .copy__idle,.copy:not([data-state=done]) .copy__done{display:none}.prose pre{border:1px solid var(--line);tab-size:2;border-radius:0;margin:0;padding:.95rem 1rem;font-size:.875rem;line-height:1.6;overflow-x:auto}.prose>pre{border-radius:0;margin-top:1.3em}.prose pre code{font-family:ui-monospace,Cascadia Mono,SF Mono,Menlo,Consolas,monospace;font-size:inherit;background:0 0;border:0;padding:0}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.ostabs{border:1px solid var(--line);background:var(--raise);border-radius:0;margin-top:1.4em;overflow:hidden}.ostabs__bar{border-bottom:1px solid var(--line);background:var(--raise);flex-wrap:wrap;gap:.3rem;padding:.5rem;display:flex}.ostabs__bar label{text-align:center;font-size:var(--t--1);color:var(--dim);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:0;flex:auto;padding:.45rem .8rem;font-weight:600;transition:color .18s,background .18s,border-color .18s}.ostabs__bar label:hover{color:var(--white);border-color:var(--dim)}.ostabs input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ostabs input:checked+label{background:var(--red);border-color:var(--red);color:#fff}.ostabs input:focus-visible+label{outline:2px solid var(--red-lit);outline-offset:2px}.ostabs__panel{padding:.3rem 1rem 1.1rem}.ostabs__panel>*+*{margin-top:1.1em}.ostabs__panel>:first-child{margin-top:1rem}.ostabs__panel h3{margin-top:1.4em}@supports selector(:has(*)){.ostabs__panel{display:none}.ostabs:has(input[value=mac]:checked) .ostabs__panel[data-os=mac],.ostabs:has(input[value=win]:checked) .ostabs__panel[data-os=win],.ostabs:has(input[value=linux]:checked) .ostabs__panel[data-os=linux]{display:block}}.ostabs__panel:before{content:attr(data-os-label);font-family:var(--display);font-weight:650;font-size:var(--t--1);color:var(--red-lit);margin-top:.9rem;display:block}@supports selector(:has(*)){.ostabs__panel:before{display:none}}.ostabs__panel .prose-scope pre,.ostabs__panel pre{background-color:var(--black)}.sources{border-top:1px solid var(--line);font-size:var(--t--1);color:var(--dim);margin-top:2.5rem;padding-top:1.1rem}.sources h2{font-family:var(--display);font-size:var(--t-1);letter-spacing:-.015em;color:var(--white);margin-bottom:.6rem;font-weight:650;font-stretch:95%}.sources ul{gap:.4rem;display:grid}.sources a{color:var(--red-lit);overflow-wrap:anywhere;text-underline-offset:.18em}
