:root{--bg:#edf1e9;--surface:#dde6d9;--paper:#f7f9f4;--ink:#182d23;--muted:#526257;--accent:#246d4c;--accent-hover:#184f36;--accent-ink:#fff;--stage:#14251f;--stage-ink:#e5f0e7;--gutter:clamp(20px,3.3vw,64px);--radius:2px;--ease:cubic-bezier(.16,1,.3,1);--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;--serif:"Songti SC","STSong","Noto Serif CJK SC","SimSun",serif;--small:14px;--body:17px;--lead:20px;--head:36px;--display:clamp(44px,4.3vw,66px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--body);line-height:1.75;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a,button{touch-action:manipulation}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure,dl,dd{margin:0}h1,h2,h3{text-wrap:balance}h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:-.04em}h1{font-size:var(--display);line-height:1.22}h2{font-size:var(--head);line-height:1.3}h3{font-size:var(--lead);font-weight:600;line-height:1.5}p{text-wrap:pretty}p+p{margin-top:16px}code{font-size:1em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}pre{margin:24px 0;line-height:1.85;white-space:pre;overflow-x:auto;font-size:var(--body)}pre code{font-size:inherit}ul{padding-left:1.3em}li+li{margin-top:12px}strong{font-weight:600}.skip-link{position:absolute;left:var(--gutter);top:10px;background:var(--ink);color:var(--accent-ink);padding:10px 18px;z-index:20;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{padding:25px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:28px;background:var(--bg)}.brand{text-decoration:none;font-size:20px;line-height:1.45;font-weight:600;display:inline-flex;flex-direction:column}.brand span{font-size:var(--small);font-weight:400;letter-spacing:.01em;color:var(--muted)}nav{display:flex;flex-wrap:wrap;gap:clamp(18px,2.7vw,42px)}nav a{font-size:var(--body);text-decoration:none;padding:6px 0}.opening{display:grid;grid-template-columns:1fr 1fr;align-items:start}.reading{min-width:0}.hero{padding:65px clamp(30px,5.5vw,88px) 100px var(--gutter);min-height:calc(100svh - 107px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.lead{font-size:var(--lead);margin-top:32px;max-width:30em;line-height:1.8}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;min-height:58px;padding:13px 22px;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius);text-decoration:none;font-size:17px;font-weight:600;transition:transform .2s var(--ease),background-color .18s}.button:hover{background:var(--accent-hover);color:var(--accent-ink)}.button:active{transform:translateY(2px)}.button span{font-size:var(--lead)}.hero .button{margin-top:36px}.download-meta{font-size:var(--small);line-height:1.8;color:var(--muted);margin-top:20px}.text-link{font-size:var(--body)}.hero .text-link{margin-top:24px}.visual-stage{position:sticky;top:0;min-height:100svh;background:var(--stage);color:var(--stage-ink);display:flex;align-items:center;justify-content:center;overflow:hidden}.stage-inner{padding:48px 30px;width:100%}.image-link{display:block;overflow:hidden;background:var(--stage);border-radius:var(--radius);cursor:zoom-in}.image-link:focus-visible{outline-offset:5px}.hero-image img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.stage-caption{margin-top:30px;display:flex;justify-content:space-between;gap:20px;font-size:var(--body)}.stage-caption a:hover{color:var(--stage-ink)}.privacy-caption{font-size:var(--small);margin-top:12px;color:var(--stage-ink)}.features{padding:35px clamp(30px,5.5vw,88px) 90px var(--gutter)}.features h2{font-size:var(--head);margin-bottom:48px}.feature{margin-top:52px}.feature h3{margin-bottom:18px}.key-feature{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px}.key-feature kbd{font-family:var(--sans);font-size:var(--head);font-weight:500;line-height:1;padding:17px 20px;background:var(--surface);border-radius:var(--radius)}.key-feature>span{font-size:var(--lead)}.key-feature p{flex:0 0 100%;font-size:var(--body);margin-top:6px}.page-section{padding:110px var(--gutter)}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:5vw;margin-bottom:55px;align-items:start}.section-intro>p{max-width:34em;font-size:var(--lead)}.screenshots{background:var(--paper)}.screenshot-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.screenshot-item img{aspect-ratio:1;object-fit:cover}.screenshot-item figcaption{padding-top:25px}.screenshot-item h3{margin-bottom:12px}.screenshot-item p{font-size:var(--body)}.install{background:var(--surface)}.install-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.install-steps{margin:0;padding-left:1.6em}.install-steps li{padding-left:8px;margin-bottom:35px}.install-steps li::marker{font-variant-numeric:tabular-nums;font-size:var(--lead)}.install-steps h3{margin-bottom:10px}.folder-guide{background:var(--paper);padding:30px}.folder-guide p{font-size:var(--body)}.upgrade-note{margin-top:35px}.upgrade-note h3{margin-bottom:15px}.usage-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.usage-notes article+article{margin-top:38px}.usage-notes h3{margin-bottom:14px}.command-list{background:var(--paper);padding:30px}.command-list>p{font-size:var(--body);margin-top:10px}.command-list dl{margin-top:25px}.command-list dl>div{margin-top:21px}.copy-command{width:100%;display:flex;justify-content:space-between;gap:15px;align-items:center;border:0;border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:8px 12px;text-align:left;min-height:44px}.copy-command:hover{background:var(--accent);color:var(--accent-ink)}.copy-command span{font-size:var(--small)}dd{font-size:var(--body);margin-top:8px}.copy-status{min-height:1.5em;color:var(--accent)}.updates{background:var(--paper)}.release-layout{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.latest-release{background:var(--accent);color:var(--accent-ink);padding:38px}.latest-release h3{font-family:var(--serif);font-size:var(--display);line-height:1.2;font-weight:500}.release-date{font-size:var(--body);margin-top:12px}.latest-release ul{margin:26px 0 32px}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--surface);color:var(--ink)}.package-meta{font-size:var(--small);margin-top:18px}.release-detail h3{margin-bottom:14px}.release-detail p{font-size:var(--body)}.checksum{padding:20px;background:var(--surface);margin:20px 0}.checksum>span{display:block;font-size:var(--small);margin-bottom:10px}.checksum code{word-break:break-all;line-height:1.75}.release-detail .validation-heading{margin-top:35px}.history{margin-top:62px;max-width:900px;margin-left:auto;margin-right:auto}.history>h3{font-size:var(--head);font-family:var(--serif);margin-bottom:25px}.history details{background:var(--bg);margin-top:8px;padding:0 24px}.history summary{display:flex;align-items:center;gap:20px;list-style:none;min-height:62px;cursor:pointer;font-size:var(--lead)}.history summary::-webkit-details-marker{display:none}.history summary span:first-child{font-weight:600}.history summary span:nth-child(2){font-size:var(--small);margin-left:auto;color:var(--muted)}.history summary::after{content:'+';width:18px;font-size:var(--lead);text-align:center}.history details[open] summary::after{content:'−'}.history summary:hover{color:var(--accent)}.history details p{padding:0 0 24px;font-size:var(--body)}.faq{display:grid;grid-template-columns:1fr 2fr;gap:5vw}.faq-text{columns:2;column-gap:40px}.faq-text p{font-size:var(--body);break-inside:avoid;margin:0 0 24px}.faq-text strong{display:block;margin-bottom:6px}.site-footer{padding:44px var(--gutter);display:grid;grid-template-columns:1fr 1.5fr auto;gap:28px;background:var(--surface);align-items:center}.site-footer p{font-size:var(--small);color:var(--muted)}.site-footer>a:last-child{font-size:var(--small)}.image-dialog{position:fixed;inset:0;width:min(94vw,1560px);height:auto;max-height:94svh;margin:auto;padding:52px 22px 22px;border:0;border-radius:var(--radius);background:var(--stage);color:var(--stage-ink);overflow:auto}.image-dialog::backdrop{background:rgba(10,20,16,.9)}.image-dialog>img{height:auto;max-height:74svh;object-fit:contain}.close-dialog{position:absolute;right:20px;top:8px;padding:7px 12px;min-height:40px;border:0;background:var(--surface);color:var(--ink)}.dialog-caption{font-size:var(--small);margin:15px 0 5px}.original-link{font-size:var(--small)}
@media(min-width:1600px){.opening,.site-header,.page-section,.site-footer{max-width:1800px;margin-inline:auto}.hero{padding-right:90px}.features{padding-right:90px}}
@media(max-width:1000px){:root{--head:32px;--body:16px;--lead:18px;--display:48px}.site-header{padding-block:22px}.opening{grid-template-columns:1fr 1fr}.hero{padding:45px 30px 65px var(--gutter);min-height:700px}.features{padding-right:30px}.features h2{font-size:var(--head)}.stage-inner{padding:28px 18px}.stage-caption{flex-direction:column;gap:10px}.page-section{padding-block:80px}.section-intro{gap:35px}.section-intro>p{font-size:var(--body)}.screenshot-gallery{gap:22px}.install-layout,.usage-layout{gap:35px}.folder-guide,.command-list,.latest-release{padding:24px}.faq{grid-template-columns:1fr}.faq-text{columns:2}.site-footer{grid-template-columns:1fr 1fr}.site-footer>a:last-child{grid-column:1/-1}}
@media(max-width:720px){:root{--display:46px;--head:30px;--lead:19px;--gutter:20px}.site-header{display:block;padding-bottom:16px}.brand{font-size:19px}.site-header nav{margin-top:19px;gap:0;justify-content:space-between}.site-header nav a{font-size:var(--body);min-height:40px;display:flex;align-items:center}.opening{display:flex;flex-direction:column}.reading{display:contents}.hero{order:0;padding:36px var(--gutter) 44px;min-height:auto}.hero .lead{font-size:var(--lead);margin-top:25px}.hero .button{margin-top:28px}.hero .download-meta{margin-top:17px}.hero .text-link{margin-top:20px}.visual-stage{position:relative;order:1;min-height:0;width:100%}.stage-inner{padding:30px var(--gutter)}.stage-caption{flex-direction:row;margin-top:20px;gap:16px;font-size:14px}.privacy-caption{font-size:var(--small)}.features{order:2;width:100%;padding:62px var(--gutter) 65px}.features h2{margin-bottom:30px;font-size:var(--head)}.feature{margin-top:35px}.feature h3{margin-bottom:12px}.page-section{padding:65px var(--gutter)}.section-intro{display:block;margin-bottom:32px}.section-intro p{margin-top:22px}.screenshot-gallery{display:block}.screenshot-item+.screenshot-item{margin-top:45px}.screenshot-item figcaption{padding-top:20px}.install-layout,.usage-layout,.release-layout{display:block}.install-aside{margin-top:34px}.install-steps{padding-left:1.4em}.install-steps li{padding-left:5px;margin-bottom:28px}.folder-guide,.command-list,.latest-release{padding:23px}.folder-guide pre{font-size:var(--small)}.usage-notes article+article{margin-top:30px}.command-list{margin-top:35px}.release-detail{margin-top:35px}.latest-release h3{font-size:46px}.latest-release .button{width:100%;gap:12px;padding-inline:16px;font-size:var(--body)}.history{margin-top:45px}.history details{padding-inline:18px}.history summary{gap:14px;font-size:17px;min-height:60px}.history summary span:nth-child(2){font-size:var(--small)}.faq{display:block}.faq-text{columns:1;margin-top:30px}.site-footer{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding-block:34px}.image-dialog{width:100%;max-height:100svh;padding-inline:12px}.image-dialog>img{max-height:80svh}.button{min-height:56px}.key-feature kbd{font-size:var(--head)}}
@media(prefers-reduced-motion:no-preference){.hero h1{animation:hero-rise .8s var(--ease) both}.hero .lead{animation:hero-rise .9s .07s var(--ease) both}.hero .button{animation:hero-rise .9s .14s var(--ease) both}.hero-image{animation:picture-in 1.15s var(--ease) both}.reveal-text{animation:section-rise .8s var(--ease) both}.reveal-picture{animation:picture-in 1s var(--ease) both}.reveal-row{animation:row-in .7s var(--ease) both}@keyframes hero-rise{from{transform:translateY(18px);opacity:.6}to{transform:none;opacity:1}}@keyframes section-rise{from{transform:translateY(22px);opacity:.5}to{transform:none;opacity:1}}@keyframes picture-in{from{transform:scale(.97);opacity:.7}to{transform:scale(1);opacity:1}}@keyframes row-in{from{transform:translateX(-12px);opacity:.65}to{transform:none;opacity:1}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{body{background:#fff;color:#000}.site-header nav,.button,.image-dialog,.copy-command span{display:none}.opening,.reading{display:block}.visual-stage{position:static;min-height:0}.hero{min-height:0}.page-section,.hero,.features{padding:25px 0}.visual-stage{max-width:600px}.stage-inner{padding:20px}.screenshot-gallery{grid-template-columns:repeat(3,1fr)}details{break-inside:avoid}.install-layout,.usage-layout,.release-layout{gap:25px}.site-footer{padding:20px 0}a{color:inherit}}

/* The extra download link stays in flow without JavaScript. */
.latest-download-dock{display:grid;grid-template-columns:1fr auto;column-gap:24px;row-gap:3px;width:max-content;min-width:286px;min-height:100px;margin:28px var(--gutter);padding:19px 24px;background:var(--accent-hover);color:var(--accent-ink);border-radius:var(--radius);text-decoration:none;transition:background-color .18s,transform .18s var(--ease)}
.download-dock-title{font-size:var(--lead);font-weight:600;line-height:1.5}
.download-dock-meta{grid-column:1;font-size:var(--small);line-height:1.6;white-space:nowrap}
.download-dock-arrow{grid-column:2;grid-row:1/3;align-self:center;font-size:var(--head);line-height:1}
.latest-download-dock:hover{background:var(--ink);color:var(--accent-ink)}
.latest-download-dock:active{transform:translateY(2px)}
.latest-download-dock:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
.download-dock-enabled{padding-bottom:128px}
.download-dock-enabled .latest-download-dock{position:fixed;right:var(--gutter);bottom:24px;z-index:15;margin:0}
.download-dock-enabled .latest-download-dock.is-suppressed{visibility:hidden;pointer-events:none}
h1,h2,h3,a,button,summary{scroll-margin-bottom:150px}
@media(max-width:720px){.latest-download-dock{width:calc(100% - var(--gutter)*2);min-width:0;min-height:96px;padding:17px 22px}.download-dock-enabled{padding-bottom:142px}.download-dock-enabled .latest-download-dock{left:var(--gutter);right:var(--gutter);bottom:max(16px,env(safe-area-inset-bottom));width:auto}.download-dock-title{font-size:20px}.download-dock-meta{font-size:14px}}
@media(prefers-reduced-motion:reduce){.latest-download-dock{transition:none}}
@media print{.download-dock-enabled{padding-bottom:0}.latest-download-dock{display:none}}
