:root{--bg:#0b0e14;--fg:#c0caf5;--dim:#565f89;--green:#7ee787;--cyan:#7dcfff;--blue:#7aa2f7;--magenta:#bb9af7;--yellow:#e0af68;--border:#292e42;--selection:#33467c;--font:"JetBrains Mono", "Fira Code", ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}*,:before,:after{box-sizing:border-box}html{background:var(--bg)}body{min-height:100vh;color:var(--fg);background:radial-gradient(ellipse at 50% 0%, #7aa2f714, transparent 60%), radial-gradient(ellipse at 50% 100%, #7ee7870a, transparent 55%), var(--bg);font-family:var(--font);text-shadow:0 0 6px #7aa2f72e;-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55}::selection{background:var(--selection);color:#fff}body:before,body:after{content:"";z-index:10;pointer-events:none;position:fixed;inset:0}body:before{background:repeating-linear-gradient(#0000 0 2px,#00000024 3px,#0000 4px)}body:after{background:radial-gradient(#0000 60%,#00000073 100%)}@media (prefers-reduced-motion:reduce){body:before{display:none}}body.crt-off:before,body.crt-off:after,body.scanlines-off:before{display:none!important}body.glow-off,body.glow-off *{text-shadow:none!important}body.ssh-mode:before,body.ssh-mode:after{display:none!important}.terminal{max-width:110ch;margin:0 auto;padding:1.5rem 1.25rem 4rem}.block{overflow-wrap:anywhere;margin:0}.block-empty{min-height:1.5em}.block-text{white-space:pre-wrap}.prompt{color:var(--green);white-space:nowrap;user-select:none;font-weight:600}.input-line{align-items:baseline;gap:1ch;display:flex}.input-line[hidden]{display:none}.cmdline{min-width:0;color:var(--fg);font:inherit;text-shadow:inherit;caret-color:var(--green);caret-shape:block;background:0 0;border:0;outline:none;flex:1;margin:0;padding:0}.bottom-bar{margin-top:0}.quick-bar{flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;display:none}.chip{font:inherit;min-height:36px;color:var(--fg);border:1px solid var(--border);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;background:#7aa2f714;border-radius:999px;padding:.35rem .7rem;font-size:13px;line-height:1.2}.chip:hover{border-color:var(--cyan);color:var(--cyan)}.chip:active{background:#7aa2f72e}.chip-skip{border-color:var(--yellow);color:var(--yellow);background:#e0af681a}.chip-skip[hidden]{display:none}.input-wrap{flex:1;align-items:baseline;min-width:0;display:flex;position:relative}.ghost{z-index:0;pointer-events:none;color:var(--dim);opacity:.7;white-space:pre;font:inherit;text-shadow:none;user-select:none;position:absolute;top:0;left:0}.cmdline{z-index:1;position:relative}.bottom-bar.is-busy .chip:not(.chip-skip){opacity:.45;pointer-events:none}.game-overlay{z-index:6;backdrop-filter:blur(4px);font-family:var(--font);color:var(--fg);background:#0b0e14f5;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:fixed;inset:0}.game-title{color:var(--green);font-weight:700}.game-score{color:var(--yellow)}.game-grid{border:1px solid var(--border);background:#0000004d;border-radius:6px;flex-direction:column;gap:4px;padding:8px;display:flex}.game-row{gap:4px;display:flex}.game-cell{width:56px;height:56px;color:var(--fg);background:#7aa2f714;border-radius:4px;justify-content:center;align-items:center;font-weight:700;display:flex}.game-cell[data-v="2"]{background:#7aa2f71f}.game-cell[data-v="4"]{background:#7aa2f729}.game-cell[data-v="8"]{color:#0b0e14;background:#7ee7872e}.game-cell[data-v="16"]{color:#0b0e14;background:#7ee78747}.game-cell[data-v="32"]{color:#0b0e14;background:#e0af6847}.game-cell[data-v="64"]{color:#0b0e14;background:#e0af6866}.game-cell[data-v="128"]{color:#0b0e14;background:#bb9af74d}.game-cell[data-v="256"]{color:#0b0e14;background:#bb9af773}.game-cell[data-v="512"]{color:#0b0e14;background:#7dcfff73}.game-cell[data-v="1024"]{color:#0b0e14;background:#7dcfff99}.game-cell[data-v="2048"]{color:#fff;background:#7aa2f7cc}.palette-overlay{z-index:30;backdrop-filter:blur(3px);background:#0000008c;justify-content:center;align-items:flex-start;padding:10vh 1rem 1rem;display:flex;position:fixed;inset:0}.palette-box{border:1px solid var(--border);background:#0b0e14fa;border-radius:8px;flex-direction:column;width:min(560px,100%);max-height:70vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0009}.palette-input{border:0;border-bottom:1px solid var(--border);color:var(--fg);font:inherit;background:0 0;outline:none;padding:.75rem 1rem;font-size:15px}.palette-list{padding:.25rem;overflow-y:auto}.palette-item{cursor:pointer;border-radius:4px;align-items:center;gap:.6rem;padding:.5rem .75rem;font-size:14px;display:flex}.palette-item:hover{background:#7aa2f71f}.palette-kind{text-transform:uppercase;color:var(--dim);min-width:6ch;font-size:11px}.palette-empty{color:var(--dim);padding:.75rem;font-size:13px}.ssh-overlay{z-index:6;font-family:var(--font);color:#00ff41;text-shadow:none;background:#000;flex-direction:column;padding:1rem;display:flex;position:fixed;inset:0}.ssh-output{white-space:pre-wrap;color:#00ff41;flex:1;min-height:0;font-size:14px;line-height:1.5;overflow-y:auto}.ssh-line{white-space:pre-wrap;overflow-wrap:anywhere;color:#00ff41;margin:0}.ssh-input-line{background:0 0;border-top:0;align-items:baseline;gap:.5ch;margin-top:.25rem;padding-top:.25rem;display:flex}.ssh-prompt{color:#00ff41;white-space:nowrap;user-select:none;text-shadow:none;font-weight:600}.ssh-input{color:var(--fg);min-width:0;font:inherit;caret-color:var(--green);text-shadow:none;min-width:0;font:inherit;background:0 0;border:0;outline:none;flex:1}a{color:var(--cyan);text-underline-offset:3px;text-decoration:underline #7dcfff59}a:hover{color:#fff;text-decoration-color:currentColor}.ls{flex-wrap:wrap;gap:.15rem 2.5ch;display:flex}.ls.ls-long{display:block;overflow-x:auto}.ls-row{white-space:pre}.dir{color:var(--cyan);font-weight:700}.file-link{color:var(--blue);font:inherit;text-shadow:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.file-link.file-table{color:var(--yellow)}.file-link.file-gallery{color:var(--magenta)}.file-link:hover,.file-link:focus-visible{color:#fff;outline:none;text-decoration:underline}.block-html>:first-child{margin-top:0}.block-html>:last-child{margin-bottom:0}.block-html p{margin:0 0 .9em}.block-html h1,.block-html h2,.block-html h3,.block-html h4{color:var(--magenta);margin:1.2em 0 .5em;font-size:1em;font-weight:700}.block-html h1{color:var(--green);font-size:1.25em}.block-html h1:before{content:"# ";color:var(--dim)}.block-html h2:before{content:"## ";color:var(--dim)}.block-html h3:before{content:"### ";color:var(--dim)}.block-html ul,.block-html ol{margin:0 0 .9em;padding-left:0;list-style:none}.block-html ul ul,.block-html ol ol{margin:.2em 0 0;padding-left:2ch}.block-html ul>li{text-indent:-2ch;padding-left:2ch}.block-html ul>li:before{content:"- ";color:var(--green)}.block-html ol{counter-reset:item}.block-html ol>li{text-indent:-3ch;counter-increment:item;padding-left:3ch}.block-html ol>li:before{content:counter(item) ". ";color:var(--green)}.block-html li>p{display:inline}.block-html strong{color:var(--yellow)}.block-html em{color:var(--cyan)}.block-html code{color:var(--yellow);background:#7aa2f71f;border-radius:4px;padding:.1em .4em;font-size:.95em}.block-html pre{border:1px solid var(--border);background:#0000004d;border-radius:6px;margin:0 0 .9em;padding:.8rem 1rem;overflow-x:auto}.block-html pre code{color:var(--fg);background:0 0;padding:0}.block-html blockquote{border-left:2px solid var(--dim);color:var(--dim);margin:0 0 .9em;padding-left:1.5ch}.block-html hr{border:0;border-top:1px dashed var(--border);margin:1.2em 0}.block-html img{max-width:100%;height:auto;margin:0 0 .9em;display:block}.table-wrap{overflow-x:auto}.table-title,.gallery-title{color:var(--green);margin:0 0 .6em;font-weight:700}.table-title:before,.gallery-title:before{content:"# ";color:var(--dim)}.block-html table{border-collapse:collapse;width:100%;margin:0 0 .9em}.block-html th,.block-html td{text-align:left;vertical-align:top;padding:.25em 2ch .25em 0}.block-html th{border-bottom:1px solid var(--dim);color:var(--blue);white-space:nowrap;font-weight:700}.block-html td{border-bottom:1px dashed var(--border)}.block-html tbody tr:hover td{background:#7aa2f712}.block-html td:first-child{color:var(--yellow);white-space:nowrap}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:.75rem;display:grid}.gallery-item{aspect-ratio:4/3;border:1px solid var(--border);background:#ffffff0a;border-radius:6px;transition:border-color .15s,box-shadow .15s;display:block;overflow:hidden}.gallery-item:hover{border-color:var(--blue);box-shadow:0 0 14px #7aa2f759}.block-html .gallery-item img{object-fit:contain;width:100%;height:100%;margin:0}.degauss-active{animation:1.2s cubic-bezier(.25,.46,.45,.94) forwards degauss-shake;position:relative}.degauss-active:before{content:"";mix-blend-mode:color-dodge;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,#ff00004d,#00ff004d 15px,#0000ff4d 30px);animation:1.2s ease-out forwards degauss-color-bands;position:fixed;inset:-10%}@keyframes degauss-shake{0%{filter:brightness()contrast();transform:scale(1)}5%{filter:brightness(2)contrast(3)hue-rotate(90deg)blur(2px);transform:scale(.9,.8)skew(3deg)}15%{filter:brightness(1.5)contrast(2)hue-rotate(-90deg)blur(4px);transform:scale(1.03,1.05)skew(-6deg)translateY(5px)}30%{filter:brightness(1.2)contrast(1.5)hue-rotate(180deg)blur(2px);transform:scale(.97,.96)skew(4deg)translateY(-3px)}45%{filter:brightness(1.1)contrast(1.2)hue-rotate(45deg)blur(1px);transform:scale(1.01,1.02)skew(-2deg)translateY(2px)}60%{filter:brightness(1.05)contrast(1.1)hue-rotate(-20deg)blur();transform:scale(.99)skew(1deg)translateY(-1px)}80%{filter:brightness()contrast(1.05)hue-rotate(5deg);transform:scale(1.005)skew(-.5deg)}to{filter:brightness()contrast()hue-rotate();transform:scale(1)}}@keyframes degauss-color-bands{0%{opacity:0;background-position:0 0}5%{opacity:.8;background-position:0 100px}15%{opacity:1;background-position:0 -80px}40%{opacity:.4;background-position:0 150px}to{opacity:0;background-position:0 0}}.vim-container{background:var(--bg);color:var(--fg);z-index:5;font-family:var(--font);flex-direction:column;padding:1.5rem 1.25rem .5rem;font-size:15px;line-height:1.55;display:flex;position:fixed;inset:0}.vim-textarea{color:inherit;resize:none;font-family:inherit;font-size:inherit;line-height:inherit;caret-color:var(--green);background:0 0;border:none;outline:none;flex:1;margin:0;padding:0}.vim-textarea.mode-normal{caret-shape:block}.vim-textarea.mode-insert{caret-shape:bar}.vim-status{white-space:pre;height:1.55em;color:var(--fg);align-items:center;margin-top:.5rem;display:flex}.vim-status.mode-insert{color:var(--yellow);font-weight:700}.vim-error{color:#fff;background:#f7768e;padding:0 1ch}.atop{z-index:5;background:var(--bg);color:var(--fg);font-family:var(--font);flex-direction:column;gap:.35rem;padding:1.25rem 1rem .5rem;font-size:14px;line-height:1.45;display:flex;position:fixed;inset:0}.atop:focus{outline:none}.atop-screen{scrollbar-gutter:stable;white-space:pre;font-variant-ligatures:none;scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-height:0;overflow:hidden auto}.atop-line{min-height:1.45em}.atop-title,.atop-key{color:var(--cyan)}.atop-header{color:var(--blue);font-weight:600}.atop-dim{color:var(--dim)}.atop-warn{color:var(--yellow)}.atop-hot{color:#f7768e;font-weight:600}.atop-footer{border-top:1px solid var(--border);flex-direction:column;flex:none;gap:.4rem;padding-top:.45rem;display:flex}.atop-hint{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.atop-buttons{flex-wrap:wrap;gap:.35rem;display:none}.atop-button{font:inherit;min-width:2.2rem;color:var(--fg);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:.15rem .5rem;font-size:13px}.atop-button:hover{border-color:var(--cyan);color:var(--cyan)}.atop-button.is-active{border-color:var(--green);color:var(--green)}.atop-button:disabled{cursor:default;opacity:.35}.atop-measure{visibility:hidden;white-space:pre;pointer-events:none;position:absolute;top:0;left:0}@media (width<=1024px){.terminal{max-width:100%;padding:1.25rem 1rem 4rem;font-size:14px}.quick-bar{display:flex}.block-html pre{font-size:13px}}@media (width<=768px){html{scroll-padding-bottom:6rem}body{font-size:13px;line-height:1.5}.terminal{padding:.75rem .6rem 6rem;font-size:13px}.block{margin-bottom:0}.bottom-bar{z-index:4;padding:.5rem .6rem calc(.5rem + env(safe-area-inset-bottom));backdrop-filter:blur(6px);border-top:1px solid var(--border);background:#0b0e14eb;margin:0;position:fixed;bottom:0;left:0;right:0}.quick-bar{gap:.3rem;margin-bottom:.4rem}.chip{min-height:40px;padding:.3rem .6rem;font-size:12px}.cmdline{font-size:16px}.prompt{font-size:13px}.block{overflow-wrap:anywhere}.block-text,.block-html{overflow-x:auto}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}.vim-container{padding:.75rem .6rem .4rem;font-size:13px}.atop{padding:.75rem .6rem .4rem;font-size:12px}}@media (hover:none){.chip,.file-link,.atop-button{min-width:44px;min-height:44px}.file-link{padding:.2rem 0}}@media (width<=768px) and (prefers-reduced-motion:reduce){body:before,body:after{display:none}}@media (width<=760px),(hover:none){.atop{padding:.75rem .6rem .4rem;font-size:12px}.atop-buttons{display:flex}.atop-hint{white-space:normal;font-size:11px}}
