@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--gray-1:var(--lightningcss-light,#fcfcfc)var(--lightningcss-dark,#111);--gray-2:var(--lightningcss-light,#f9f9f9)var(--lightningcss-dark,#191919);--gray-3:var(--lightningcss-light,#f0f0f0)var(--lightningcss-dark,#222);--gray-4:var(--lightningcss-light,#e8e8e8)var(--lightningcss-dark,#2a2a2a);--gray-5:var(--lightningcss-light,#e0e0e0)var(--lightningcss-dark,#313131);--gray-6:var(--lightningcss-light,#d9d9d9)var(--lightningcss-dark,#3a3a3a);--gray-7:var(--lightningcss-light,#cecece)var(--lightningcss-dark,#484848);--gray-8:var(--lightningcss-light,#bbb)var(--lightningcss-dark,#606060);--gray-9:var(--lightningcss-light,#8d8d8d)var(--lightningcss-dark,#6e6e6e);--gray-10:var(--lightningcss-light,#838383)var(--lightningcss-dark,#7b7b7b);--gray-11:var(--lightningcss-light,#646464)var(--lightningcss-dark,#b4b4b4);--gray-12:var(--lightningcss-light,#202020)var(--lightningcss-dark,#eee);--indigo-1:var(--lightningcss-light,#fdfdfe)var(--lightningcss-dark,#11131f);--indigo-2:var(--lightningcss-light,#f7f9ff)var(--lightningcss-dark,#141726);--indigo-3:var(--lightningcss-light,#edf2fe)var(--lightningcss-dark,#182449);--indigo-4:var(--lightningcss-light,#e1e9ff)var(--lightningcss-dark,#1d2e62);--indigo-5:var(--lightningcss-light,#d2deff)var(--lightningcss-dark,#253974);--indigo-6:var(--lightningcss-light,#c1d0ff)var(--lightningcss-dark,#304384);--indigo-7:var(--lightningcss-light,#abbdf9)var(--lightningcss-dark,#3a4f97);--indigo-8:var(--lightningcss-light,#8da4ef)var(--lightningcss-dark,#435db1);--indigo-9:#3e63dd;--indigo-10:var(--lightningcss-light,#3358d4)var(--lightningcss-dark,#5472e4);--indigo-11:var(--lightningcss-light,#3a5bc7)var(--lightningcss-dark,#9eb1ff);--indigo-12:var(--lightningcss-light,#1f2d5c)var(--lightningcss-dark,#d6e1ff);--amber-1:var(--lightningcss-light,#fefdfb)var(--lightningcss-dark,#16120c);--amber-2:var(--lightningcss-light,#fefbe9)var(--lightningcss-dark,#1d180f);--amber-3:var(--lightningcss-light,#fff7c2)var(--lightningcss-dark,#302008);--amber-4:var(--lightningcss-light,#ffee9c)var(--lightningcss-dark,#3f2700);--amber-5:var(--lightningcss-light,#fbe577)var(--lightningcss-dark,#4d3000);--amber-6:var(--lightningcss-light,#f3d673)var(--lightningcss-dark,#5c3d05);--amber-7:var(--lightningcss-light,#e9c162)var(--lightningcss-dark,#714f19);--amber-8:var(--lightningcss-light,#e2a336)var(--lightningcss-dark,#8f6424);--amber-9:#ffc53d;--amber-10:var(--lightningcss-light,#ffba18)var(--lightningcss-dark,#ffd60a);--amber-11:var(--lightningcss-light,#ab6400)var(--lightningcss-dark,#ffca16);--amber-12:var(--lightningcss-light,#4f3422)var(--lightningcss-dark,#ffe7b3);--indigo-contrast:#fff;--destructive:var(--lightningcss-light,#4f3422)var(--lightningcss-dark,#ffca16);--line:.5px;--text-12:12px;--leading-12:16px;--text-14:14px;--leading-14:20px;--text-20:20px;--leading-20:28px;--text-48:48px;--leading-48:52px;--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-14:14px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-40:40px;--space-48:48px;--space-64:64px;--space-88:88px;--space-96:96px;--space-104:104px;--radius-sm:4px;--radius-row:6px;--radius-md:8px;--radius-box:10px;--radius-frame:16px;--radius-pill:999px;--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--motion-map:.25s;--motion-draw:.3s;--shadow-float:0 8px 24px #00000014}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media print{:root,:root[data-theme]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}@media (prefers-reduced-motion:reduce){:root{--motion-map:0s;--motion-draw:0s}}*,:before,:after{box-sizing:border-box}html{font-feature-settings:"tnum"}body{background:var(--gray-1);color:var(--gray-12);font:var(--text-14)/var(--leading-14) var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}b,strong,th{font-weight:600}code{font-family:var(--font-mono);font-size:inherit}:focus-visible{z-index:1;outline:2px solid var(--gray-12);outline-offset:2px;position:relative}.skip{left:var(--space-8);padding:var(--space-8);background:var(--gray-2);color:var(--gray-12);position:absolute;top:-100px}.skip:focus{top:var(--space-8);z-index:2}.wordmark{align-items:center;gap:var(--space-8);font-weight:600;display:flex}.logo{flex:none;display:block}.logo-spec{fill:var(--indigo-9)}.logo-skill{fill:var(--amber-9)}.logo-both{fill:var(--gray-12)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[hidden]{display:none!important}:root{--gap:min(var(--space-88), 7.75vw)}.wrap{width:100%;max-width:1136px;padding:0 var(--space-32);margin:0 auto}@media (max-width:1199px){.wrap{max-width:1168px;padding:0 var(--space-48)}}.two{column-gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.muted{color:var(--gray-11)}.mono{font-family:var(--font-mono)}.hdr{height:56px;box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-6);position:relative}.hdr-in{justify-content:space-between;align-items:center;height:100%;display:flex}.brand{color:var(--gray-12);text-decoration:none;display:flex}.nav{align-items:center;gap:var(--space-24);color:var(--gray-11);display:flex}.nav a,.nav button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.nav a:hover,.nav button:hover{color:var(--gray-12)}.menu{-webkit-tap-highlight-color:transparent;display:none}.hdr-end{align-items:center;gap:var(--space-24);display:flex}.theme-btn{width:32px;height:32px;margin:0 calc(-1 * var(--space-8));border-radius:var(--radius-row);color:var(--gray-11);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.theme-btn:hover{color:var(--gray-12)}.icon-btn{border-radius:var(--radius-row);width:32px;height:32px;color:var(--gray-11);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.icon-btn:hover{background:var(--gray-3);color:var(--gray-12)}.hero{padding:var(--space-104) 0 var(--space-64)}.hero-in{align-items:end}.hero h1{margin:0 0 var(--space-20);font-size:var(--text-48);line-height:var(--leading-48);letter-spacing:-.035em;text-wrap:balance;font-weight:600}.hero-lede{color:var(--gray-11);font-size:var(--text-20);line-height:var(--leading-20);letter-spacing:-.01em;text-wrap:pretty;margin:0}.load{gap:var(--space-12);flex-direction:column;min-width:0;display:flex}.source{margin:0}.source-field{--field-h:40px;align-items:flex-end;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-16);border-radius:var(--radius-box);background:var(--gray-1);box-shadow:inset 0 0 0 var(--line) var(--gray-8);display:flex;container-type:inline-size}.source-field[data-drop]{background:var(--gray-3)}.source-field:has(.input:focus-visible){outline:2px solid var(--gray-12);outline-offset:2px}.source .input{min-width:0;height:var(--field-h);padding:calc((var(--field-h) - var(--leading-14)) / 2) 0;resize:none;color:var(--gray-12);font:inherit;background:0 0;border:0;flex:1}.source .input:focus-visible{outline:none}.source .input:focus{height:auto;min-height:var(--field-h);field-sizing:content;max-height:12lh}.source .input::placeholder{color:var(--gray-11);opacity:1;text-overflow:ellipsis}.source .input:placeholder-shown{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.source-field .icon-btn{margin:0 var(--space-4) var(--space-4) 0}.generate{height:var(--field-h);padding:0 var(--space-16);border-radius:var(--radius-row);background:var(--indigo-9);color:var(--indigo-contrast);font:500 var(--text-14)/var(--leading-14) var(--font-sans);white-space:nowrap;cursor:pointer;border:0;flex:none}.generate[data-stage]{min-width:112px}@container (width>=396px){.generate{min-width:112px}}.samples{align-items:center;gap:var(--space-8) var(--space-16);flex-wrap:wrap;display:flex}.samples-label{color:var(--gray-11)}.seg{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-box);background:var(--gray-3);display:inline-flex}.samples .seg{flex:1 0 max-content;grid-template-columns:repeat(3,minmax(max-content,1fr));display:grid}.seg-item{height:32px;padding:0 var(--space-12);border-radius:var(--radius-row);color:var(--gray-11);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.seg-item:hover{color:var(--gray-12)}.seg-item:has(:checked){background:var(--gray-1);color:var(--gray-12);box-shadow:0 0 0 var(--line) var(--gray-7);font-weight:500}.seg-item:has(:focus-visible){outline:2px solid var(--gray-12);outline-offset:2px}.frame{margin:0 calc(-1 * var(--space-32));padding:var(--space-32);border-radius:var(--radius-frame);box-shadow:inset 0 0 0 var(--line) var(--gray-7)}.frame:focus{outline:none}.block{padding-top:var(--space-96)}.block:focus,.block:focus-visible{outline:none}.block h2,.made h2{margin:0 0 var(--space-8)}.two h2+p,.block h2+p{margin:0}#cli h2+p{max-width:44ch}.cli{border-radius:var(--radius-box);background:var(--gray-2);min-width:0;box-shadow:inset 0 0 0 var(--line) var(--gray-6);position:relative}.cli pre{padding:var(--space-14) var(--space-48) var(--space-14) var(--space-16);font:var(--text-12)/20px var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.cli-line{text-indent:-2ch;padding-left:2ch;display:block}.cli-p{color:var(--gray-11)}.cli .icon-btn{top:var(--space-8);right:var(--space-8);position:absolute}.how{column-gap:var(--gap);margin:var(--space-24) 0 0;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid}.how li{padding-top:var(--space-16);box-shadow:inset 0 var(--line) 0 var(--gray-7)}.how b{margin-bottom:var(--space-4);display:block}.how p{color:var(--gray-11);margin:0}.made{margin-top:var(--space-96)}.made-in{padding-top:var(--space-48);box-shadow:inset 0 var(--line) 0 var(--gray-6)}.made-in h2+p{margin:0 0 var(--space-12)}.ul{color:var(--gray-12);font-size:var(--text-12);line-height:var(--leading-12);text-decoration:underline;text-decoration-thickness:var(--line);text-underline-offset:3px}.projects{margin:0;padding:0;list-style:none;container-type:inline-size}.projects a{column-gap:var(--gap);padding:var(--space-14) 0;color:var(--gray-12);box-shadow:inset 0 var(--line) 0 var(--gray-6);grid-template-columns:repeat(2,minmax(0,1fr));text-decoration:none;display:grid}.projects li:first-child a{padding-top:var(--space-4);box-shadow:none}.projects b{font-weight:500}.project-text{color:var(--gray-11);grid-area:1/2/span 2}.projects code{min-width:0;margin-top:var(--space-4);color:var(--gray-11);font-size:var(--text-12);overflow-wrap:anywhere;line-height:20px}@container (width<490px){.projects a{grid-template-columns:minmax(0,1fr)}.project-text{grid-area:auto/1}.projects code{margin-top:0}}.projects a:hover b{text-decoration:underline;text-decoration-thickness:var(--line);text-underline-offset:3px}.foot{margin-top:var(--space-64)}.foot-note{margin:0 0 var(--space-24);font-size:var(--text-12);line-height:var(--leading-12)}.foot-in{height:72px;box-shadow:inset 0 var(--line) 0 var(--gray-6);justify-content:space-between;align-items:center;display:flex}@media (max-width:959px){.two.hero-in{row-gap:var(--space-24);grid-template-columns:minmax(0,1fr)}}@media (max-width:639px){.wrap{padding:0 var(--space-16)}.two,.how{row-gap:var(--space-16);grid-template-columns:minmax(0,1fr)}.hdr-end{gap:0}.menu{width:44px;height:44px;color:var(--gray-12);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.theme-btn{width:44px;height:44px;margin:0 calc(-1 * var(--space-14)) 0 0;color:var(--gray-12)}.hdr .nav{display:none}.hdr .nav[data-open]{z-index:4;padding:var(--space-8) var(--space-16);background:var(--gray-1);box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-6);flex-direction:column;align-items:stretch;gap:0;display:flex;position:absolute;top:100%;left:0;right:0}.hdr .nav[data-open] a{align-items:center;min-height:44px;display:flex}.hero{padding:var(--space-40) 0 var(--space-32)}.hero-lede{font-size:var(--text-14);line-height:var(--leading-14);letter-spacing:0}.source-field{padding:var(--space-4);flex-wrap:wrap}.source .input{padding-inline:var(--space-12)}.generate{flex-basis:100%}.samples{align-items:stretch;gap:var(--space-8);flex-direction:column}.samples .seg{flex:none;grid-template-columns:auto auto auto}.seg-item{padding:0 var(--space-8)}.frame{margin:0 calc(-1 * var(--space-16));padding:var(--space-32) var(--space-16) 0;box-shadow:inset 0 var(--line) 0 var(--gray-6);border-radius:0}.block{padding-top:var(--space-64)}.made{margin-top:var(--space-64)}.made-in{padding-top:var(--space-40)}.foot-in{height:auto;padding:var(--space-24) 0;align-items:flex-start;gap:var(--space-16);flex-direction:column}.foot-nav{gap:var(--space-8) var(--space-20);flex-wrap:wrap}}.btn{justify-content:center;align-items:center;gap:var(--space-8);height:32px;padding:0 var(--space-12);border-radius:var(--radius-row);background:var(--gray-1);box-shadow:inset 0 0 0 var(--line) var(--gray-8);color:var(--gray-12);font:500 var(--text-14)/var(--leading-14) var(--font-sans);white-space:nowrap;cursor:pointer;border:0;display:inline-flex}.btn.lg{height:40px;padding:0 var(--space-16)}.btn svg{flex:none}.btn:not(:disabled,.primary):hover{background:var(--gray-3)}.btn.primary{background:var(--indigo-9);box-shadow:none;color:var(--indigo-contrast)}.btn:disabled{cursor:not-allowed;box-shadow:inset 0 0 0 var(--line) var(--gray-6);background:var(--gray-2);color:var(--gray-11)}h2{margin:0 0 var(--space-16);font-size:var(--text-20);line-height:var(--leading-20);letter-spacing:-.015em;font-weight:600}h3,h4{font-weight:600}.lede{color:var(--gray-11);margin:0}.fhead{justify-content:space-between;align-items:flex-start;gap:var(--space-24);margin-bottom:var(--space-32);display:flex}.fhead-l{min-width:0}.ftitle{margin:0 0 var(--space-4);overflow-wrap:anywhere}.meta{align-items:center;gap:var(--space-4) var(--space-20);color:var(--gray-11);flex-wrap:wrap;display:flex}.meta b{color:var(--gray-12);font-weight:500}.tag{height:20px;padding:0 var(--space-6);border-radius:var(--radius-sm);background:var(--gray-3);color:var(--gray-11);font-size:var(--text-12);white-space:nowrap;line-height:20px}.tag-btn{cursor:pointer;text-decoration:underline;text-decoration-thickness:var(--line);text-underline-offset:3px;border:0;font-family:inherit}.tag-btn:hover{color:var(--gray-12)}.fhead-actions{gap:var(--space-8);flex:none;display:flex}.warnings{max-height:12rem;margin:calc(-1 * var(--space-16)) 0 var(--space-32);padding-left:var(--space-24);color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);overflow:auto}.install-cmds{align-items:flex-start;gap:var(--space-8);margin:calc(-1 * var(--space-16)) 0 var(--space-32);padding:var(--space-8) var(--space-8) var(--space-8) var(--space-12);border-radius:var(--radius-box);background:var(--gray-2);box-shadow:inset 0 0 0 var(--line) var(--gray-6);display:flex}.install-cmds pre{min-width:0;font:var(--text-12)/20px var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;flex:1;margin:0}.tools{justify-content:space-between;align-items:center;gap:var(--space-12) var(--space-16);margin-bottom:var(--space-24);flex-wrap:wrap;display:flex}.tools-l{align-items:center;gap:var(--space-12);flex-wrap:wrap;display:flex}.search{align-items:center;gap:var(--space-8);width:202px;height:40px;padding:0 var(--space-12);border-radius:var(--radius-box);box-shadow:inset 0 0 0 var(--line) var(--gray-7);color:var(--gray-11);display:flex}.search svg{fill:none;stroke:currentColor;stroke-width:1.25px;stroke-linecap:round;flex:none}.search input{min-width:0;height:100%;color:var(--gray-12);font:inherit;appearance:none;background:0 0;border:0;outline:none;flex:1;padding:0}.search input::-webkit-search-cancel-button{appearance:none}.search input::placeholder{color:var(--gray-11);opacity:1}.search:has(input:focus-visible){outline:2px solid var(--gray-12);outline-offset:2px}.search kbd{text-align:center;min-width:20px;height:20px;line-height:20px}.legend{align-items:center;gap:var(--space-8) var(--space-20);color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:var(--space-8);display:inline-flex}.legend svg{flex:none}.lg-feed,.lg-route{fill:none}.lg-feed{stroke:var(--gray-9);stroke-width:1px}.lg-feed[data-inferred]{stroke-dasharray:3 3}.lg-route{stroke:var(--indigo-9);stroke-width:2.5px;stroke-linecap:round}.map-wrap{position:relative}.map-scroll{margin-right:calc(-1 * var(--space-32));overscroll-behavior-x:contain;overflow:auto hidden}.map-scroll:focus-visible{outline:2px solid var(--gray-12);outline-offset:-2px}.route{position:relative}.route-origin{position:absolute}.links{pointer-events:none;fill:none;position:absolute;overflow:visible}.ln{stroke:var(--gray-9);stroke-width:1px}.ln[data-faded]{stroke:var(--gray-5)}.ln[data-inferred],.ln-hot[data-inferred]{stroke-dasharray:3 3}.ln-hot{stroke:var(--gray-12);stroke-width:1.25px}.halo{stroke:var(--gray-1);stroke-width:6px;stroke-linecap:round}.wf{stroke:var(--indigo-9);stroke-width:2.5px;stroke-linecap:round}.ah,.ahk{fill:none;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}.ah{stroke:var(--gray-9)}.ahk{stroke:var(--gray-12)}.ahr{fill:var(--indigo-9)}.rc{width:202px;padding-bottom:var(--space-4);border-radius:var(--radius-md);background:var(--gray-1);box-shadow:inset 0 0 0 var(--line) var(--gray-7);position:absolute}.rc-head{justify-content:space-between;align-items:center;gap:var(--space-8);height:36px;padding:0 var(--space-12);font-size:var(--text-14);line-height:var(--leading-14);box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-6);margin:0;font-weight:600;display:flex}.rc-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rc-count{color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);flex:none;font-weight:400}.op{align-items:center;gap:var(--space-6);width:calc(100% - var(--space-8));height:32px;margin:0 var(--space-4);padding:0 var(--space-6) 0 var(--space-10);border-radius:var(--radius-row);color:var(--gray-12);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.route:is([data-hot],[data-fading]) .ln{transition:stroke var(--motion-map) ease-out}.route:is([data-hot],[data-fading]) .op{transition:background-color var(--motion-map) ease-out}.route:is([data-hot],[data-fading]) :is(.op .m,.op .id,.rc-name){transition:color var(--motion-map) ease-out}.op:focus-visible{outline-offset:-2px}.op .m{width:44px;color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-mono);white-space:nowrap;flex:none}.op .m[data-destructive]{color:var(--destructive)}.warn{flex:none}.warn-bg{fill:var(--amber-11)}.warn-x{fill:none;stroke:var(--gray-1);stroke-width:1.5px;stroke-linecap:round}.op .id{min-width:0;font:var(--text-14)/var(--leading-14) var(--font-mono);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.op[data-lit] .m{color:var(--gray-12);font-weight:500}.op[data-lit] .m[data-destructive]{color:var(--destructive)}.op[data-lit] .id{color:var(--gray-12);font-weight:600}.op[data-route] .id{color:var(--indigo-11);font-weight:600}.op:hover,.op[data-hot]{background:var(--gray-3)}.op[data-dim] .m,.op[data-dim] .id{color:var(--gray-11);font-weight:400}.rc[data-dim] .rc-name{color:var(--gray-11);font-weight:500}.op[data-target]{outline:2px dashed var(--gray-12);outline-offset:-2px}.op[data-route]:after{content:attr(data-route);background:var(--indigo-9);width:18px;height:18px;color:var(--indigo-contrast);font:600 var(--text-12)/18px var(--font-sans);text-align:center;border-radius:50%;flex:none}.op.more .m{align-items:center;display:flex}.op.more svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.op.more[aria-expanded=true] svg{transform:rotate(180deg)}.op.more .id{color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-sans)}.map-credit{margin:var(--space-8) 0 0;color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);text-align:right}.op-card{z-index:3;width:300px;padding:var(--space-16);border-radius:var(--radius-box);background:var(--gray-1);box-shadow:0 0 0 var(--line) var(--gray-7), var(--shadow-float);overflow-wrap:anywhere;position:absolute;overflow-y:hidden}.op-card[role=dialog]{overflow-y:auto}.oc-head{justify-content:space-between;align-items:flex-start;gap:var(--space-8);display:flex}.oc-path{color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-mono);margin:0}.oc-close{height:24px;margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-8)) 0 0;padding:0 var(--space-8);border-radius:var(--radius-row);color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-sans);cursor:pointer;background:0 0;border:0;flex:none}.oc-close:hover{background:var(--gray-3);color:var(--gray-12)}.oc-title{margin:var(--space-4) 0 var(--space-12);font-size:var(--text-14);line-height:var(--leading-14);font-weight:600}.oc-flag{margin-left:var(--space-8);padding:0 var(--space-4);border-radius:var(--radius-sm);background:var(--gray-3);color:var(--gray-11);font-size:var(--text-12);font-weight:400}.oc-desc{margin:calc(-1 * var(--space-4)) 0 var(--space-12);color:var(--gray-11);white-space:pre-line}.op-card dl{gap:var(--space-8) var(--space-12);font-size:var(--text-12);line-height:var(--leading-12);grid-template-columns:88px minmax(0,1fr);margin:0;display:grid}.op-card dt{color:var(--gray-11)}.op-card dd{margin:0}.oc-feed{display:block}.oc-feed+.oc-feed{margin-top:var(--space-4)}.oc-via{color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-mono);display:block}.nowrap{white-space:nowrap}.oc-link,.oc-ref{color:var(--gray-12);font:inherit;font-family:var(--font-mono);cursor:pointer;text-decoration:underline;text-decoration-thickness:var(--line);text-underline-offset:3px;-webkit-text-decoration-color:var(--gray-8);text-decoration-color:var(--gray-8);background:0 0;border:0;padding:0}.oc-ref{color:var(--indigo-11);text-decoration-color:currentColor}.oc-example{margin:var(--space-16) 0 var(--space-8);padding:var(--space-8);border-radius:var(--radius-row);background:var(--gray-2);box-shadow:inset 0 0 0 var(--line) var(--gray-6);font:var(--text-12)/var(--leading-12) var(--font-mono);white-space:pre;overflow-x:auto}.oc-actions{font-size:var(--text-12);line-height:var(--leading-12);align-items:center;margin:0;display:flex}.oc-copy{height:32px;padding:0 var(--space-12);border-radius:var(--radius-row);background:var(--gray-1);color:var(--gray-12);box-shadow:inset 0 0 0 var(--line) var(--gray-8);font:500 var(--text-14)/var(--leading-14) var(--font-sans);cursor:pointer;border:0}kbd{padding:0 var(--space-4);box-shadow:inset 0 0 0 var(--line) var(--gray-7);border-radius:var(--radius-sm);color:var(--gray-11);font:var(--text-12) var(--font-mono);white-space:nowrap}.tabs{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-box);background:var(--gray-3);display:inline-flex}.tabs [role=tab]{height:32px;padding:0 var(--space-12);border-radius:var(--radius-row);color:var(--gray-11);font:inherit;cursor:pointer;background:0 0;border:0}.tabs [role=tab]:hover{color:var(--gray-12)}.tabs [aria-selected=true]{background:var(--gray-1);color:var(--gray-12);box-shadow:0 0 0 var(--line) var(--gray-7);font-weight:500}.caption{align-items:center;gap:var(--space-8) var(--space-12);margin-top:var(--space-16);color:var(--gray-11);flex-wrap:wrap;display:flex}.chain{align-items:center;gap:var(--space-8);color:var(--gray-12);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chain li{align-items:center;gap:var(--space-8);display:inline-flex}.chain .mono{font-size:var(--text-14)}.chain .via{color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12)}.stop{background:var(--indigo-9);width:18px;height:18px;color:var(--indigo-contrast);font:600 var(--text-12)/18px var(--font-sans);text-align:center;border-radius:50%;flex:none}.tools+.caption{margin:0 0 var(--space-24)}.tools+.caption[data-compact]{margin:0 0 var(--space-8)}.caption[data-compact] .chain{row-gap:var(--space-4)}.caption[data-compact] .chain li{white-space:nowrap}.skill-browser{column-gap:var(--gap);margin-top:var(--space-40);padding-top:var(--space-32);box-shadow:inset 0 var(--line) 0 var(--gray-6);grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);align-items:start;display:grid}@media (min-width:640px){.skill-browser{grid-template-columns:minmax(0, 1fr) calc(2 * (100% - 3 * var(--gap)) / 4 + var(--gap)) minmax(0, 1fr)}}.sb-files,.sb-preview,.sb-audit{min-width:0}.sb-head{justify-content:space-between;align-items:center;gap:var(--space-8);height:20px;margin:0 0 var(--space-16);font-size:var(--text-14);line-height:var(--leading-14);font-weight:600;display:flex}.sb-head:focus{outline:none}.sb-head:focus-visible{outline:2px solid var(--gray-12);outline-offset:2px}.sb-head.mono{font-family:var(--font-mono)}.sb-note{color:var(--gray-11);margin:0}.tree{margin:0 calc(-1 * var(--space-8))}[role=treeitem]{align-items:center;gap:var(--space-8);min-height:28px;padding:0 var(--space-8) 0 calc(var(--space-8) + (var(--level) - 1) * var(--space-16));border-radius:var(--radius-row);color:var(--gray-12);cursor:pointer;outline-offset:-2px;display:flex}[role=treeitem] svg{color:var(--gray-11);flex:none}[role=treeitem] .n{min-width:0;font:var(--text-12)/var(--leading-12) var(--font-mono);overflow-wrap:anywhere;flex:1}[role=treeitem] .count{color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12)}[role=treeitem]:hover,[role=treeitem][aria-selected=true]{background:var(--gray-3)}.writing .outline{margin:0 0 var(--space-8);color:var(--gray-11);font:var(--text-12)/28px var(--font-mono);padding:0;list-style:none}.edit{margin-top:var(--space-16);color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-sans);cursor:pointer;text-decoration:underline;text-decoration-thickness:var(--line);text-underline-offset:3px;background:0 0;border:0;padding:0;display:block}.edit:hover{color:var(--gray-12)}.options{gap:var(--space-4);margin-top:var(--space-12);font-size:var(--text-12);line-height:var(--leading-12);display:grid}.options label{color:var(--gray-11)}.options .help{margin:0 0 var(--space-8);color:var(--gray-11)}.options .check{align-items:center;gap:var(--space-8);min-height:28px;color:var(--gray-12);display:flex}.field{min-width:0;height:32px;padding:0 var(--space-8);border-radius:var(--radius-row);background:var(--gray-1);box-shadow:inset 0 0 0 var(--line) var(--gray-8);color:var(--gray-12);font:var(--text-12)/var(--leading-12) var(--font-mono);border:0}.field[aria-invalid=true]{box-shadow:inset 0 0 0 var(--line) var(--amber-8)}.sb-preview h3{align-items:baseline;gap:var(--space-8);min-width:0;font-size:var(--text-14);line-height:var(--leading-14);margin:0;display:flex}.sb-preview .fname{overflow-wrap:anywhere}.sb-preview .lines{color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);white-space:nowrap;font-weight:400}.sb-tools{align-items:center;gap:var(--space-4);margin-right:calc(-1 * var(--space-6));display:flex}.sb-preview .icon-btn{width:28px;height:28px}.sb-close{height:28px;padding:0 var(--space-8);border-radius:var(--radius-row);color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-sans);cursor:pointer;background:0 0;border:0}.code{max-height:392px;padding:var(--space-12) 0;border-radius:var(--radius-box);background:var(--gray-2);box-shadow:inset 0 0 0 var(--line) var(--gray-6);font:var(--text-12)/20px var(--font-mono);color:var(--gray-12);outline-offset:-2px;overflow-y:auto}.code .l{min-height:20px;padding-right:var(--space-16);white-space:pre-wrap;overflow-wrap:anywhere;display:flex}.code .l:before{content:attr(data-n) / "";width:44px;padding-right:var(--space-16);color:var(--gray-11);text-align:right;-webkit-user-select:none;user-select:none;flex:none}.sb-preview[data-stale] .code{box-shadow:inset 0 0 0 var(--line) var(--gray-8)}.verdict{align-items:center;gap:var(--space-8);display:inline-flex}.tally{align-items:center;gap:var(--space-8);color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);font-weight:400;display:inline-flex}.i-verdict circle{fill:var(--indigo-9)}.i-verdict path{stroke:var(--indigo-contrast)}.i-verdict[data-ok=false] circle{fill:var(--amber-11)}.i-verdict[data-ok=false] path{stroke:var(--gray-1)}.checks{margin:0;padding:0;list-style:none}.checks li{gap:var(--space-8);padding:calc(var(--space-14) / 2) 0;box-shadow:inset 0 var(--line) 0 var(--gray-6);font-size:var(--text-12);line-height:var(--leading-12);display:flex}.checks li:first-child{box-shadow:none;padding-top:0}.checks svg{margin-top:calc(var(--space-2) / 2);color:var(--indigo-11);flex:none}.checks .i-fail{color:var(--amber-11)}.checks strong{font-weight:600}.audit-row{width:100%;height:44px;color:var(--gray-12);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;font-weight:600;display:flex}.audit-row[aria-expanded=true] .i-chev{transform:rotate(90deg)}.list{min-width:0;margin:0 calc(-1 * var(--space-8));padding:0 var(--space-8)}.lgroup+.lgroup{margin-top:var(--space-24)}.lhead{margin:0}.lhead button{width:100%;height:28px;color:var(--gray-12);font:600 var(--text-14)/var(--leading-14) var(--font-sans);text-align:left;cursor:pointer;box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-6);background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;display:flex}.lcount{align-items:center;gap:var(--space-8);color:var(--gray-11);font-size:var(--text-12);line-height:var(--leading-12);font-weight:400;display:inline-flex}.lhead [aria-expanded=true] .i-chev{transform:rotate(90deg)}.lrows{margin:var(--space-4) 0 0;padding:0;list-style:none}.lrows>li{box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-5)}.lrow{align-items:center;gap:var(--space-8);width:calc(100% + 2 * var(--space-8));min-height:44px;margin:0 calc(-1 * var(--space-8));padding:var(--space-4) var(--space-8);border-radius:var(--radius-row);color:var(--gray-12);font:inherit;text-align:left;cursor:pointer;outline-offset:-2px;background:0 0;border:0;display:flex}.lrow:hover,.list:is([data-hover],[data-fading]) .lrow{transition:background-color var(--motion-map) ease-out}.lrow:hover,.lrow[data-open]{background:var(--gray-3)}.lrow .m{width:48px;color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-mono);flex:none}.lrow .m[data-destructive]{color:var(--destructive)}.lid{flex:1;min-width:0}.lrow .id{font:var(--text-14)/var(--leading-14) var(--font-mono);overflow-wrap:anywhere;display:block}.lrow .path{color:var(--gray-11);font:var(--text-12)/var(--leading-12) var(--font-mono);overflow-wrap:anywhere;display:block}.lrow[data-route] .id{color:var(--indigo-11);font-weight:600}.lrow[data-route]:after{content:attr(data-route);background:var(--indigo-9);width:18px;height:18px;color:var(--indigo-contrast);font:600 var(--text-12)/18px var(--font-sans);text-align:center;border-radius:50%;flex:none}.list-empty{padding:var(--space-16);border-radius:var(--radius-box);box-shadow:inset 0 0 0 var(--line) var(--gray-7);margin:0}.list-wrap{position:relative}.op-card.docked{width:auto;max-height:var(--list-detail-h);margin-top:var(--space-16);position:sticky;bottom:0;overflow:auto}:root{--list-detail-h:min(45dvh, 480px)}html:has(.list-wrap[data-panel]){scroll-padding-bottom:calc(var(--list-detail-h) + var(--space-16))}.help-dialog{max-width:min(40rem,100vw - 2rem);max-height:calc(100dvh - 2rem);padding:var(--space-16);color:var(--gray-12);background:var(--gray-1);box-shadow:0 0 0 var(--line) var(--gray-7);border-radius:var(--radius-sm);border:0;overflow:auto}.help-dialog::backdrop{background:var(--gray-1)}.help-head{justify-content:space-between;align-items:center;gap:var(--space-16);box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-6);display:flex}.help-head h2,.help-head form{margin:0}.help-dialog table{width:100%;margin-top:var(--space-16);border-collapse:collapse;font-size:var(--text-12);line-height:var(--leading-12)}.help-dialog caption{text-align:left;padding-bottom:var(--space-4);font-weight:600}.help-dialog th,.help-dialog td{padding:var(--space-4) var(--space-8);box-shadow:inset 0 calc(-1 * var(--line)) 0 var(--gray-6);text-align:left;vertical-align:top}.help-dialog th{width:40%;font-weight:400}.stage[data-status=loading]>.stage-content{filter:grayscale()}.stage[data-status=error]>.stage-content{display:none}.source-status{max-width:492px}.source-status[data-testid=loading]{margin-bottom:var(--space-32)}.source-status h2{width:-moz-fit-content;width:fit-content;margin:0 0 var(--space-8);outline-offset:var(--space-4)}.source-status p{margin:0 0 var(--space-16);color:var(--gray-11)}.steps{margin:0 0 var(--space-16);padding:0;list-style:none}.steps li{gap:var(--space-8);padding-block:var(--space-4);color:var(--gray-11);display:flex}.steps li:not([data-state=waiting]){color:var(--gray-12)}.steps li[data-state=in\ progress]{--tick:var(--indigo-11);font-weight:600}.tick{width:1.25em;font-family:var(--font-mono);text-align:center;color:var(--tick,inherit)}.err-mark{width:20px;height:20px;margin-right:var(--space-8);background:var(--amber-11);color:var(--gray-1);font:600 var(--text-14)/var(--leading-14) var(--font-mono);vertical-align:2px;border-radius:50%;place-items:center;display:inline-grid}.command{margin:0 0 var(--space-16);padding:var(--space-8) var(--space-12);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--gray-2);box-shadow:inset 0 0 0 var(--line) var(--gray-6);border-radius:var(--radius-box);font:var(--text-12)/20px var(--font-mono)}.status-actions{align-items:center;gap:var(--space-8);flex-wrap:wrap;display:flex}.empty-chart{justify-items:center;gap:var(--space-24);padding:var(--space-64) var(--space-24);color:var(--gray-12);font-size:var(--text-20);line-height:var(--leading-20);text-align:center;display:grid}.empty-ring{fill:none;stroke:var(--gray-7)}@keyframes s2-fade{0%{opacity:0}}@keyframes s2-rise{0%{opacity:0;transform:translateY(4px)}}@keyframes s2-draw{0%{stroke-dashoffset:1px;opacity:0}1%{opacity:1}to{stroke-dashoffset:0}}@keyframes s2-pop{0%{opacity:0;transform:scale(.5)}}@keyframes s2-nomark{0%,to{marker-end:none}}@keyframes s2-spin{to{transform:rotate(360deg)}}.label{align-items:center;gap:var(--space-8);display:inline-flex}@media (prefers-reduced-motion:no-preference){[data-enter] .rc{animation:s2-rise var(--motion-map) ease-out calc(min(var(--col,0), 8) * 40ms) both}[data-enter] .links{animation:s2-fade var(--motion-map) ease-out .2s both}[data-enter] :is(.halo,.wf){stroke-dasharray:1 1;animation:s2-draw var(--motion-draw) ease-out calc(.45s + var(--i,0) * var(--motion-draw)) both}[data-enter] .wf{animation:s2-draw var(--motion-draw) ease-out calc(.45s + var(--i,0) * var(--motion-draw)) both, s2-nomark 0s linear calc(.45s + (var(--i,0) + 1) * var(--motion-draw)) backwards}[data-enter] .op[data-route]:after{animation:s2-pop var(--motion-map) ease-out calc(.45s + (var(--stop,1) - 1) * var(--motion-draw)) both}[data-enter] .checks li{animation:s2-fade var(--motion-map) ease-out calc(.9s + var(--i,0) * 30ms) both}[data-enter] .lgroup{animation:s2-rise var(--motion-map) ease-out calc(min(var(--g,0), 8) * 40ms) both}[data-enter] .audit-row{animation:s2-fade var(--motion-map) ease-out .9s both}.ln-hot{animation:s2-fade var(--motion-map) ease-out both}.op-card{animation:s2-rise var(--motion-map) ease-out both}.swap{animation:s2-fade var(--motion-map) ease-out both}.spinner{animation:.8s linear infinite s2-spin}}@media (min-width:640px) and (max-width:1135px){.skill-browser{row-gap:var(--space-40);grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.sb-audit{grid-column:1/-1}}@media (max-width:639px){.fhead{margin-bottom:var(--space-24);flex-direction:column}.fhead-actions{flex-direction:column;width:100%}.fhead-actions .btn{width:100%}.tools-l{flex-wrap:nowrap;flex:1;min-width:0}.tools-l .search{flex:1;width:auto;min-width:0}.tools-l .search kbd{display:none}.skill-browser{row-gap:var(--space-24);grid-template-columns:minmax(0,1fr)}.sb-head.mono{margin-bottom:var(--space-8)}[role=treeitem]{min-height:44px}[role=treeitem] .n{font-size:var(--text-14);line-height:var(--leading-14)}.sb-audit{box-shadow:inset 0 var(--line) 0 var(--gray-6);margin-top:0}.sb-audit .sb-head{height:auto;margin:0}.sb-audit .checks{padding-bottom:var(--space-8)}.lhead button{height:44px}.lgroup+.lgroup{margin-top:var(--space-16)}.lgroup:not([data-open])+.lgroup:not([data-open]){margin-top:0}.map-scroll{margin-right:calc(-1 * var(--space-16))}.map-wrap .op-card[role=dialog]{border-radius:var(--radius-box) var(--radius-box) 0 0;width:auto;position:fixed;overflow:auto;max-height:50dvh!important;inset:auto 0 0!important}.map-wrap .op-card[aria-hidden=true]{display:none}body:has(.map-wrap .op-card[role=dialog]){padding-bottom:50dvh}html:has(.map-wrap .op-card[role=dialog]){scroll-padding-bottom:calc(50dvh + var(--space-16))}}
