@font-face{font-family:Martian Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;font-stretch:75% 112.5%;src:url(/assets/martian-mono-cyrillic-ext-wdth-normal-BFx_pHPN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Martian Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;font-stretch:75% 112.5%;src:url(/assets/martian-mono-cyrillic-wdth-normal-Dgr-UBxV.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Martian Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;font-stretch:75% 112.5%;src:url(/assets/martian-mono-latin-ext-wdth-normal-DeTdBbNh.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Martian Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;font-stretch:75% 112.5%;src:url(/assets/martian-mono-latin-wdth-normal-1TqSgyfh.woff2)format("woff2-variations");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:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(/assets/instrument-sans-latin-ext-wdth-normal-C5E2Gvlv.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(/assets/instrument-sans-latin-wdth-normal-BVScPF0l.woff2)format("woff2-variations");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{--paper:#f2f5f8;--ink:#0a1b2e;--slate:#4b5d70;--rule:#d3dde7;--sky:#0ea5e9;--sky-ink:#0369a1;--amber:#f5a524;--mint:#3dd68c;--red:#f2777a;--frame:#101922;--console:#000;--console-rule:#1d2834;--console-text:#c8d4df;--console-dim:#6c7f92;--console-code:#7cc6ee;--mono:"Martian Mono Variable", ui-monospace, Menlo, monospace;--sans:"Instrument Sans Variable", system-ui, sans-serif;--gutter:clamp(16px, 4vw, 40px);--max:1180px;--measure:34em}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--paper);color:var(--ink);font:400 18px / 1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:4px}.skip{z-index:10;background:var(--ink);color:var(--paper);border-radius:6px;padding:8px 12px;position:absolute;top:-100px;left:16px}.skip:focus{top:12px}.masthead,main,.footer{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.masthead{justify-content:space-between;align-items:center;gap:16px;padding-block:20px;display:flex}.wordmark{font:700 19px / 1 var(--mono);letter-spacing:-.03em;align-items:center;gap:10px;font-stretch:112.5%;text-decoration:none;display:inline-flex}.wordmark svg{flex:none;width:30px;height:30px}.wordmark svg rect{fill:var(--console)}.wordmark svg path{fill:none;stroke:var(--sky);stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round}.wordmark svg .bar{fill:var(--sky)}.masthead nav{align-items:center;gap:clamp(14px,3vw,28px);font-size:16px;display:flex}.masthead nav a:not(.button){color:var(--slate);text-decoration:none}.masthead nav a:not(.button):hover{color:var(--ink)}.button{background:var(--ink);min-height:48px;color:var(--paper);border-radius:10px;align-items:center;padding:0 22px;font-size:17px;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.button:hover{background:#17324f}.button.small{border-radius:8px;min-height:40px;padding:0 16px;font-size:15px}.quiet{text-decoration-line:underline;-webkit-text-decoration-color:var(--sky);text-decoration-color:var(--sky);text-underline-offset:6px;font-weight:600;text-decoration-thickness:2px}.quiet:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.actions{flex-wrap:wrap;align-items:center;gap:14px 28px;margin:32px 0 0;display:flex}.hero{padding-top:clamp(36px,7vw,88px)}.hero h1{max-width:12em;font:750 clamp(38px, 7vw, 84px) / 1.02 var(--mono);letter-spacing:-.05em;word-spacing:-.28em;text-wrap:balance;margin:0;font-stretch:112.5%}.cursor{background:var(--sky);border-radius:.05em;width:.5em;height:.11em;margin-left:.14em;animation:1s step-end 4 blink;display:inline-block}.lede{max-width:var(--measure);color:var(--slate);margin:28px 0 0;font-size:clamp(18px,2vw,21px)}.mosaic{margin:clamp(40px,5vw,64px) 0 0}.window{background:var(--frame);color:var(--console-text);font:400 12.5px / 1.55 var(--mono);border-radius:14px;font-stretch:75%;overflow:hidden;box-shadow:0 32px 64px -24px #0a1b2e80,0 12px 24px -12px #0a1b2e4d}.titlebar{border-bottom:1px solid var(--console-rule);align-items:center;gap:18px;height:40px;padding:0 14px;display:flex}.lights{gap:7px;display:flex}.lights i{background:#2a3644;border-radius:50%;width:11px;height:11px}.repos{gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.repos li{color:var(--console-dim);border-radius:6px;padding:3px 10px}.repos li.on{color:#fff;background:#1b2632}.target{border:1px solid var(--console-rule);color:var(--console-dim);border-radius:6px;margin-left:auto;padding:2px 8px}.panes{background:var(--console-rule);grid-template-rows:1fr 1fr;grid-template-columns:1.2fr 1fr .8fr;gap:1px;height:clamp(340px,30vw,380px);display:grid}.pane{background:var(--console);flex-direction:column;min-width:0;min-height:0;display:flex}.pane.claude{grid-row:1/3}.pane>header{color:#e6edf3;white-space:nowrap;border-bottom:1px solid #10171f;flex:none;align-items:center;gap:8px;height:32px;padding:0 12px;font-weight:600;display:flex}.branch{color:var(--console-code);font:inherit;text-overflow:ellipsis;background:#0f1c29;border-radius:5px;margin-left:auto;padding:1px 7px;font-weight:400;overflow:hidden}.port{color:var(--console-dim);font-weight:400}.dot{background:var(--sky);border-radius:50%;flex:none;width:8px;height:8px}.pane[data-state=working] .dot{animation:1.6s ease-in-out infinite pulse}.pane[data-state=waiting] .dot{background:var(--amber);box-shadow:0 0 0 3px #f5a52440}.pane[data-state=done] .dot{background:var(--mint)}.scroll{flex-direction:column;flex:1;gap:6px;min-height:0;padding:12px 14px;display:flex;overflow:hidden}.scroll p{margin:0}.scroll code{color:var(--console-code);font:inherit}.you{border-left:2px solid var(--sky);color:#fff;background:#0b1520;padding:7px 10px}.you:before{content:"> ";color:var(--sky)}.typing:after{content:"";background:var(--sky);width:.6em;height:2px;margin-left:2px;display:inline-block}.tool:before,.say:before{content:"● ";color:var(--mint)}.say:before,.say{color:#e6edf3}.out{color:var(--console-dim);padding-left:1.3em}.out.ok{color:var(--mint)}.diff ins,.diff del{text-decoration:none}.diff ins{color:var(--mint)}.diff del{color:var(--red)}.approval{border:1px solid var(--amber);color:#fff;background:#f5a52414;border-radius:8px;padding:10px 12px}.approval p{margin:0}.approval .choices{gap:8px;margin-top:10px;display:flex}.choices button{color:#e6edf3;font:600 13px / 1 var(--sans);cursor:pointer;background:0 0;border:1px solid #3a4756;border-radius:6px;padding:8px 14px}.choices button:hover{border-color:#5a6878}.choices [data-answer=allow]{border-color:var(--amber);background:var(--amber);color:#1d1400}.choices [data-answer=allow]:hover{background:#ffbd45;border-color:#ffbd45}.term .scroll{gap:2px}.cmd:before{content:"$ ";color:var(--console-dim)}.dim{color:var(--console-dim)}.statusbar{border-top:1px solid var(--console-rule);height:30px;color:var(--console-dim);white-space:nowrap;align-items:center;gap:16px;padding:0 14px;display:flex;overflow:hidden}.connected:before{content:"";background:var(--mint);border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.count.working{color:var(--console-code)}.count.waiting{color:var(--amber)}.count.done{color:var(--mint)}.mosaic figcaption{min-height:1.6em;color:var(--slate);margin-top:16px;font-size:16px}.mosaic figcaption:focus{outline:none}.mosaic figcaption .after,.mosaic[data-phase=answered] figcaption .before{display:none}.mosaic[data-phase=answered] figcaption .after{display:inline}.mosaic[data-phase=playing] figcaption{visibility:hidden}.chapter{padding-top:clamp(88px,12vw,144px)}.chapter h2{font:700 clamp(28px, 4.2vw, 46px) / 1.08 var(--mono);letter-spacing:-.04em;word-spacing:-.24em;margin:0 0 32px;font-stretch:112.5%}.chapter h3{font:650 17px / 1.3 var(--mono);letter-spacing:-.01em;margin:0 0 10px;font-stretch:87.5%}.splits{border:1px solid var(--rule);background:var(--rule);border-radius:14px;grid-template-columns:repeat(3,1fr);gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.splits>li{background:var(--paper);padding:clamp(22px,3vw,34px)}.splits p{max-width:36em;color:var(--slate);margin:0;font-size:17px}.splits>.wide{grid-column:span 2}.splits>.full{grid-column:1/-1;grid-template-columns:1fr 1.25fr;align-items:center;gap:32px;display:grid}.legend{flex-wrap:wrap;gap:8px 24px;margin:20px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.legend li:before{content:"";background:var(--sky);border-radius:50%;width:9px;height:9px;margin-right:8px;display:inline-block}.legend .waiting:before{background:var(--amber)}.legend .done:before{background:var(--mint)}.snippet{background:var(--console);color:var(--console-text);font:400 13px / 1.6 var(--mono);border-radius:10px;margin:0;padding:16px 18px;font-stretch:75%;overflow-x:auto}.snippet .call:before{content:"● "}.snippet .call{color:var(--mint)}.snippet .err{color:var(--red)}.intro{max-width:var(--measure);color:var(--slate);margin:-12px 0 44px;font-size:19px}.route{--dot:16px;--gap:32px;gap:var(--gap);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.route li{padding-top:36px;position:relative}.route li:before{content:"";width:var(--dot);height:var(--dot);border:2px solid var(--ink);background:var(--paper);border-radius:50%;position:absolute;top:0;left:0}.route li:not(:last-child):after{content:"";top:calc(var(--dot) / 2 - 1px);left:var(--dot);right:calc(-1 * var(--gap));border-top:2px solid var(--ink);position:absolute}.route li:has(+.soon):after{border-top-style:dashed}.route .soon:before{border-style:dashed}.route p{max-width:24em;color:var(--slate);margin:0;font-size:17px}.access{padding-bottom:clamp(88px,12vw,144px)}.contact{max-width:760px;position:relative}.topics{border:0;flex-wrap:wrap;gap:8px;margin:0 0 28px;padding:0;display:flex}.topics legend{margin-bottom:12px;padding:0;font-size:16px;font-weight:600}.topics label{position:relative}.topics input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.topics span{border:1px solid var(--rule);border-radius:999px;padding:8px 16px;font-size:15px;display:inline-block}.topics input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--paper)}.topics input:focus-visible+span{outline:3px solid var(--sky);outline-offset:2px}.fields{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}.field{flex-direction:column;gap:6px;font-size:15px;font-weight:600;display:flex}.field.wide{grid-column:1/-1}.field input,.field textarea{border:1px solid var(--rule);color:var(--ink);font:400 17px / 1.5 var(--sans);background:#fff;border-radius:10px;padding:11px 14px}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field textarea:focus{border-color:var(--sky-ink)}.trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.send{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:24px;display:flex}button.button{font-family:var(--sans);cursor:pointer;border:0}button.button:disabled{opacity:.6;cursor:progress}.status{margin:0;font-size:16px}.contact[data-state=sent] .status{color:#0f7a46}.contact[data-state=error] .status{color:#b42318}.contact .note{color:var(--slate);margin:16px 0 0;font-size:15px}.contact .note a{color:var(--sky-ink);text-underline-offset:3px}.page{padding-block:clamp(48px,8vw,96px)}.prose{max-width:38em}.prose h1{font:700 clamp(32px, 5vw, 52px) / 1.05 var(--mono);letter-spacing:-.045em;word-spacing:-.24em;margin:0 0 24px;font-stretch:112.5%}.prose h2{font:650 18px / 1.3 var(--mono);margin:36px 0 8px;font-stretch:87.5%}.prose p{color:var(--slate);margin:0 0 16px}.prose a{color:var(--sky-ink);text-underline-offset:3px}.footer{border-top:1px solid var(--rule);color:var(--slate);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:28px 0 40px;font-size:15px;display:flex}.footer nav{gap:22px;display:flex}.footer a{text-decoration:none}.footer a:hover{color:var(--ink);text-decoration:underline}@media (width<=860px){.splits{grid-template-columns:1fr 1fr}.splits>.wide,.splits>.full{grid-column:1/-1}.splits>.full{grid-template-columns:1fr}}@media (width<=760px){.panes{grid-template-rows:none;grid-template-columns:1fr;height:auto}.pane.claude{grid-row:auto;height:250px}.pane.term,.lights,.repos .extra,.statusbar span:nth-child(2){display:none}.route{grid-template-columns:1fr;gap:28px}.route li{padding:0 0 0 36px}.route li:before{top:4px}.route li:not(:last-child):after{top:calc(4px + var(--dot));bottom:-32px;left:calc(var(--dot) / 2 - 1px);border-top:0;border-left:2px solid var(--ink);right:auto}.route li:has(+.soon):after{border-left-style:dashed}}@media (width<=600px){.masthead nav .wide{display:none}.splits,.fields{grid-template-columns:1fr}}@media (width<=480px){.masthead nav a[href=\#features]{display:none}}.og .masthead nav,.og .skip,.og .lede,.og .actions,.og .mosaic figcaption,.og .chapter,.og .footer{display:none}.og .hero{padding-top:20px}.og .hero h1{max-width:none;font-size:60px}.og .mosaic{margin-top:36px}@keyframes blink{50%{opacity:0}}@keyframes pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cursor,.pane .dot{animation:none!important}}
