.main:has(.tty-page){max-width:calc(1040px + var(--gap) * 2)}body:has(.tty-page) .top-link{display:none}.tty-page{--t-bg:#0d1820;--t-bar:#13212b;--t-well:#0a131a;--t-line:#283b46;--t-border:#324950;--t-text:#c6d4dd;--t-bright:#edf5f9;--t-dim:#8298a6;--t-mint:#66e3b4;--t-cyan:#7fc9e8;--t-violet:#a78bfa;--t-amber:#edc16b;--t-red:#ee817e;--glow:var(--t-mint);display:grid;grid-template-columns:minmax(0,1fr);gap:26px;padding:30px 0 8px;color:var(--t-text);font-family:var(--font-family-code);font-size:13.5px;line-height:1.65;letter-spacing:0}.tty-page :where(h1,h2,h3,p,ul,ol,dl,pre,table){margin:0;padding:0}.tty-page :where(ul,ol){list-style:none}.tty-page :where(a){color:inherit}.tty-page ::selection{background:rgba(102,227,180,.28);color:#fff}.tty-pane{position:relative;overflow:hidden;border:1px solid var(--t-border);border-radius:11px;background:var(--t-bg);box-shadow:0 24px 70px -36px rgba(0,0,0,.6),0 0 50px -25px rgba(102,227,180,.14);scroll-margin-top:calc(var(--header-height,60px) + 22px)}.tty-bar{position:relative;z-index:2;display:flex;align-items:center;gap:18px;padding:11px 18px;border-bottom:1px solid var(--t-line);background:var(--t-bar);color:#9aaebc;font-size:11.5px}.tty-bar>*{flex-shrink:0;white-space:nowrap}.tty-bar .tty-bar-title{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.tty-dots{display:flex;gap:6px}.tty-dots i{width:9px;height:9px;border-radius:50%;background:#ee817e}.tty-dots i:nth-child(2){background:#edc16b}.tty-dots i:nth-child(3){background:#66d6a9}.tty-bar-note{margin-left:auto;color:var(--t-dim)}.tty-bar-skip{padding:1px 8px;border:1px solid var(--t-border);border-radius:4px;color:var(--t-dim);font:inherit;cursor:pointer}.tty-bar-skip:hover{border-color:var(--t-mint);color:var(--t-mint)}.tty-body,.tty-hero-body{position:relative;z-index:1;padding:22px 26px 28px}.tty-cmd{display:flex;gap:10px;margin-bottom:14px;color:var(--t-bright);overflow-wrap:anywhere}.tty-cmd-next{margin-top:24px}.tty-ps1{flex-shrink:0;color:var(--t-mint)}.tty-h2{margin-bottom:18px;color:var(--t-bright);font-size:clamp(19px,2.6vw,25px);font-weight:600;line-height:1.3;letter-spacing:-.03em}.tty-h2::before{content:"# ";color:var(--t-mint)}.tty-prose{max-width:72ch;margin-bottom:16px;color:var(--t-text);font-size:14px;line-height:1.75}.tty-cursor{display:inline-block;width:.6em;height:1.15em;background:currentColor;opacity:.85;vertical-align:text-bottom}.tty-caret{position:relative;display:inline-block;width:0}.tty-caret::after{content:"";position:absolute;left:1px;bottom:-.2em;width:.58em;height:1.2em;background:var(--t-mint);opacity:.9}.tty-untyped{visibility:hidden}.tty-hero-body{padding-bottom:32px}.tty-rain{position:absolute;inset:42px 0 0;z-index:0;width:100%;height:calc(100% - 42px);opacity:.5;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 34%,#000 96%);mask-image:linear-gradient(90deg,transparent 34%,#000 96%)}.tty-scan{position:absolute;inset:42px 0 0;z-index:3;overflow:hidden;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.022) 0 1px,transparent 1px 3px)}.tty-scan::after{content:"";position:absolute;inset:0 0 auto;height:120px;background:linear-gradient(to bottom,transparent,rgba(102,227,180,5%),transparent);transform:translateY(-120px)}.tty-boot{position:absolute;inset:0;z-index:4;display:none;padding:22px 26px;background:var(--t-bg);color:var(--t-text);font-size:13px;clip-path:inset(0)}.tty-boot p{white-space:pre-wrap}.tty-boot p:first-child,.tty-boot p:last-child{color:var(--t-dim)}.tty-boot p:first-child{margin-bottom:1.65em}.tty-boot p:last-child{margin-top:1.65em}.tty-boot b{color:var(--t-mint);font-weight:500}.tty-banner{width:max-content;max-width:100%;margin:4px 0 18px;overflow:hidden;background:linear-gradient(100deg,#66e3b4 0%,#7fc9e8 38%,#a78bfa 62%,#66e3b4 100%)0 0/240% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;font-size:clamp(7px,2.8vw,18px);line-height:1.2;white-space:pre}.tty-eyebrow{margin-bottom:10px;color:var(--t-mint);font-size:12.5px;font-weight:500;letter-spacing:.03em}.tty-h1{max-width:23ch;color:var(--t-bright);font-size:clamp(24px,3.7vw,41px);font-weight:600;line-height:1.2;letter-spacing:-.04em}.tty-h1 em{color:var(--t-mint);font-style:normal}.tty-fetch{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:30px;margin-top:26px}.tty-logo{color:var(--t-mint);font-size:14px;line-height:1.2;white-space:pre}.tty-fetch-title{margin-bottom:3px;padding-bottom:5px;border-bottom:1px dashed var(--t-line);color:var(--t-text);width:max-content}.tty-fetch-title b{color:var(--t-mint);font-weight:600}.tty-kv{display:grid;gap:2px}.tty-kv>div{display:grid;grid-template-columns:8ch minmax(0,1fr);gap:10px}.tty-kv dt{color:var(--t-cyan)}.tty-kv dd{margin:0;color:var(--t-bright);font-variant-numeric:tabular-nums}.tty-swatches{display:flex;gap:0;margin-top:10px}.tty-swatches i{width:26px;height:13px;background:var(--t-red)}.tty-swatches i:nth-child(2){background:var(--t-amber)}.tty-swatches i:nth-child(3){background:var(--t-mint)}.tty-swatches i:nth-child(4){background:var(--t-cyan)}.tty-swatches i:nth-child(5){background:var(--t-violet)}.tty-swatches i:nth-child(6){background:var(--t-bright)}.tty-lead{max-width:74ch;color:var(--t-text);font-size:14.5px;line-height:1.75}.tty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.tty-button{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:8px 16px;border:1px solid var(--t-border);border-radius:6px;background:var(--t-bar);color:var(--t-bright);font-size:13px;font-weight:500;transition:transform 180ms ease,border-color 180ms ease,box-shadow 180ms ease,color 180ms ease}.tty-button-primary{border-color:var(--t-mint);background:var(--t-mint);color:#082a20;font-weight:600}.tty-button:hover{transform:translateY(-2px);border-color:var(--t-mint);box-shadow:0 6px 24px -12px rgba(102,227,180,.5)}.tty-button:not(.tty-button-primary):hover{color:var(--t-mint)}.tty-button .tty-cursor{color:var(--t-mint)}.tty-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tty-stat{min-width:0;padding:14px 16px 16px;border:1px solid var(--t-line);border-radius:8px;background:rgba(19,33,43,.6)}.tty-stat-key{color:var(--t-dim);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.tty-stat strong{display:block;margin:6px 0;color:var(--t-bright);font-size:clamp(23px,2.9vw,32px);font-weight:600;line-height:1.15;letter-spacing:-.04em;font-variant-numeric:tabular-nums;white-space:nowrap}.tty-stat-viz{display:block;height:1.65em;overflow:hidden;color:var(--t-mint);font-size:12px;white-space:nowrap}.tty-stat-viz.tty-cyan{color:var(--t-cyan)}.tty-stat-viz.tty-violet{color:var(--t-violet)}.tty-stat-viz.tty-amber{color:var(--t-amber)}.tty-stat-desc{display:block;margin-top:6px;color:var(--t-text);font-size:12.5px;line-height:1.5}.tty-steps{display:flex;gap:2px}.tty-steps i{font-style:normal;transition:color 200ms ease}.tty-steps i+i::before{content:"▸";margin-right:2px;opacity:.5}.tty-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tty-work{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:18px 18px 16px;border:1px solid var(--t-line);border-radius:8px;background:rgba(19,33,43,.6);transition:border-color 200ms ease,transform 200ms ease}.tty-work>*{position:relative;z-index:1}.tty-work:hover{border-color:color-mix(in srgb,var(--t-mint) 60%,var(--t-line));transform:translateY(-2px)}.tty-work-index{color:var(--t-dim);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}.tty-work-index b{margin-right:6px;color:var(--t-mint);font-weight:600}.tty-work h3{margin:8px 0;color:var(--t-bright);font-size:17.5px;font-weight:600;line-height:1.35;letter-spacing:-.03em}.tty-work>p:not(.tty-work-index){color:var(--t-text);font-size:13.5px;line-height:1.7}.tty-viz{display:grid;align-content:center;height:calc(3 * 1.6em + 22px);margin:16px 0 14px;padding:10px 12px;overflow:hidden;border:1px dashed var(--t-line);border-radius:6px;background:var(--t-well);font-size:12px;line-height:1.6;white-space:pre}.tty-viz:empty{display:none}.tty-viz div{display:flex;gap:1ch;overflow:hidden}.tty-viz div>:first-child{flex:0 0 8ch;color:var(--t-dim)}.tty-viz div .is-mint{color:var(--t-mint)}.tty-viz div .is-cyan{color:var(--t-cyan)}.tty-viz div .is-violet{color:var(--t-violet)}.tty-viz div .is-amber{color:var(--t-amber)}.tty-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.tty-tags li{padding:2px 8px;border:1px solid var(--t-line);border-radius:4px;color:var(--t-cyan);font-size:11.5px}.tty-man{max-width:84ch;font-size:14px;line-height:1.75}.tty-man-head,.tty-man-foot{display:flex;justify-content:space-between;gap:12px;color:var(--t-dim)}.tty-man-head{margin-bottom:18px}.tty-man-foot{margin-top:6px}.tty-man h3{color:var(--t-bright);font-size:inherit;font-weight:600;letter-spacing:.02em}.tty-man div{margin-bottom:16px}.tty-man div p{padding-left:7ch;color:var(--t-text)}.tty-man b{color:var(--t-bright);font-weight:600}.tty-man i{color:var(--t-cyan);font-style:normal}.tty-man u{color:var(--t-amber);text-underline-offset:3px}.tty-man a{color:var(--t-mint);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--t-mint) 45%,transparent);text-underline-offset:3px}.tty-man a:hover{text-decoration-color:var(--t-mint)}.tty-commit{position:relative;padding:0 0 26px 30px}.tty-commit:last-child{padding-bottom:0}.tty-commit::before{content:"";position:absolute;left:5px;top:16px;bottom:-6px;width:2px;background:var(--t-border);transform-origin:top;transition:transform 700ms var(--ease-out)150ms}.tty-commit:last-child::before{content:none}.tty-commit::after{content:"";position:absolute;left:0;top:5px;width:12px;height:12px;border:2px solid var(--t-mint);border-radius:50%;background:var(--t-bg)}.tty-commit.is-head::after{background:var(--t-mint)}.tty-hash{color:var(--t-amber)}.tty-ref{color:var(--t-amber)}.tty-ref b{color:var(--t-cyan);font-weight:600}.tty-ref i{color:var(--t-mint);font-style:normal;font-weight:600}.tty-ref u{color:var(--t-amber);font-weight:600;text-decoration:none}.tty-commit-date{color:var(--t-dim);white-space:pre-wrap}.tty-commit h3{margin:10px 0 0;color:var(--t-bright);font-size:17.5px;font-weight:600;line-height:1.4;letter-spacing:-.03em}.tty-commit h3 span{color:var(--t-mint);font-weight:500}.tty-diff{display:grid;gap:5px;max-width:86ch;margin-top:10px}.tty-diff li{position:relative;padding-left:2.2ch;color:var(--t-text);line-height:1.65}.tty-diff li::before{content:"+";position:absolute;left:0;color:var(--t-mint);font-weight:600}.tty-tree-root{color:var(--t-cyan);font-weight:600}.tty-tree>li{display:grid;grid-template-columns:4ch 15ch minmax(0,1fr);align-items:baseline;padding:5px 0}.tty-branch{color:var(--t-dim)}.tty-tree h3{color:var(--t-cyan);font-size:inherit;font-weight:600}.tty-chips{display:flex;flex-wrap:wrap;gap:6px}.tty-chips li{padding:2px 9px;border:1px solid var(--t-line);border-radius:4px;background:rgba(19,33,43,.7);color:var(--t-bright);font-size:12.5px;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease,transform 160ms ease}.tty-chips li:hover{border-color:var(--t-mint);background:var(--t-mint);color:#082a20;transform:translateY(-1px)}.tty-tree-count{margin-top:10px;color:var(--t-dim)}.tty-certs{display:table;width:100%;border-collapse:collapse}.tty-certs :is(th,td){padding:6px 14px 6px 0;border:0;text-align:left;vertical-align:baseline}.tty-certs th{color:var(--t-dim);font-weight:500;letter-spacing:.04em}.tty-certs td:first-child{width:13ch;color:var(--t-cyan)}.tty-certs td:nth-child(2){color:var(--t-bright)}.tty-certs :is(th,td):last-child{width:9ch;padding-right:0;white-space:nowrap}.tty-certs td:last-child{color:var(--t-mint)}.tty-certs td .is-pending{color:var(--t-amber)}.tty-certs tbody tr{transition:background-color 160ms ease}.tty-certs tbody tr:hover{background:rgba(102,227,180,6%)}.tty-notes{border-top:1px solid var(--t-line)}.tty-notes a{display:grid;grid-template-columns:11ch minmax(0,1fr)auto;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px solid var(--t-line);color:var(--t-bright);font-size:14px;transition:color 160ms ease,padding 200ms var(--ease-out)}.tty-notes time{color:var(--t-dim);font-size:12.5px}.tty-notes a>span:last-child{color:var(--t-mint);transition:transform 200ms var(--ease-out)}.tty-notes a:hover{padding-left:8px;color:var(--t-mint)}.tty-notes a:hover>span:last-child{transform:translate(3px,-3px)}.tty-more{display:inline-block;margin-top:16px;color:var(--t-dim)}.tty-more:hover{color:var(--t-mint)}.tty-shell-window{margin:4px 0 6px;border:1px solid var(--t-line);border-radius:8px;background:var(--t-well);cursor:text}.tty-shell-window:focus-within{border-color:color-mix(in srgb,var(--t-mint) 55%,var(--t-line));box-shadow:0 0 0 3px rgba(102,227,180,.1)}.tty-shell-log{height:250px;padding:14px 16px 4px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--t-border)transparent}.tty-shell-log p{min-height:1.65em;white-space:pre-wrap;overflow-wrap:anywhere}.tty-shell-log .is-echo{color:var(--t-bright)}.tty-shell-log .is-echo::before{content:"visitor@vishctl:~$ ";color:var(--t-mint)}.tty-shell-log .is-dim{color:var(--t-dim)}.tty-shell-log .is-error{color:var(--t-red)}.tty-shell-log .is-ok{color:var(--t-mint)}.tty-shell-log .is-key{color:var(--t-cyan)}.tty-shell-log .is-warn{color:var(--t-amber)}.tty-shell-log a{color:var(--t-mint);text-decoration:underline;text-underline-offset:3px}.tty-shell-form{display:flex;align-items:center;gap:1ch;padding:6px 16px 12px}.tty-shell-form label{flex-shrink:0;color:var(--t-mint);cursor:text}.tty-shell-form input{flex:1;min-width:0;padding:4px 0;border:0;border-radius:0;outline:0;background:0 0;color:var(--t-bright);caret-color:var(--t-mint);font:inherit}.tty-shell-form input:focus-visible{outline:0}.tty-shell-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 16px 12px;border-top:1px dashed var(--t-line);color:var(--t-dim);font-size:12px;cursor:default}.tty-shell-suggest button{padding:2px 9px;border:1px solid var(--t-line);border-radius:4px;color:var(--t-text);font:inherit;cursor:pointer;transition:border-color 160ms ease,color 160ms ease}.tty-shell-suggest button:hover{border-color:var(--t-mint);color:var(--t-mint)}.tty-tmux{position:sticky;bottom:10px;z-index:20;display:flex;align-items:stretch;overflow:hidden;border:1px solid var(--t-border);border-radius:7px;background:rgba(13,24,32,.94);box-shadow:0 12px 40px -18px rgba(0,0,0,.8);color:var(--t-dim);font-size:12px;line-height:1.5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.tty-tmux::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--t-mint);transform:scaleX(var(--tty-progress,0));transform-origin:left}.tty-tmux-session{flex-shrink:0;padding:6px 10px;background:var(--t-mint);color:#082a20;font-weight:600}.tty-tmux ol{display:flex;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.tty-tmux ol::-webkit-scrollbar{display:none}.tty-tmux a{display:block;padding:6px 9px;color:var(--t-dim);white-space:nowrap;transition:color 160ms ease,background-color 160ms ease}.tty-tmux a b{font-weight:500}.tty-tmux a:hover{color:var(--t-bright)}.tty-tmux a[aria-current]{background:rgba(102,227,180,.13);color:var(--t-mint)}.tty-tmux a[aria-current]::after{content:"*"}.tty-tmux-right{flex-shrink:0;padding:6px 10px;border-left:1px solid var(--t-line);color:var(--t-text);font-variant-numeric:tabular-nums;white-space:nowrap}:root[data-about=armed] [data-tty-section]:not(.is-done) [data-tty-type]:not(.is-typing,.is-typed){visibility:hidden}:root[data-about=armed] [data-tty-section]:not(.is-done) [data-tty-line]:not(.is-in){opacity:0}:root[data-about=armed] [data-tty-section]:not(.is-done) .tty-commit:not(.is-in)::before{transform:scaleY(0)}:root[data-about=armed] .tty-steps i:not(.is-on){color:#3b505b}:root[data-about=armed][data-about-boot=play] .tty-hero:not(.is-booted) .tty-boot{display:block}:root[data-about=armed] .tty-boot p:not(.is-in){visibility:hidden}.tty-boot.is-clearing{clip-path:inset(0 0 100% 0);transition:clip-path 260ms cubic-bezier(.6,0,.9,.4)}@keyframes tty-blink{0%,45%{opacity:.9}50%,95%{opacity:0}}@keyframes tty-shine{to{background-position:-240% 0}}@keyframes tty-beam{to{transform:translateY(900px)}}@keyframes tty-chip-in{from{opacity:0;transform:translateY(5px)scale(.94)}}@keyframes tty-line-in{from{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:no-preference){:root[data-motion=running]:not([data-page-hidden=true]) :is(.tty-cursor,.tty-logo-cursor),:root[data-motion=running]:not([data-page-hidden=true]) .tty-caret::after{animation:tty-blink 1.1s steps(1)infinite}:root[data-motion=running]:not([data-page-hidden=true]) .tty-banner{animation:tty-shine 9s linear infinite}:root[data-motion=running]:not([data-page-hidden=true]) .tty-scan::after{animation:tty-beam 7s linear infinite}:root[data-motion=running]:not([data-page-hidden=true]) .tty-commit.is-head::after{animation:lab-pulse 2.4s ease-out infinite}:root[data-motion=running] [data-tty-section]:not(.is-done) [data-tty-line].is-in{animation:tty-line-in .45s var(--ease-out)backwards}:root[data-motion=running] [data-tty-section]:not(.is-done) .tty-tree>li.is-in .tty-chips li{animation:tty-chip-in .4s var(--ease-out)backwards;animation-delay:calc(80ms + var(--i) * 45ms)}:root[data-motion=running] .tty-shell-log p.is-new{animation:lab-row-in .24s var(--ease-out)backwards;animation-delay:calc(var(--i,0) * 26ms)}}@media(max-width:900px){.tty-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.tty-page{gap:20px;padding-top:20px;font-size:13px}.tty-body,.tty-hero-body,.tty-boot{padding:18px 16px 22px}.tty-work-grid{grid-template-columns:1fr}.tty-rain{opacity:.28;-webkit-mask-image:linear-gradient(180deg,transparent 20%,#000 100%);mask-image:linear-gradient(180deg,transparent 20%,#000 100%)}.tty-fetch{grid-template-columns:minmax(0,1fr)}.tty-logo{display:none}.tty-man div p{padding-left:3ch}.tty-man-head span:nth-child(2){display:none}.tty-tree>li{grid-template-columns:4ch minmax(0,1fr);row-gap:6px;padding:7px 0}.tty-chips{grid-column:2}.tty-certs thead{display:none}.tty-certs tr{display:grid;grid-template-columns:minmax(0,1fr)auto;column-gap:12px;padding:8px 0;border-bottom:1px solid var(--t-line)}.tty-certs :is(th,td){padding:0}.tty-certs td:first-child{grid-column:1/-1;width:auto;font-size:11.5px}.tty-certs :is(th,td):last-child{width:auto}.tty-notes a{grid-template-columns:minmax(0,1fr)auto;gap:2px 12px}.tty-notes time{grid-column:1/-1}.tty-shell-form input{font-size:16px}.tty-tmux-clock{display:none}}@media(max-width:520px){.tty-stats{grid-template-columns:minmax(0,1fr)}.tty-bar-note:has(+.tty-bar-skip:not([hidden])){display:none}}@media(max-width:420px){.tty-bar{gap:12px;padding-inline:14px}.tty-stat{padding:12px 12px 14px}.tty-commit{padding-left:24px}.tty-button{padding-inline:13px}}