:root{color-scheme:light dark;--ground:#f9f9fb;--panel:#fcfcfd;--sunk:#f0f0f3;--rule:#cdced6;--rule-soft:#e0e1e6;--ink:#1c2024;--ink-mid:#60646c;--ink-low:#60646c;--bearing:#3a5bc7;--bearing-hover:#1f2d5c;--positive:#1f755d;--conflict:#bf3216;--action-fill:#3e63dd;--action-hover:#3358d4;--action-ink:#fdfdfe;--control-border:#80838d;--brand-soft:#edf2fe;--bearing-lift:var(--bearing-hover);--converged:var(--positive);--caught:var(--conflict)}@media (prefers-color-scheme:dark){:root{--ground:#11131f;--panel:#161821;--sunk:#182449;--rule:#43484e;--rule-soft:#2e3135;--ink:#edeef0;--ink-mid:#c5c8cd;--ink-low:#bcc0c5;--bearing:#a9bbff;--bearing-hover:#d6e1ff;--positive:#1fd8a4;--conflict:#fea38d;--action-fill:#9eb1ff;--action-hover:#d6e1ff;--action-ink:#11131f;--control-border:#696e77;--brand-soft:#182449}}:root{--serif:"TeX Gyre Pagella", Georgia, "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--panel-shadow-color:#11131f0f;--size-9999:9999px;--size-1:1px;--size-2:2px;--size-3:3px;--size-4:4px;--size-5:5px;--size-6:6px;--size-8:8px;--size-9:9px;--size-10:10px;--size-11:11px;--size-12:12px;--size-12_5:12.5px;--size-13:13px;--size-14:14px;--size-15:15px;--size-16:16px;--size-17:17px;--size-18:18px;--size-19:19px;--size-20:20px;--size-21:21px;--size-22:22px;--size-24:24px;--size-26:26px;--size-28:28px;--size-32:32px;--size-34:34px;--size-36:36px;--size-40:40px;--size-44:44px;--size-46:46px;--size-48:48px;--size-52:52px;--size-54:54px;--size-56:56px;--size-60:60px;--size-64:64px;--size-68:68px;--size-76:76px;--size-80:80px;--size-82:82px;--size-88:88px;--size-96:96px;--size-100:100px;--size-128:128px;--size-150:150px;--size-220:220px;--size-480:480px;--size-720:720px;--size-721:721px;--size-760:760px;--size-900:900px;--size-1024:1024px;--size-1080:1080px;--size-1320:1320px}*{box-sizing:border-box}body{background:var(--ground);color:var(--ink);font:var(--size-17)/1.65 var(--serif);margin:0}.container{max-width:var(--size-1320);padding-inline:clamp(var(--size-20), 4vw, var(--size-64));margin-inline:auto}a{color:var(--bearing)}a:hover{color:var(--bearing-hover)}:focus-visible{outline:var(--size-2) solid var(--bearing);outline-offset:var(--size-3);border-radius:var(--size-2)}.skip-link{left:calc(-1 * var(--size-9999));background:var(--ink);color:var(--ground);padding:var(--size-10) var(--size-16);z-index:10;position:absolute;top:0}.skip-link:focus{left:0}.mono{font-family:var(--mono)}.label{font:var(--size-14)/1.4 var(--sans);letter-spacing:.08em}.section-id{font:var(--size-13)/1.4 var(--sans);letter-spacing:.16em;color:var(--bearing);text-transform:uppercase;margin:0 0 var(--size-18)}h1,h2,h3{margin:0;font-weight:400}h2{font-size:clamp(var(--size-34), 4vw, var(--size-54));line-height:1.12}section{padding-block:var(--size-96);border-top:var(--size-1) solid var(--rule)}@media (width<=1024px){section{padding-block:var(--size-64)}}@media (width<=720px){section{padding-block:var(--size-48)}}header.site{border-bottom:var(--size-1) solid var(--rule)}.nav-bar{height:var(--size-88);justify-content:space-between;align-items:center;display:flex}.wordmark{align-items:center;gap:var(--size-12);color:var(--ink);font-size:var(--size-26);text-decoration:none;display:flex}.wordmark .di{color:var(--ink)}.wordmark .ra{color:var(--bearing)}.nav-links{align-items:center;gap:var(--size-28);display:flex}.nav-links a{font:var(--size-14) var(--sans);text-decoration:none}.nav-links a:hover{color:var(--bearing-hover)}.menu-btn{font:var(--size-14) var(--sans);border:var(--size-1) solid var(--rule);border-radius:var(--size-5);padding:var(--size-10) var(--size-16);color:var(--ink);min-height:var(--size-44);background:0 0;display:none}#mobile-menu{padding-bottom:var(--size-20);display:none}#mobile-menu.open{display:block}#mobile-menu a{padding:var(--size-10) 0;border-top:var(--size-1) solid var(--rule);text-decoration:none;display:block}@media (width<=720px){.nav-links{display:none}.menu-btn{align-items:center;display:inline-flex}.nav-bar{height:var(--size-68)}}.hero{padding:var(--size-76) 0 var(--size-88);border-top:0}.hero-grid{gap:var(--size-28);grid-template-columns:repeat(12,1fr);display:grid}.hero-copy{grid-column:span 5}.hero-specimen{grid-column:span 7}.eyebrow{font:var(--size-13) var(--sans);letter-spacing:.16em;color:var(--ink-low);text-transform:uppercase;margin:0 0 var(--size-28)}h1{font-size:clamp(var(--size-52), 6.2vw, var(--size-88));letter-spacing:-.045em;line-height:1.04}h1 em{font-style:italic}.hero-body{font-size:var(--size-19);max-width:40ch;color:var(--ink-mid);margin:var(--size-32) 0 var(--size-36);line-height:1.6}.actions{align-items:center;gap:var(--size-24);flex-wrap:wrap;display:flex}.btn-primary{min-height:var(--size-46);padding:0 var(--size-18);background:var(--action-fill);color:var(--action-ink);border-radius:var(--size-5);font:var(--size-15) var(--sans);cursor:pointer;border:0;align-items:center;text-decoration:none;display:inline-flex}.btn-primary:hover{opacity:.9}.link-underline{font:var(--size-15) var(--sans);color:var(--bearing)}.cmd-row{align-items:center;gap:var(--size-12);margin-top:var(--size-32);background:var(--sunk);border:var(--size-1) solid var(--rule);border-radius:var(--size-5);padding:var(--size-10) var(--size-14);max-width:var(--size-480);display:flex}.cmd-row code{font:var(--size-13) var(--mono);white-space:nowrap;flex:1;overflow-x:auto}.cmd-note{font:var(--size-13) var(--sans);color:var(--ink-low);margin:var(--size-10) 0 0}.specimen{grid-template-columns:var(--size-44) 1fr;display:grid}.rail{padding-block:var(--size-34);flex-direction:column;justify-content:space-between;display:flex;position:relative}.rail:before{content:"";left:var(--size-9);top:var(--size-44);bottom:var(--size-44);width:var(--size-1);background:var(--bearing);opacity:.55;position:absolute}.rail span{z-index:1;width:var(--size-19);height:var(--size-19);background:var(--ground);border:var(--size-1) solid var(--bearing);color:var(--bearing);font:var(--size-11)/var(--size-18) var(--sans);text-align:center;border-radius:50%;position:relative}.specimen-panel{background:var(--panel);border:var(--size-1) solid var(--rule);border-radius:var(--size-6);box-shadow:0 var(--size-8) var(--size-28) var(--panel-shadow-color)}.specimen-head{font:var(--size-12) var(--sans);letter-spacing:.14em;color:var(--ink-low);text-transform:uppercase;padding:var(--size-16) var(--size-24);border-bottom:var(--size-1) solid var(--rule)}.spec-row{grid-template-columns:var(--size-150) 1fr auto;gap:var(--size-16);padding:var(--size-18) var(--size-24);border-bottom:var(--size-1) solid var(--rule);align-items:baseline;display:grid}.spec-row:last-child{border-bottom:0}.spec-key{font:var(--size-13) var(--sans);letter-spacing:.04em;color:var(--ink-low)}.spec-val{font-family:var(--serif);font-size:var(--size-17)}.spec-meta{font:var(--size-12) var(--mono);color:var(--ink-low);white-space:nowrap}.status{color:var(--positive)}.specimen-foot{font:var(--size-13) var(--sans);color:var(--ink-low);padding:var(--size-14) var(--size-24);border-top:var(--size-1) solid var(--rule)}.check-panel{margin:var(--size-22) 0 0 var(--size-44);background:var(--panel);border:var(--size-1) solid var(--rule);border-radius:var(--size-6);padding:var(--size-20) var(--size-24);position:relative}.check-panel:before{content:"";left:var(--size-24);top:calc(-1 * var(--size-22));width:var(--size-1);height:var(--size-22);background:var(--bearing);position:absolute}.check-panel:after{content:"";left:var(--size-24);top:calc(-1 * var(--size-1));width:var(--size-60);height:var(--size-1);background:var(--bearing);position:absolute}.check-cmd{font:var(--size-13) var(--mono);background:var(--sunk);border:var(--size-1) solid var(--rule);border-radius:var(--size-5);padding:var(--size-10) var(--size-14);white-space:nowrap;overflow-x:auto}.check-panel h3{font:var(--size-14) var(--sans);letter-spacing:.04em;color:var(--conflict);margin:var(--size-16) 0 var(--size-6);font-weight:600}.check-panel p{font-size:var(--size-15);color:var(--ink-mid);margin:0}.caption{font:var(--size-12) var(--sans);color:var(--ink-low);margin:var(--size-12) 0 0}.steps-grid{margin-top:var(--size-56);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.step{padding:0 var(--size-36);border-left:var(--size-1) solid var(--rule)}.step:first-child{border-left:0;padding-left:0}.step h3{font-size:var(--size-21);margin:var(--size-14) 0 var(--size-10)}.step-num{font:var(--size-13) var(--mono);color:var(--bearing)}.step p{color:var(--ink-mid);font-size:var(--size-16);margin:0 0 var(--size-18)}.step .cmds{font:var(--size-13) var(--mono);color:var(--ink-low)}.record-grid{gap:var(--size-28);margin-top:var(--size-48);grid-template-columns:repeat(12,1fr);display:grid}.record-copy{grid-column:span 4}.record-demo{grid-column:span 8}.record-controls{gap:var(--size-10);margin-bottom:var(--size-20);flex-wrap:wrap;display:flex}.record-controls button{font:var(--size-14) var(--sans);min-height:var(--size-44);padding:0 var(--size-16);border-radius:var(--size-5);border:var(--size-1) solid var(--rule);background:var(--panel);color:var(--ink);cursor:pointer}.record-panel{background:var(--panel);border:var(--size-1) solid var(--rule);border-radius:var(--size-6)}.record-panel .spec-row{transition:background .15s}.record-panel .spec-row.active{background:var(--sunk);box-shadow:inset var(--size-3) 0 0 var(--bearing)}.record-explain{font-size:var(--size-15);color:var(--ink-mid);padding:var(--size-16) var(--size-24);border-top:var(--size-1) solid var(--rule);min-height:3em;margin:0}.intro{max-width:52ch;color:var(--ink-mid);margin:var(--size-20) 0 0}.repo-grid{gap:var(--size-28);margin-top:var(--size-48);grid-template-columns:repeat(12,1fr);display:grid}.repo-files{background:var(--panel);border:var(--size-1) solid var(--rule);border-radius:var(--size-6);grid-column:span 5}.file-row{justify-content:space-between;gap:var(--size-12);padding:var(--size-13) var(--size-20);border-bottom:var(--size-1) solid var(--rule);font:var(--size-13) var(--mono);display:flex}.file-row:last-child{border-bottom:0}.file-row .quiet{font:var(--size-12) var(--sans);color:var(--ink-low)}.repo-copy{grid-column:span 7}.repo-copy>p{color:var(--ink-mid);max-width:56ch}.edit-row{border-top:var(--size-1) solid var(--rule);margin-top:var(--size-32);padding-top:var(--size-28)}.edit-row h3{font-size:var(--size-21);margin-bottom:var(--size-8)}.edit-row p{color:var(--ink-mid);font-size:var(--size-16);max-width:60ch;margin:0}.install-steps{gap:var(--size-28);margin-top:var(--size-48);grid-template-columns:repeat(3,1fr);display:grid}.install-step{background:var(--panel);border:var(--size-1) solid var(--rule);border-radius:var(--size-6);padding:var(--size-24);flex-direction:column;display:flex}.install-step h3{font-size:var(--size-19);margin:var(--size-10) 0 var(--size-12)}.install-step p{font-size:var(--size-14);color:var(--ink-mid);flex:1}.cmd-block{background:var(--sunk);border:var(--size-1) solid var(--rule);border-radius:var(--size-5);align-items:stretch;display:flex;overflow:hidden}.cmd-block pre{padding:var(--size-12) var(--size-14);font:var(--size-12_5)/1.6 var(--mono);flex:1;margin:0;overflow-x:auto}.copy-btn{border:0;border-left:var(--size-1) solid var(--rule);background:var(--panel);color:var(--bearing);font:var(--size-13) var(--sans);padding:0 var(--size-14);cursor:pointer;min-height:var(--size-44)}.copy-btn:hover{color:var(--bearing-hover)}.install-links{margin-top:var(--size-36);gap:var(--size-28);flex-wrap:wrap;display:flex}.version-label{font:var(--size-12) var(--mono);color:var(--ink-low);align-self:center;margin-left:auto}.faq details{border-bottom:var(--size-1) solid var(--rule);max-width:var(--size-760)}.faq summary{font-size:var(--size-19);cursor:pointer;padding:var(--size-20) 0}.faq p{color:var(--ink-mid);margin:0 0 var(--size-20);max-width:60ch}footer.site{border-top:var(--size-1) solid var(--rule);padding:var(--size-56) 0 var(--size-48)}.footer-grid{justify-content:space-between;gap:var(--size-32);flex-wrap:wrap;align-items:flex-start;display:flex}.footer-tag{color:var(--ink-mid);margin:var(--size-14) 0 0;font-size:var(--size-15)}.footer-links{gap:var(--size-24);flex-wrap:wrap;display:flex}.footer-links a{font:var(--size-14) var(--sans);text-decoration:none}.swahili{font:var(--size-13) var(--sans);color:var(--ink-low);margin:var(--size-28) 0 0}.visually-hidden{width:var(--size-1);height:var(--size-1);clip:rect(0 0 0 0);position:absolute;overflow:hidden}@media (width<=1080px){h1{font-size:clamp(var(--size-44), 7.5vw, var(--size-64))}.hero-copy,.hero-specimen,.record-copy,.record-demo,.repo-files,.repo-copy{grid-column:span 12}.install-steps{grid-template-columns:1fr}}@media (width<=900px){.steps-grid{grid-template-columns:1fr}.step{border-left:0;border-top:var(--size-1) solid var(--rule);padding:var(--size-28) 0 0;margin-top:var(--size-28)}.step:first-child{border-top:0;margin-top:0;padding-top:0}}@media (width<=720px){.spec-row{gap:var(--size-4);grid-template-columns:1fr}.check-panel{margin-left:0}.check-panel:before,.check-panel:after{display:none}}@font-face{font-family:TeX Gyre Pagella;src:url(/assets/fonts/pagella-regular.core.woff2)format("woff2");font-display:swap}@font-face{font-family:TeX Gyre Pagella;src:url(/assets/fonts/pagella-italic.core.woff2)format("woff2");font-style:italic;font-display:swap}@font-face{font-family:TeX Gyre Pagella;src:url(/assets/fonts/pagella-bold.core.woff2)format("woff2");font-weight:700;font-display:swap}html{scroll-padding-top:var(--size-24)}figure{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}.btn-primary:hover{color:var(--action-ink);background:var(--action-hover);opacity:1}.nav-links a{min-height:var(--size-44);align-items:center;display:inline-flex}.nav-links a[aria-current=page]{text-underline-offset:var(--size-6);text-decoration:underline}.specimen-panel,.hero-copy,.hero-specimen,.record-demo,.repo-files,.install-step,.cmd-row,.cmd-block,pre,.guide-content{min-width:0}.spec-row{grid-template-columns:var(--size-128) minmax(0, 1fr)}.spec-meta{white-space:normal;grid-column:2}.hero-copy h1{font-size:clamp(var(--size-52), 5.8vw, var(--size-82))}.spec-row .spec-meta:empty{display:none}.record-explain{min-height:var(--size-100)}.record-controls{display:none}.js .record-controls{display:flex}.copy-btn{display:none}.js .copy-btn{display:inline-block}.faq-list{margin-top:var(--size-40)}.footer-wordmark{font-size:var(--size-22)}.prose{color:var(--ink-mid);max-width:68ch}.prose h2,.prose h3{color:var(--ink)}.prose h2{font-size:var(--size-34);margin-bottom:var(--size-24)}.prose h3{font-size:var(--size-24);margin-block:var(--size-28) var(--size-12)}.prose p{margin-block:var(--size-16)}.prose code,.table-wrap code{font:.82em var(--mono);overflow-wrap:anywhere}.prose pre code{font:inherit;overflow-wrap:normal}pre.code{padding:var(--size-20);background:var(--sunk);border:var(--size-1) solid var(--rule);border-radius:var(--size-6);font:var(--size-13)/1.7 var(--mono);color:var(--ink);overflow:auto}.code-wrap{position:relative}.code-wrap .copy-btn{right:var(--size-1);top:var(--size-1);border-radius:0 var(--size-5) 0 var(--size-5);position:absolute}.code-wrap pre{padding-top:var(--size-52)}.page-heading{padding-block:var(--size-64) var(--size-48);border:0}.page-heading h1{font-size:clamp(var(--size-44), 5vw, var(--size-68));max-width:18ch}.guide-layout{grid-template-columns:var(--size-220) minmax(0, 1fr);gap:var(--size-64);padding-bottom:var(--size-80);display:grid}.guide-nav{top:var(--size-28);font:var(--size-14)/1.5 var(--sans);align-self:start;position:sticky}.guide-nav a{padding:var(--size-10) 0;border-bottom:var(--size-1) solid var(--rule);text-decoration:none;display:block}.guide-content section{padding-block:var(--size-36)}.guide-content section:first-child{border-top:0;padding-top:0}.note{border-left:var(--size-3) solid var(--bearing);padding:var(--size-12) var(--size-20);background:var(--sunk)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:var(--size-16)}th,td{text-align:left;vertical-align:top;border-bottom:var(--size-1) solid var(--rule);padding:var(--size-14) var(--size-16)}th{font:var(--size-13) var(--sans);color:var(--ink-low)}.command-index{gap:var(--size-8);margin-block:var(--size-24);flex-wrap:wrap;display:flex}.command-index a{font:var(--size-13) var(--mono);padding:var(--size-10) var(--size-14);border:var(--size-1) solid var(--rule);border-radius:var(--size-5);text-decoration:none}.command-entry{border-top:var(--size-1) solid var(--rule);padding-block:var(--size-28)}.command-entry h2{font:var(--size-24) var(--mono)}.command-entry p{color:var(--ink-mid)}.command-entry details{margin-top:var(--size-16)}.command-entry summary{cursor:pointer;color:var(--bearing);font:var(--size-14) var(--sans);padding-block:var(--size-12)}.command-entry:target{border-top-color:var(--bearing)}.resource-grid{gap:var(--size-28);margin-top:var(--size-40);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.resource{padding-block:var(--size-24);border-top:var(--size-1) solid var(--bearing)}.resource h3{font-size:var(--size-24)}.resource p{color:var(--ink-mid);font-size:var(--size-16)}@media (width>=721px){#mobile-menu.open{display:none}}@media (width<=1080px){.hero-copy h1{max-width:13ch}.hero-body{max-width:55ch}}@media (width<=720px){.spec-row{grid-template-columns:minmax(0,1fr)}.spec-meta{grid-column:1}.specimen{grid-template-columns:var(--size-28) minmax(0, 1fr)}.spec-row,.specimen-head,.specimen-foot{padding:var(--size-16)}.guide-layout{gap:var(--size-32);grid-template-columns:minmax(0,1fr)}.guide-nav{gap:var(--size-8) var(--size-20);flex-wrap:wrap;display:flex;position:static}.guide-nav .section-id{width:100%}.resource-grid{grid-template-columns:minmax(0,1fr)}.file-row{overflow-wrap:anywhere;flex-wrap:wrap}.cmd-row{gap:0;padding-right:0}.hero{padding-block:var(--size-48)}.js .menu-btn{display:inline-flex}.menu-btn{display:none}html:not(.js) #mobile-menu{display:block}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media print{.menu-btn,.copy-btn,.nav-links,#mobile-menu{display:none!important}.guide-nav{position:static}}.wordmark{gap:var(--size-10);font-family:var(--sans)}.brand-mark{width:var(--size-40);height:var(--size-40);flex:none;display:block}.brand-name{font-size:var(--size-32);letter-spacing:-.06em;color:var(--ink);font-weight:700;line-height:1}.brand-period{color:var(--bearing)}.footer-wordmark .brand-mark{width:var(--size-32);height:var(--size-32)}.footer-wordmark .brand-name{font-size:var(--size-26)}h1 em{color:var(--bearing)}.menu-btn,.record-controls button{border-color:var(--control-border)}.record-controls button[aria-pressed=true]{background:var(--action-fill);color:var(--action-ink);border-color:var(--action-fill)}.copy-btn:hover{background:var(--brand-soft)}
