@font-face{font-family:MesloLGS;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/MesloLGS-NF-Regular-9cNLCI-l.woff2)format("woff2")}@font-face{font-family:MesloLGS;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/MesloLGS-NF-Bold-CoJWs6yx.woff2)format("woff2")}:root{--bg:#00000f;--fg:#e2e2d6;--bold:#e3e2d7;--cursor:#ea33f7;--ansi0:#000;--ansi1:#91272d;--ansi2:#b4cd98;--ansi3:#948a45;--ansi4:#41416e;--ansi5:#8b4259;--ansi6:#517f79;--ansi7:#bebebe;--ansi8:#666;--ansi9:#c16772;--ansi10:#cff689;--ansi11:#fef7a2;--ansi12:#5384b9;--ansi13:#c7a0bc;--ansi14:#83bcbd;--ansi15:#fff;--seg-bg:#1c1c1c;--seg-sep:#6c6c6c;--prefix:gray;--frame:#444;--ok:#5fd700;--err:red;--time:#5f8787;--context:#d7af87;--context-root:#d7af00;--dir:#0087af;--dir-anchor:#00afff;--os:#eee;--font:"MesloLGS", Menlo, "SF Mono", Monaco, Consolas, "Liberation Mono", monospace;--fs:clamp(12.5px, .3vw + 9.5px, 14.5px);--lh:1.32;--gutter:8px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:var(--fs);line-height:var(--lh);font-variant-ligatures:none;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow:hidden}::selection{color:var(--ansi15);background:#3a3a5a}.viewport{left:0;right:0;top:var(--app-top,0px);height:100vh;height:var(--app-h,100dvh);background:var(--bg);flex-direction:column;display:flex;position:fixed}.term{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.screen{min-height:0;padding:6px max(var(--gutter), env(safe-area-inset-right)) 10px max(var(--gutter), env(safe-area-inset-left));scrollbar-width:thin;scrollbar-color:#2a2a3a transparent;overscroll-behavior:contain;flex:1;overflow:hidden auto}.screen[hidden]{display:none}.screen::-webkit-scrollbar{width:8px}.screen::-webkit-scrollbar-thumb{background:#2a2a3a;border-radius:4px}.entry+.entry{margin-top:2px}pre,.out{font:inherit;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;margin:0}.dim,.tone-dim{color:var(--ansi8)}.tone-error{color:var(--ansi9)}.tone-warn{color:var(--ansi11)}.tone-ok{color:var(--ok)}.accent{color:var(--dir-anchor);font-weight:700}.p10k-line{white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;min-width:0;display:flex;overflow:hidden}.p10k-fade{color:var(--seg-bg);flex:none}.p10k-island{background:var(--seg-bg);align-items:center;min-width:0;display:inline-flex;overflow:hidden}.p10k-left{flex:0 auto}.p10k-seg{white-space:nowrap;padding:0 .6ch}.p10k-sep{color:var(--seg-sep)}.p10k-os{color:var(--os)}.p10k-host{color:var(--ansi3)}.p10k-host-icon{margin-right:1ch}.p10k-click{appearance:none;font:inherit;line-height:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}button.p10k-dir-icon,button.p10k-dir-part{color:inherit}button.p10k-seg{padding:0 .6ch}.p10k-click:hover{filter:brightness(1.35)}button.p10k-dir-part{font-weight:inherit}.p10k-dir{color:var(--dir);text-overflow:clip;overflow:hidden}.p10k-dir-icon{margin-right:1ch}.p10k-dir-anchor{color:var(--dir-anchor);font-weight:700}.p10k-gap{flex:1 1 0;min-width:1ch}.p10k-right{flex:none;align-items:center;display:inline-flex}.p10k-prefix{color:var(--prefix)}.p10k-user{color:var(--context)}.p10k-root{color:var(--context-root);font-weight:700}.p10k-time,.p10k-clock{color:var(--time)}.p10k-frame{color:var(--frame);flex:none}.prompt-row{align-items:flex-start;min-width:0;display:flex}.p10k-char{flex:none;margin-right:1ch}.p10k-char.ok{color:var(--ok)}.p10k-char.err{color:var(--err)}.p10k-frame-end{align-self:flex-start;margin-left:1ch}@media (width<=560px){.p10k-right{display:none}}@media (width<=360px){.p10k-host,.p10k-host+.p10k-sep{display:none}}.input-area{flex:auto;min-width:0;position:relative}.input-render{min-height:calc(var(--fs) * var(--lh));white-space:pre-wrap;word-break:break-all;display:block}.input-native{resize:none;color:#0000;caret-color:#0000;width:100%;height:100%;font:inherit;line-height:inherit;white-space:pre-wrap;word-break:break-all;background:0 0;border:0;outline:none;margin:0;padding:0;position:absolute;inset:0;overflow:hidden}.input-native:focus-visible{outline:none}@media (pointer:coarse){.input-native{font-size:16px}}.cursor{background:var(--cursor);color:var(--bg)}.cursor-idle{color:inherit;outline:1px solid var(--cursor);outline-offset:-1px;background:0 0}.ghost{color:var(--ansi8);cursor:pointer}.hl-cmd{color:var(--ansi2)}.hl-unknown{color:var(--ansi9);font-weight:700}.hl-path{text-underline-offset:2px;text-decoration:underline}.hl-squote,.hl-dquote{color:var(--ansi3)}.hl-opt{color:var(--ansi14)}.hl-op{color:var(--ansi13)}.hl-comment{color:var(--ansi8)}.result{min-width:0}.cmdlink{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.cmdlink:hover,.cmdlink:focus-visible{text-underline-offset:2px;text-decoration:underline}:focus-visible{outline:1px dashed var(--dir-anchor);outline-offset:1px}.link{color:var(--dir-anchor);text-underline-offset:2px;-webkit-text-decoration:underline #00afff66;text-decoration:underline #00afff66}.link:hover{text-decoration-color:currentColor}.link-dead{color:var(--ansi8)}kbd{font:inherit;color:var(--ansi11)}.ls-grid{grid-template-columns:repeat(auto-fill,minmax(22ch,1fr));column-gap:2ch;display:grid}.ls-one .ls-grid{grid-template-columns:1fr}.fs{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.fs-icon{width:2ch;display:inline-block}.fs-dir{color:var(--ansi12);font-weight:700}.fs-exec{color:var(--ok);font-weight:700}.fs-locked{color:var(--ansi9)}.fs-private{color:var(--ansi13)}.fs-suffix{color:var(--ansi8);font-weight:400}.ls-row{white-space:pre;gap:1ch;min-width:0;display:flex}.ls-mode{color:var(--ansi14)}.ls-owner{color:var(--ansi11)}.grp-private,.grp-work{color:var(--ansi13)}.grp-public,.ls-size{color:var(--ansi2)}.ls-date{color:var(--ansi12)}.ls-total,.ls-heading{color:var(--ansi7)}@media (width<=560px){.ls-owner,.ls-date{display:none}}.tree-row{white-space:pre;text-overflow:ellipsis;overflow:hidden}.tree-guide{color:var(--ansi8)}.tree-summary{margin-top:.5em}.grep-file{color:var(--ansi13)}.grep-n{color:var(--ansi2)}.grep-sep{color:var(--ansi6)}mark{color:var(--ansi9);background:0 0;font-weight:700}.help-group+.help-group{margin-top:.6em}.help-title{color:var(--ansi11);font-weight:700}.help-row{padding-left:2ch;display:flex}.help-cmd{color:var(--ansi2);white-space:pre;flex:none}.help-desc{color:var(--fg);padding-left:1ch}.help-tips{color:var(--ansi8);margin-top:.6em}.file-footer{border-top:1px dashed #2a2a3a;flex-wrap:wrap;justify-content:space-between;gap:.3em 2ch;max-width:96ch;margin-top:.8em;padding-top:.4em;display:flex}.ff-link{color:var(--dir-anchor)}.ff-sep,.ff-copy{color:var(--ansi8)}.ff-copy:hover{color:var(--fg)}.help-places{grid-template-columns:repeat(auto-fill,minmax(18ch,1fr));column-gap:2ch;padding-left:2ch;display:grid}.brag .md{padding:0;display:inline}.brag .md p{margin:0;display:inline}.brag-star{color:var(--ansi11)}.social-row{white-space:pre}.social-icon{width:2ch;color:var(--ansi14);display:inline-block}.social-label{color:var(--ansi11)}.neofetch{align-items:center;gap:3ch;margin:.6em 0;display:flex}.nf-logo{color:var(--ansi11);white-space:pre;flex:none;padding-left:1ch;font-weight:700}.nf-info{min-width:0}.nf-user{color:var(--ansi11);font-weight:700}.nf-rule{color:var(--fg)}.nf-key{color:var(--ansi11);font-weight:700}.nf-colors{margin-top:.6em;line-height:1.1}.nf-swatch{white-space:pre}.ansi-bg-0{background:var(--ansi0)}.ansi-bg-1{background:var(--ansi1)}.ansi-bg-2{background:var(--ansi2)}.ansi-bg-3{background:var(--ansi3)}.ansi-bg-4{background:var(--ansi4)}.ansi-bg-5{background:var(--ansi5)}.ansi-bg-6{background:var(--ansi6)}.ansi-bg-7{background:var(--ansi7)}.ansi-bg-8{background:var(--ansi8)}.ansi-bg-9{background:var(--ansi9)}.ansi-bg-10{background:var(--ansi10)}.ansi-bg-11{background:var(--ansi11)}.ansi-bg-12{background:var(--ansi12)}.ansi-bg-13{background:var(--ansi13)}.ansi-bg-14{background:var(--ansi14)}.ansi-bg-15{background:var(--ansi15)}@media (width<=640px){.neofetch{flex-direction:column;gap:.4em}.nf-logo{display:none}.nf-colors{max-width:100%;display:flex}.nf-colors br{display:none}.nf-swatch{flex:1 1 0;min-width:0;height:1.1em;overflow:hidden}}.cat+.cat{margin-top:1em}.md{max-width:96ch;padding:.2em 0 .4em}.md>:first-child{margin-top:0}.md p,.md ul,.md ol,.md blockquote,.md table,.md pre{margin:0 0 .8em}.md-h{margin:1em 0 .5em;font-size:1em;font-weight:700}.md-hash{color:var(--ansi8);font-weight:400}.md-h1{color:var(--bg);background:var(--ansi12);padding:0 1ch;display:inline-block}.md-h1 .md-hash{display:none}.md-h2{color:var(--dir-anchor)}.md-h3{color:var(--ansi11)}.md-h4,.md-h5,.md-h6{color:var(--ansi13)}.md strong{color:var(--ansi15);font-weight:700}.md em{color:var(--ansi13);font-style:italic}.md ul,.md ol{padding-left:3ch}.md ul{list-style:none}.md ul>li:before{content:"•";color:var(--ansi6);width:2ch;margin-left:-2ch;display:inline-block}.md li.task-list-item:before{content:none}.md li.task-list-item input{accent-color:var(--ok);pointer-events:none;margin:0 1ch 0 -2.5ch}.md ol>li::marker{color:var(--ansi6)}.md blockquote{border-left:2px solid var(--ansi4);color:var(--ansi7);margin-left:0;padding-left:1.5ch}.md code{color:var(--ansi10);background:#14141f;padding:0 .4ch}.md pre{border-left:2px solid var(--ansi4);white-space:pre;background:#0b0b18;padding:.5em 1.5ch;overflow-x:auto}.md pre code{color:var(--fg);background:0 0;padding:0}.md hr{color:var(--ansi8);white-space:nowrap;border:0;margin:.8em 0;overflow:hidden}.md hr:after{content:"────────────────────────────────────────────────────────────────────────────────────────────────"}.md table{border-collapse:collapse;display:block;overflow-x:auto}.md th,.md td{text-align:left;vertical-align:top;border:1px solid #2a2a3a;padding:0 1ch}.md th{color:var(--ansi11)}.md-figure{margin:.4em 0 .8em;display:block}.md-figure img{border:1px solid #2a2a3a;max-width:min(100%,560px);height:auto;max-height:50vh;display:block}.md-caption{color:var(--ansi8);font-style:italic;display:block}.md-img-btn{appearance:none;cursor:zoom-in;background:0 0;border:0;padding:0}.md-figure video{background:#000;max-width:min(100%,720px);max-height:70vh;display:block}.md-grid p:has(.md-figure){grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;max-width:960px;display:grid}.md-grid .md-figure{margin:0}.md-grid .md-figure>.md-caption{display:none}.md-grid .md-img-btn,.md-grid .md-figure img,.md-grid .md-figure video{aspect-ratio:1;object-fit:cover;width:100%;max-width:none;max-height:none;display:block}.gallery-tile{cursor:pointer;position:relative}.tile-play{color:var(--fg);text-shadow:0 0 4px #000;position:absolute;bottom:4px;right:6px}.lightbox{z-index:50;cursor:zoom-out;background:#00000ff0;flex-direction:column;justify-content:center;align-items:center;gap:.6em;padding:16px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:100%;max-height:calc(100% - 3em)}.md-img-blocked{color:var(--ansi8)}.md-banner{flex-wrap:wrap;gap:.4em 2ch;margin-bottom:.4em;display:flex}.badge-private{color:var(--ansi13)}.badge-work{color:var(--ansi11)}.badge-public{color:var(--ansi2)}.tags{color:var(--ansi6)}.code{color:var(--fg)}.tmux{padding:0 max(4px, env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px, env(safe-area-inset-left));background:var(--ansi2);color:var(--ansi0);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:none;justify-content:space-between;gap:2ch;display:flex;overflow:hidden}.tmux-left{flex:none}.tmux-right{text-overflow:ellipsis;min-width:0;overflow:hidden}@media (width<=400px){.tmux-date{display:none}}.app{flex-direction:column;display:flex}.game{touch-action:none;flex-direction:column;align-items:center;gap:.5em;margin:auto;display:flex}.game-head{gap:3ch;display:flex}.game-board{white-space:pre;color:var(--fg);line-height:1}.snake-board{font-size:min(var(--fs), calc((100vw - 24px) / 58 / .6));color:var(--ok)}.g2048{line-height:1.5}.g-frame{color:var(--frame);white-space:pre}.g2048-cell{white-space:pre;font-weight:700}.g2048-cell.v0{color:var(--ansi8);font-weight:400}.g2048-cell.v2{color:var(--fg)}.g2048-cell.v4{color:var(--ansi7)}.g2048-cell.v8{color:var(--ansi11)}.g2048-cell.v16{color:var(--context)}.g2048-cell.v32{color:var(--ansi9)}.g2048-cell.v64{color:var(--err)}.g2048-cell.v128{color:var(--ansi10)}.g2048-cell.v256{color:var(--ok)}.g2048-cell.v512{color:var(--ansi14)}.g2048-cell.v1024{color:var(--dir-anchor)}.g2048-cell.v2048,.g2048-cell.v4096{color:var(--cursor)}.game-foot{text-align:center}.touchpad{grid-template-rows:repeat(3,2.6em);grid-template-columns:repeat(3,3.2em);gap:4px;margin-top:.6em;display:none}@media (pointer:coarse){.touchpad{display:grid}}.pad-btn{font:inherit;color:var(--fg);background:var(--seg-bg);border:1px solid var(--frame)}.pad-up{grid-area:1/2}.pad-left{grid-area:2/1}.pad-right{grid-area:2/3}.pad-down{grid-area:3/2}.pad-quit{color:var(--ansi9);grid-area:2/2}.matrix{position:absolute;inset:0}.matrix-canvas{width:100%;height:100%;display:block}.train{color:var(--fg);white-space:pre;overflow:hidden}.screen-closed{flex-direction:column;gap:.4em;display:flex}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.keybar{display:none}@media (pointer:coarse){.keybar{padding:6px max(var(--gutter), env(safe-area-inset-left));background:var(--seg-bg);touch-action:none;-webkit-user-select:none;user-select:none;scrollbar-width:none;border-top:1px solid #2a2a3a;flex:none;gap:6px;display:flex;overflow-x:auto}.keybar-key{text-align:center;min-width:2.6em;color:var(--fg);background:#1c1c28;border-radius:6px;flex:1 0 auto;padding:6px 8px}.keybar-key:active{background:#2a2a3a}}.feh{touch-action:pan-y;-webkit-user-select:none;user-select:none;background:#000;flex-direction:column;display:flex;position:absolute;inset:0}.feh-bar,.feh-help{padding:4px var(--gutter);color:var(--ansi8);flex:none;justify-content:space-between;gap:2ch;display:flex}.feh-help{color:var(--fg);justify-content:center;gap:4ch}.feh-stage{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.feh-stage img,.feh-stage video{object-fit:contain;max-width:100%;max-height:100%}.feh-empty{color:var(--ansi8);justify-content:center;align-items:center}.crt-off{z-index:60;cursor:pointer;background:#000;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.crt-line{background:#e2e2d6;height:2px;animation:.7s ease-in forwards crt-collapse;position:absolute;top:50%;left:0;right:0;box-shadow:0 0 12px #e2e2d6}.crt-hint{color:var(--ansi8);opacity:0;animation:.6s ease-out 1.4s forwards crt-hint}@keyframes crt-collapse{0%{opacity:.9;transform:scaleY(300)}40%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleX(0)}}@keyframes crt-hint{to{opacity:1}}@media (prefers-reduced-motion:reduce){.crt-line{display:none}.crt-hint{opacity:1;animation:none}}.git-hash{color:var(--ansi3)}.git-head{color:var(--ansi14);font-weight:700}.nf-bolt{appearance:none;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.nf-bolt:hover span{text-shadow:0 0 6px #ffee968c}.nf-bolt span{display:inline}.nf-bolt.charged span{animation:.9s ease-out both nf-charge}.nf-bolt.charged span:nth-child(2){animation-delay:50ms}.nf-bolt.charged span:nth-child(3){animation-delay:.1s}.nf-bolt.charged span:nth-child(4){animation-delay:.15s}.nf-bolt.charged span:nth-child(5){animation-delay:.2s}.nf-bolt.charged span:nth-child(6){animation-delay:.25s}.nf-bolt.charged span:nth-child(7){animation-delay:.3s}.nf-bolt.charged span:nth-child(8){animation-delay:.35s}.nf-bolt.charged span:nth-child(9){animation-delay:.4s}@keyframes nf-charge{0%{color:inherit;text-shadow:none}25%{color:#fff;text-shadow:0 0 6px #fff,0 0 16px #8fb4ff,0 0 30px #6f9dff}to{color:inherit;text-shadow:none}}.storm-canvas{z-index:70;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.screen.shake-1{animation:.38s ease-out shake-1}.screen.shake-2{animation:.9s ease-out shake-2}@keyframes shake-1{0%,to{transform:translate(0)}20%{transform:translate(-3px,2px)}40%{transform:translate(3px,-2px)}60%{transform:translate(-2px,1px)}80%{transform:translate(1px,-1px)}}@keyframes shake-2{0%,to{transform:translate(0)}10%{transform:translate(-7px,4px)}20%{transform:translate(6px,-5px)}30%{transform:translate(-5px,3px)}45%{transform:translate(4px,-3px)}60%{transform:translate(-3px,2px)}80%{transform:translate(2px,-1px)}}.storm-trip{z-index:71;background:#000;justify-content:center;align-items:center;padding:16px;transition:background-color .6s;display:flex;position:fixed;inset:0}.storm-relay{font:inherit;white-space:pre-wrap;max-width:100%;margin:0}.relay-warn{color:var(--ansi11)}.relay-open{color:var(--ansi9);font-weight:700}.relay-ok{color:var(--ansi10)}@media (prefers-reduced-motion:reduce){.screen.shake-1,.screen.shake-2{animation:none}.nf-bolt.charged span{animation-duration:10ms}}.trip-inner{flex-direction:column;align-items:center;gap:.6em;width:min(760px,100%);display:flex}.line-diagram{width:100%;height:auto;overflow:visible}.line-diagram text{fill:var(--ansi8);font:inherit;text-anchor:middle;font-size:11px}.line-diagram .ld-small{font-size:9px}.ld-sub rect,.ld-sub circle,.ld-tower path,.ld-homes path{fill:none;stroke:#6b6b80;stroke-width:1.4px}.ld-wire,.ld-conductor{fill:none;stroke:#3a3a4a;stroke-width:2px}.ld-wire.live{stroke:var(--ansi11)}.ld-flow{fill:none;stroke:var(--ansi11);stroke-width:2.2px;stroke-dasharray:6 12;transition:opacity .2s;animation:.6s linear infinite ld-flow}.ld-flow.off{opacity:0}@keyframes ld-flow{to{stroke-dashoffset:-18px}}.ld-cb circle{fill:#dcdccc}.ld-blade{stroke:#dcdccc;stroke-width:3px;stroke-linecap:round;transform-origin:142px 118px;transition:transform .25s cubic-bezier(.2,1.6,.4,1)}.ld-blade.open{stroke:var(--ansi9);transform:rotate(-38deg)}.ld-bolt{fill:none;stroke:#fff;stroke-width:2.4px;filter:drop-shadow(0 0 4px #8fb4ff);animation:.18s steps(2,end) infinite ld-blink}.ld-spark{fill:#fff6c8;animation:.25s ease-in-out infinite alternate ld-spark}.ld-ember{fill:var(--ansi9);animation:1.2s ease-out forwards ld-ember}@keyframes ld-blink{50%{opacity:.35}}@keyframes ld-spark{0%{opacity:1;r:9}to{opacity:.5;r:14}}@keyframes ld-ember{to{opacity:0}}.ld-homes .ld-win{fill:#2a2a36;transition:fill .3s}.ld-homes.lit .ld-win{fill:var(--ansi11)}.trip-caption{text-align:center;max-width:62ch;min-height:2.8em;color:var(--fg);margin:0}.trip-continue{color:var(--ansi8);opacity:0;margin:.6em 0 0;transition:opacity .4s}.trip-continue.on{opacity:1;animation:1.4s ease-in-out infinite ld-pulse}@keyframes ld-pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.ld-flow,.ld-bolt,.ld-spark,.trip-continue.on{animation:none}}.trip-inner .storm-relay{min-height:7.6em}.storm-trip{animation:.7s ease-out trip-in}@keyframes trip-in{0%{background-color:#c9d6f0}to{background-color:#000}}@media (prefers-reduced-motion:reduce){.storm-trip{animation:none}}
