pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:var(--fg);background:transparent}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e;font-style:italic}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media(prefers-color-scheme:light){.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#cf222e}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#8250df}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#0550ae}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#0a3069}.hljs-built_in,.hljs-symbol{color:#953800}.hljs-code,.hljs-comment,.hljs-formula{color:#6e7781}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#116329}.hljs-subst{color:#1f2328}.hljs-section{color:#1f6feb}.hljs-bullet{color:#9a6700}}:root{color-scheme:dark;--bg: #0f1419;--fg: #e1e4e8;--muted: #8b949e;--accent: #cc342d;--line: #30363d;--surface: #161b22}@media(prefers-color-scheme:light){:root{color-scheme:light;--bg: #ffffff;--fg: #24292f;--muted: #57606a;--accent: #cc342d;--line: #d0d7de;--surface: #f6f8fa}}*{box-sizing:border-box}html{scrollbar-gutter:stable both-edges}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}input,textarea,select,button{color:inherit;font:inherit}main{max-width:726px;margin:0 auto;padding:56px 0 80px}a{color:var(--accent);font-weight:700;text-decoration:none}a:hover{text-decoration:underline}.outbound-icon{display:inline-block;width:.95em;height:.95em;margin-left:.28em;vertical-align:-.08em}h1{margin:0 0 8px;font-size:32px;font-weight:600;letter-spacing:-.02em}h2{margin:0 0 12px;font-size:18px;font-weight:600}h3{margin:0 0 8px;font-size:16px;font-weight:600}h5{margin:0 0 6px;font-size:14px;font-weight:600}p{margin:0 0 14px;color:var(--muted);font-size:15px}ul{margin:0;padding-left:20px;color:var(--muted);font-size:15px}ul li{margin-bottom:6px}section{border-bottom:1px solid var(--line);padding:28px 0}.features>p:has(>strong){margin-bottom:0}.features>p>strong{display:block;margin:26px 0 10px;color:var(--fg);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.features ul{margin:0 0 4px;padding-left:0;list-style:none;color:var(--muted);font-size:15px;line-height:1.65}.features ul li{margin:0 0 14px;padding-left:20px;position:relative}.features ul li:before{content:"";position:absolute;left:1px;top:.55em;width:7px;height:7px;border-radius:2px;background:var(--accent);opacity:.6}.features ul li>strong{color:var(--fg);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}header{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:24px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:24px}.summary{max-width:680px;margin:0;color:var(--muted);font-size:16px}.hero-image{width:120px;height:auto}.site-logo{display:flex;justify-content:center;width:min(760px,calc(100% - 32px));margin:40px auto 24px}.site-logo img{display:block;width:min(420px,92%);height:auto}.logo-page{width:min(760px,calc(100% - 32px));padding-top:0}.logo-page header{display:block}.logo-page .summary{max-width:600px}.home-page{padding-top:0}.hero{text-align:center;padding:40px 0}.hero-logo{display:block;width:min(420px,92%);height:auto;margin:0 auto 8px}.hero h1{margin:0 0 8px;font-size:36px;font-weight:600;letter-spacing:-.02em}.hero p{max-width:520px;margin:0 auto;color:var(--muted);font-size:16px}.hero .ssh-console{max-width:320px;margin:8px auto 0;text-align:center}.service{border-top:1px solid var(--line);padding:32px 0}.service h2{margin:0 0 12px;font-size:18px;font-weight:600}.section-title{display:flex;align-items:center;gap:10px}.section-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--line);border-radius:7px;background:linear-gradient(180deg,#ffffff0f,#fff0),var(--surface);box-shadow:inset 0 1px #ffffff0d}.section-gem{display:block;width:16px;height:16px}.service p{margin:0 0 14px;color:var(--muted);font-size:15px}.service p:last-child{margin-bottom:0}.current-sources{margin-top:14px}.home-body{--bg: #ffffff;--fg: #1f2328;--muted: #59636e;--accent: #a7312b;--line: #d0d7de;--surface: #f6f8fa;color-scheme:light;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.home-showcase{margin:0 auto;padding:40px 0 45px}.home-logo{display:block;width:min(420px,94%);margin:0 auto 32px;line-height:0}.home-logo img{display:block;width:100%;height:auto}.home-logo object{display:block;width:100%;aspect-ratio:560 / 220;height:auto;border:0}.home-section-title{margin:28px 0 20px;text-align:left;font-size:14px;font-weight:600;letter-spacing:.01em;color:var(--fg)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-card{display:flex;flex-direction:column;padding:20px 22px;min-height:156px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--fg);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.project-card:hover{border-color:var(--accent);box-shadow:0 1px 2px #1b1f240a,0 8px 24px #8c959f26;transform:translateY(-2px);text-decoration:none}.project-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-name{margin:0 0 6px;font-size:16px;font-weight:400;letter-spacing:-.01em;color:var(--accent)}.project-license{flex:0 0 auto;margin-left:auto;padding:1px 8px;font-size:11px;font-weight:600;line-height:1.5;color:var(--muted);border:1px solid var(--line);border-radius:999px}.project-tagline{margin:0 0 12px;color:#454c54;font-size:14px;line-height:1.5;font-weight:400}.project-meta{margin:auto 0 0;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:400}.lang-dot{display:inline-block;width:12px;height:12px;border-radius:50%;flex:0 0 auto}.lang-ruby{background:#701516}.lang-mruby,.lang-shell{background:#cc342d}.home-contact{margin-top:0;border-bottom:0;padding:0 0 12px}.home-contact p{margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.6}.home-contact p:last-child{margin-bottom:0}.home-contact a{color:var(--accent);font-weight:600;text-decoration:none}.home-contact a:hover{text-decoration:underline}.home-console{margin-top:40px;border-bottom:0;padding:0}.console-expand{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px}.console-expand:hover{color:var(--accent)}.console-expand .icon-collapse,.home-console.is-expanded .console-expand .icon-expand{display:none}.home-console.is-expanded .console-expand .icon-collapse{display:block}.home-console.is-expanded{position:fixed;inset:0;z-index:50;margin:0;display:flex;flex-direction:column;align-items:center;background:var(--surface);padding:32px clamp(16px,10vw,200px)}.home-console.is-expanded .console-output{height:auto;flex:1;width:100%;max-width:900px;border-radius:0}.home-console.is-expanded .console-answer{max-width:900px;width:100%;margin:0 auto;padding:24px clamp(16px,4vw,48px) 32px}.home-console.is-expanded .console-answer pre{max-width:100%}.home-console.is-expanded .console-form{width:100%;max-width:900px;border-radius:0 0 8px 8px}.home-console.is-expanded .console-note{margin-top:12px}.console-output{height:285px;overflow-y:auto;padding:14px 16px;background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;color:var(--fg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.5;overflow-wrap:break-word}.console-status{display:none;margin:0 0 10px;font-size:13px}.console-status.is-active{display:block;margin:0 0 10px;padding:8px 10px;background:var(--surface);border-radius:6px}.console-status-item{display:flex;align-items:center;gap:8px;margin:0 0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.2;color:var(--fg);animation:console-pulse 1.6s ease-in-out infinite}.console-status-item:last-child{margin-bottom:0}.console-status-icon{display:block;flex:none;opacity:.75}.console-status-item.is-done{animation:none;opacity:.72}.console-status-item.is-thinking{background:transparent;border:0;padding:0;color:var(--muted);font-style:italic}.console-status-title{margin:8px 0 4px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.console-status-title:first-child{margin-top:0}@keyframes console-pulse{0%,to{opacity:1}50%{opacity:.6}}.console-answer{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6}.console-answer.is-error{color:#b42318}.console-answer p{margin:0 0 12px;color:var(--fg);font-size:14px}.console-answer p:last-child{margin-bottom:0}.console-answer ul,.console-answer ol{margin:0 0 10px;padding-left:20px;color:var(--fg);font-size:14px}.console-answer li{margin-bottom:6px;color:var(--fg)}.console-answer strong{color:var(--fg);font-weight:700}.console-answer em{color:var(--muted)}.console-answer code{padding:.12em .28em;border-radius:3px;background:var(--surface);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;white-space:break-spaces}.console-answer pre{margin:12px 0 14px;padding:12px 14px;overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px}.console-answer pre code{display:block;padding:0;background:transparent;border-left:0;border-radius:0;font-size:13px;line-height:1.6;white-space:pre;tab-size:2;overflow-wrap:normal;word-break:normal}.console-answer blockquote{margin:12px 0 14px;padding:10px 12px;border-left:3px solid #cc342d;background:#f6f8fa;border-radius:0 6px 6px 0;color:#57606a;font-size:13px;line-height:1.5}.console-answer blockquote p{margin:0 0 6px;color:#57606a;font-size:13px}.console-answer blockquote p:last-child{margin-bottom:0}.console-answer a{color:var(--accent)}.console-answer h1,.console-answer h2,.console-answer h3,.console-answer h4{margin:14px 0 8px;font-weight:600;line-height:1.3}.console-answer h1{font-size:18px}.console-answer h2{font-size:16px}.console-answer h3{font-size:15px}.console-answer h4{font-size:14px}.console-form{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-top:0;border-bottom:0;border-radius:0}.console-prompt{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px}.console-input{flex:1;border:0;outline:none;background:transparent;color:var(--fg);font-size:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.console-note{margin:8px 0 0;text-align:right;color:var(--muted);font-size:12px}.console-reset{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px}.console-reset:hover{color:var(--accent)}.console-reset-icon{display:block}@media(max-width:640px){.project-grid{grid-template-columns:1fr}.console-output{height:140px}}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}pre{margin:14px 0 22px;overflow-x:auto;font-size:14px;line-height:1.5}pre code{display:block;padding:12px 0 12px 14px;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 6px 6px 0;color:var(--fg)}pre code.hljs{padding:12px 0 12px 14px;background:var(--surface)}pre.highlight{margin:16px 0 22px;padding:14px 16px;overflow-x:auto;background:#161b22;border:1px solid #30363d;border-radius:6px}pre.highlight code{display:block;padding:0;border-left:0;border-radius:0;background:transparent;color:#e6edf3;font-size:13.5px;line-height:1.6}@media(prefers-color-scheme:light){pre code.hljs,.hljs{color:var(--fg);background:var(--surface)}.hljs-comment,.hljs-quote{color:#6e7781}.hljs-keyword,.hljs-selector-tag,.hljs-subst{color:#cf222e}.hljs-string,.hljs-title,.hljs-section,.hljs-attribute,.hljs-literal,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-addition{color:#116329}.hljs-number,.hljs-symbol,.hljs-bullet,.hljs-variable{color:#0550ae}.hljs-built_in,.hljs-builtin-name,.hljs-class .hljs-title{color:#953800}}.ssh-console{margin:12px 0 0;padding:11px 14px;overflow-x:auto;background:var(--surface);border-left:3px solid var(--accent);color:var(--fg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px;line-height:1.5}.ssh-console code{border:none;background:none;color:inherit;padding:0}.hero-ssh{width:260px;margin:0 auto 12px;text-align:center}table{width:100%;margin:14px 0 0;border-collapse:collapse;font-size:14px}th,td{border-top:1px solid var(--line);padding:10px 14px;text-align:left;vertical-align:top}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}th{color:var(--fg);font-weight:600}td{color:var(--muted)}td code{color:var(--fg);font-size:13px}.try-options{display:grid;gap:28px}.try-method-label{display:inline-block;margin:0 0 8px;color:var(--muted);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.try-method p{max-width:680px}.faq-section .faq-item summary{cursor:pointer}.faq-section .faq-item[open] summary{margin-bottom:10px}.faq-section .faq-item p{margin-bottom:10px}.faq-section .faq-item p:last-child,.faq-section .faq-item ul:last-child{margin-bottom:0}.faq-section .faq-item ul{margin:0 0 12px}.faq-section .faq-label{margin:12px 0 6px;font-weight:600}.faq-section .faq-label:first-of-type{margin-top:0}.faq-section .faq-flags{line-height:1.5}.showcase{display:grid;gap:22px}.project{border-top:1px solid var(--line);padding-top:18px}.project:first-child{border-top:0;padding-top:0}.project p:last-child{margin-bottom:0}.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));justify-content:center;gap:10px;margin-top:16px;text-align:center}.quick-links a{border:1px solid var(--line);border-radius:6px;padding:6px 10px;color:var(--fg);font-size:14px}.quick-links a:hover{border-color:var(--accent);text-decoration:none}@media(max-width:640px){.quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}}.examples{display:grid;gap:24px}.install-copy{margin-bottom:14px}.example{border-top:1px solid var(--line);padding-top:20px}.example:first-child{border-top:0;padding-top:0}footer,.footer{padding-top:22px;color:var(--muted);font-size:13px;display:flex;gap:12px;flex-wrap:wrap}.footer{border-top:1px solid var(--line);margin-top:32px;padding-top:24px;gap:16px}footer a,.footer a{color:var(--muted)}footer a:hover,.footer a:hover{color:var(--accent)}@media(max-width:720px){main{padding:32px 0 56px}.home-page{padding-top:0}.home-page .hero{padding-top:24px}.site-logo{width:min(100% - 32px,760px);margin:24px auto 18px}.site-logo img{width:min(300px,92%)}.logo-page{padding-top:0}header{grid-template-columns:minmax(0,1fr) 90px;gap:16px}.hero-image{width:90px}.hero-logo{width:min(300px,92%)}h1{font-size:26px}.hero h1{font-size:28px}}main{padding-top:0}main.home-showcase{padding:16px 0 56px}body.home-body{--surface: #ffffff;background:#f7f8fa}main pre{margin:0 0 18px;padding:0;overflow-x:auto;background:transparent;border:0;border-radius:0;color:#3a3f45;font-size:13.5px;line-height:1.6}main pre code{padding:0;border:0;border-left:0;background:transparent}main h2{margin:22px 0 8px;font-size:15px;color:#1f2328}main h3{margin:18px 0 6px}
/*! Syntax highlighting for the 4.4bsd.dev chat console.
    Theme-aware: inherits the site's palette (see main.css :root vars) and
    swaps between a dark and light token palette via prefers-color-scheme. */
