@charset "UTF-8";
/*
Copyright 2026 InsightOS
SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

:root{--paper:#f5f4ee;--ink:#182723;--muted:#67736c;--line:#dce0d6;--green:#37664c;--acid:#cee99a;--mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #6d9657;outline-offset:5px}.wrap{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:650;letter-spacing:-1px}.mark{display:grid;place-items:center;background:var(--ink);color:var(--paper);height:32px;width:32px;border-radius:8px;font:italic 24px Georgia,serif}.by{margin:4px 0 0 4px;font-size:11px;font-weight:400;letter-spacing:0;color:var(--muted)}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover{color:var(--green)}.nav-install{border:1px solid var(--line);border-radius:6px;padding:10px 16px}.hero{text-align:center;padding-top:80px;padding-bottom:66px;background-image:radial-gradient(ellipse at 50% 35%,#e4ebdb80,transparent 60%)}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:2px;font-weight:500;color:var(--green)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#528763;margin-right:9px;vertical-align:2px}h1{font-size:clamp(34px,8vw,102px);line-height:1.2;font-weight:600;letter-spacing:-.045em;margin:28px 0}.accent{color:var(--green)}.comma{color:#a1ad9b}.hero-copy{font-size:18px;line-height:1.9;color:var(--muted);margin:25px auto;max-width:48rem}.hero-tags{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font:11px var(--mono);color:var(--green);margin:26px 0 35px}.hero-tags i{font-style:normal;color:#aeb7a8}.install-box{max-width:970px;margin:auto;background:#101b19;color:#eff3e8;border:1px solid #2c3b31;border-radius:12px;text-align:left;box-shadow:0 16px 35px #1b302716;overflow:hidden;scroll-margin-top:30px}.terminal-head{display:flex;justify-content:space-between;padding:17px 22px;border-bottom:1px solid #29352e;font-size:12px;color:#b4c0b4}.terminal-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--acid);margin-right:8px}.platform{font:11px var(--mono);color:#8d9a91}.command-row{display:flex;align-items:center;gap:13px;padding:26px 22px}.prompt{color:var(--acid);font-family:var(--mono)}code{font-family:var(--mono);font-size:.88em;overflow-wrap:anywhere}.command-row code{font-size:12px;line-height:1.9;flex:1;color:var(--acid);overflow-wrap:anywhere}.command-row button{border:1px solid #485644;border-radius:5px;padding:9px 13px;color:#e1ebd6;background:#28372b;cursor:pointer;white-space:nowrap}.command-row button:hover{background:#395037}.install-foot{padding:13px 22px;background:#172320;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:#94a395}.install-foot a{color:#d5e3c4}.install-note{font-size:11px;line-height:1.9;color:var(--muted);margin:19px 0}.release-line{display:flex;justify-content:center;align-items:center;gap:16px;font:10px var(--mono);color:var(--muted);flex-wrap:wrap}.release-pill{border:1px solid #d3dccb;border-radius:30px;padding:5px 9px;font-family:inherit;color:var(--green)}.flow{display:flex;align-items:center;justify-content:space-around;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:30px;padding-bottom:30px}.flow div{display:flex;flex-direction:column;gap:9px}.flow small{font:9px var(--mono);letter-spacing:1px;color:var(--muted)}.flow strong{font-size:16px;font-weight:500}.flow span{font-size:12px;color:var(--muted)}.flow b{font-size:22px;font-weight:400;color:#99aa93}.section{padding-top:85px;padding-bottom:10px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}h2{font-size:32px;line-height:1.4;letter-spacing:-1px;font-weight:550;margin:14px 0 0}.section-heading>p{margin:0;color:var(--muted);font-size:13px;line-height:1.9}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{border:1px solid var(--line);border-radius:10px;padding:28px;background:#fafbf680}.card-number{font:12px var(--mono);color:#729169}.cards h3{font-size:19px;margin:28px 0 14px;font-weight:550}.cards p{color:var(--muted);font-size:13px;line-height:1.9;min-height:100px}.mini-terminal{border-top:1px solid var(--line);padding-top:20px;margin-top:23px;display:flex;align-items:center;gap:10px;font:10px var(--mono)}.mini-terminal em{font-style:normal;color:#8b9b83}.guide-grid{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:45px 1fr;gap:16px;padding:27px 0;border-bottom:1px solid var(--line)}.step-num{border:1px solid var(--line);width:32px;height:32px;display:grid;place-items:center;border-radius:50%;font:12px var(--mono);color:var(--green)}.step h3{font-size:16px;margin:4px 0 13px;font-weight:550}.step p,.faq p{font-size:13px;line-height:1.9;margin:10px 0;max-width:850px}.muted{color:var(--muted)}pre{background:#eaece2;border:1px solid #dfe3d6;border-radius:6px;padding:17px 19px;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.9;max-width:100%;overflow:auto}.compatibility{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.compatibility>div>p{font-size:13px;line-height:1.9;color:var(--muted);max-width:370px}.compat-list>div{display:flex;flex-direction:column;gap:9px;padding:20px 0;border-bottom:1px solid var(--line)}.compat-list>div:first-child{padding-top:0}.compat-list strong{font-size:13px;font-weight:550}.compat-list span{font-size:12px;color:var(--muted);line-height:1.8}.faq h2{margin-bottom:26px}.faq details{border-top:1px solid var(--line);padding:21px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:14px;font-weight:500;line-height:1.8}.faq p{color:var(--muted)}.closing{text-align:center;padding-top:100px;padding-bottom:90px}.closing h2{font-size:38px;margin:22px 0 30px}.cta{display:inline-flex;gap:45px;align-items:center;background:var(--ink);color:var(--paper);padding:16px 24px;border-radius:6px;font-size:14px}.cta:hover{background:var(--green)}footer{min-height:105px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:20px}footer>span,footer>a:last-child{font-size:11px;color:var(--muted)}#copy-status{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:white;border-radius:7px;font-size:13px;padding:12px 20px;display:none;max-width:90vw}#copy-status.visible{display:block}
@media(max-width:760px){.wrap{padding-left:22px;padding-right:22px}.nav{height:76px}.nav .by{display:none}nav{gap:16px}nav>a:first-child{display:none}.hero{padding-top:52px;padding-bottom:43px}.hero-copy{font-size:15px}.hero-tags{font-size:10px;gap:9px}.command-row{padding:20px 15px;gap:9px;flex-wrap:wrap}.command-row code{font-size:11px;min-width:190px}.command-row button{margin-left:auto}.terminal-head,.install-foot{padding-left:15px;padding-right:15px}.install-foot{font-size:10px}.flow{gap:8px;padding-top:24px;padding-bottom:24px}.flow strong{font-size:12px}.flow small{font-size:8px;letter-spacing:0}.flow span{font-size:10px}.flow b{font-size:14px}.section{padding-top:55px}.section-heading{display:block}.section-heading>p{margin-top:16px;font-size:12px}h2{font-size:27px}.cards{grid-template-columns:1fr;gap:13px}.cards article{padding:24px}.cards h3{margin-top:18px}.cards p{min-height:0}.mini-terminal{margin-top:20px}.step{grid-template-columns:30px 1fr;gap:13px}.compatibility{grid-template-columns:1fr;gap:20px}.compatibility>div>p{max-width:none}.closing{padding-top:70px;padding-bottom:60px}.closing h2{font-size:29px}footer{flex-wrap:wrap;justify-content:space-between;padding-top:25px;padding-bottom:25px}footer>span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[hidden]{display:none!important}
.language-switch{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:8px;flex-shrink:0}
.language-switch button{border:0;border-radius:5px;padding:7px 10px;font:inherit;font-size:12px;color:var(--muted);background:transparent;cursor:pointer}
.language-switch button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.nav{gap:18px}.nav nav{margin-left:auto}.support-note{font-size:13px;font-weight:600;color:var(--green);margin:20px 0 0}
.install-foot{flex-wrap:wrap}
.support-roadmap{font-size:12px;line-height:1.8;color:var(--muted);margin:7px 0 0}
.site-footer{display:block;padding-top:28px;padding-bottom:28px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-top>span,.footer-top>a:last-child{font-size:11px;color:var(--muted)}
.footer-legal{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);text-align:center;font-size:11px;line-height:1.9;color:var(--muted)}
.footer-legal p{margin:0 0 8px;overflow-wrap:anywhere}
.filing-links{display:flex;justify-content:center;align-items:center;gap:8px 24px;flex-wrap:wrap}
.filing-links a{display:inline-flex;align-items:center;gap:6px;max-width:100%;overflow-wrap:anywhere}
.filing-links a:hover{text-decoration:underline}
.police-filing img{width:20px;height:20px;object-fit:contain;flex-shrink:0}
@media(max-width:760px){.footer-top{flex-wrap:wrap;gap:12px}.footer-top>span{display:none}.filing-links{flex-direction:column;gap:8px}}
.install-demo{max-width:970px;margin:38px auto 0;text-align:left}
.demo-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.demo-heading h2{font-size:20px;letter-spacing:0;margin:0}.demo-heading>span{font:11px var(--mono);color:var(--muted)}
.install-demo video{display:block;width:100%;aspect-ratio:16/9;background:#101b19;border:1px solid var(--line);border-radius:10px}
.install-demo figcaption{display:flex;justify-content:space-between;gap:18px;margin-top:12px;font-size:11px;color:var(--muted);line-height:1.8}
.install-demo figcaption a{color:var(--green);flex-shrink:0}

@media(max-width:760px){.nav{height:auto;min-height:90px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px}.nav nav{order:3;flex-basis:100%;justify-content:center;margin-left:0}.language-switch{margin-left:auto}.demo-heading,.install-demo figcaption{flex-direction:column;align-items:flex-start;gap:8px}.demo-heading h2{font-size:18px}.flow div{min-width:0}.flow span{overflow-wrap:anywhere}.support-note{font-size:12px}}

/* Header repository link */
.nav-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.github-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;color:var(--ink);flex-shrink:0}
.github-link:hover{color:var(--green);background:#eaece2;border-color:var(--green)}
.github-link svg{display:block}
@media(max-width:760px){.nav-actions{margin-left:auto;gap:8px}.nav-actions .language-switch{margin-left:0}}
@media(max-width:400px){.nav{gap:12px}.nav .brand{font-size:20px;gap:8px}.nav-actions{gap:6px}.nav-actions .language-switch button{padding:7px}.github-link{width:40px;height:40px}}

/* Semantic brand: original blue and gold logo, with a warm neutral canvas. */
:root{--paper:#f7f8fc;--ink:#152447;--muted:#64718a;--line:#dce2ef;--green:#164ed8;--acid:#ffda58}
.brand-logo{display:block;width:48px;height:32px;object-fit:contain;mix-blend-mode:multiply;flex-shrink:0}
.hero-logo{display:block;width:114px;height:76px;object-fit:contain;mix-blend-mode:multiply;margin:0 auto 24px}
.hero{padding-top:48px;background-image:radial-gradient(ellipse at 45% 25%,#e1eaff99,transparent 60%),radial-gradient(ellipse at 70% 10%,#fff0bc55,transparent 40%)}
.accent{color:#164ed8}.comma{color:#9aadd6}.live-dot{background:#ffc400;box-shadow:0 0 0 3px #ffc40020}
.install-box{background:#0d1934;border-color:#233963;box-shadow:0 16px 35px #142c5718}
.terminal-head{border-color:#263958;color:#c0cbe0}.platform{color:#9aaac6}
.command-row button{background:#223962;border-color:#46618b;color:#edf2ff}.command-row button:hover{background:#2e4a7f}
.install-foot{background:#14223f;color:#a4b4cf}.install-foot a{color:#ffda78}
.release-pill{border-color:#ccd8f3;background:#edf2ff}.hero-tags i{color:#a7b4d0}
.cards article{background:#ffffff99}.card-number{color:#4c6fc2}.mini-terminal em{color:#889bc2}
pre{background:#edf1f9;border-color:#dce2ef}.flow b{color:#9aadd6}
.github-link:hover{background:#e9efff}.language-switch button[aria-pressed="true"]{background:#164ed8;color:#fff}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#164ed8}
.cta{background:#164ed8}.cta:hover{background:#0b36a7}
@media(max-width:760px){.hero{padding-top:36px}.hero-logo{width:96px;height:64px;margin-bottom:20px}}
@media(max-width:400px){.nav .brand-logo{width:40px;height:28px}}

/* Shared title scale and sentence rows keep language switching stable. */
.hero-copy-line{display:flex;align-items:center;justify-content:center;min-height:1.9em;text-wrap:balance}
@media(max-width:600px){.hero-copy{max-width:18em}.hero-copy-line{min-height:3.8em}}

/* Optional installation details share one layout across both languages. */
.musl-install{max-width:970px;margin:28px auto 0;padding:20px 24px;border:1px solid var(--line);border-radius:10px;text-align:left;background:#ffffff99}
.musl-install summary{font-size:15px;font-weight:600;color:var(--green);cursor:pointer}
.musl-install p{font-size:13px;line-height:1.9;color:var(--muted);overflow-wrap:anywhere}
.musl-install pre{max-width:100%;overflow-x:auto;text-align:left}
.musl-install a{color:var(--green);text-decoration:underline}
@media(min-width:1000px){.musl-install [data-i18n="muslIntro"],.musl-install [data-i18n="muslRuntime"]{min-height:3.8em}.musl-install [data-i18n="muslRender"]{min-height:5.7em}}
@media(max-width:600px){.musl-install{padding:16px}.musl-install summary{font-size:14px}}

/* Keep platform/tag controls aligned across both languages and narrow screens. */
.install-selectors { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding: 20px 24px 0; text-align: left; }
.install-selectors label { display: flex; flex-direction: column; gap: 8px; min-width: 0; font-size: 13px; }
.install-selectors input, .install-selectors select { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #ccd8ed; border-radius: 8px; padding: 10px; background: #fff; color: #14284f; font: inherit; }
.install-selectors input[aria-invalid="true"] { border-color: #b42318; }
.tag-help { padding: 0 24px; text-align: left; font-size: 12px; line-height: 1.6; color: #b0bed6; }
#tag-error { color: #ffb4ab; }
.command-row code { overflow-wrap: anywhere; }
@media (max-width: 520px) { .install-selectors { grid-template-columns: 1fr; padding: 16px 16px 0; gap: 12px; } .tag-help { padding: 0 16px; } }

/* Platform icons remain local SVGs, readable with either page language. */
.install-selectors { grid-template-columns: minmax(0, 1fr) 215px; align-items: start; }
.platform-picker { min-width: 0; font-size: 13px; }
.platform-symbols { position: absolute; overflow: hidden; }
.platform-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.platform-options button { position: relative; display: flex; align-items: center; gap: 9px; min-width: 0; padding: 12px 10px; border: 1px solid #435674; border-radius: 9px; background: #142440; color: #dce7f7; cursor: pointer; font: inherit; text-align: left; }
.platform-options button:hover { background: #223857; border-color: #8eaed1; }
.platform-options button[aria-pressed="true"] { background: #24473e; border-color: #b0e19b; box-shadow: inset 0 0 0 1px #b0e19b; color: #f3ffe9; }
.platform-options svg { width: 30px; height: 34px; flex: 0 0 30px; }
.platform-options strong, .platform-options small { display: block; }
.platform-options strong { font-size: 14px; font-weight: 600; }
.platform-options small { margin-top: 4px; font-size: 10px; color: #b6c9df; white-space: nowrap; }
.platform-check { position: absolute; right: 5px; top: 3px; color: #c6f0af; font-size: 10px; visibility: hidden; }
.platform-options [aria-pressed="true"] .platform-check { visibility: visible; }
@media(max-width:760px) { .install-selectors { grid-template-columns: 1fr; } }
@media(max-width:430px) { .platform-options { grid-template-columns: 1fr; gap: 6px; } .platform-options button { padding: 8px 14px; gap: 12px; } .platform-options button>span:not(.platform-check) { display: flex; align-items: baseline; gap: 12px; } .platform-options small { margin: 0; } .platform-options svg { height: 29px; } .platform-check { right: 12px; top: 14px; font-size: 13px; } }

/* Port reference and configuration steps use the same layout in both languages. */
.port-guide>p{font-size:13px;line-height:1.9;max-width:100%;overflow-wrap:anywhere}
.port-guide a,.step a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.port-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#ffffff99}
.port-table-wrap:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.port-table{width:100%;min-width:650px;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.8}
.port-table caption{text-align:left;padding:18px 20px;color:var(--muted);font-size:12px}
.port-table th,.port-table td{padding:16px 20px;border-top:1px solid var(--line);vertical-align:top}
.port-table thead{background:#edf1f9}.port-table th{font-weight:600}
.port-table small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px}
.config-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:36px}
.config-heading h3{font-size:21px;font-weight:550;margin:0}.config-heading a{font-size:12px;flex-shrink:0}
.port-guide .step>div{min-width:0}.config-command{position:relative;padding-top:32px;background:#edf1f9;border:1px solid var(--line);border-radius:6px;margin:16px 0}
.config-command pre{border:0;background:transparent;margin:0;padding-top:8px}
.config-command button{position:absolute;top:8px;right:12px;background:#fff;border:1px solid #b9c8e5;border-radius:5px;color:var(--green);padding:4px 12px;font:inherit;font-size:12px;cursor:pointer}
.config-command button:hover{background:#e2eaff}.config-command button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:760px){.port-table th,.port-table td{padding:12px 14px}.config-heading{align-items:flex-start;flex-direction:column;gap:8px}.port-guide .step{grid-template-columns:1fr;gap:10px}.port-guide .step h3{margin-top:0}}

.port-scroll-hint{display:none}
@media(max-width:760px){.port-scroll-hint{display:block}}

/* Windows shares the platform picker and uses native ZIP / CMD instructions. */
.windows-download-panel { padding: 0 24px 16px; text-align: left; color: #c0cbe0; font-size: 12px; line-height: 1.8; }
.windows-download-links { display: flex; flex-wrap: wrap; gap: 10px; }
.windows-download-links a { display: inline-block; border: 1px solid #8eaf9b; border-radius: 6px; padding: 9px 14px; color: #eefce7; background: #24473e; }
.windows-download-links a:not([href]) { opacity: .45; cursor: not-allowed; }
.windows-download-panel pre { background: #142440; color: #dce7f7; border-color: #435674; }
@media (min-width: 761px) and (max-width: 1000px) { .install-selectors { grid-template-columns: 1fr; } }
@media (min-width: 431px) and (max-width: 620px) { .platform-options { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .windows-download-panel { padding: 0 16px 16px; } }
