:root { --ink:#11182d; --muted:#626b7e; --paper:#f7f8fc; --line:#dfe3ee; --blue:#3b48ff; --aqua:#7ce8d1; --warm:#ffe9bc; --radius:24px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,"Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif; line-height:1.5; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; }
.shell { max-width:1180px; margin:0 auto; padding:0 32px; }
.topbar { display:flex; align-items:center; justify-content:space-between; min-height:76px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:10px; font-size:16px; letter-spacing:-.04em; white-space:nowrap; }
.brand img { width:34px; height:34px; }.brand strong { font-weight:750; }
.back { color:var(--muted); font-size:14px; font-weight:650; }.back:hover { color:var(--blue); }
.product-hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(290px,.95fr); gap:70px; align-items:center; padding:92px 0 78px; }
.product-logo { width:112px; height:112px; object-fit:contain; border-radius:28px; box-shadow:0 18px 36px rgba(17,24,45,.12); }
.eyebrow { margin:28px 0 15px; color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.13em; }
h1,h2,h3,p { margin-top:0; } h1,h2 { letter-spacing:-.06em; line-height:.98; } h1 { margin-bottom:23px; font-size:clamp(52px,7vw,88px); } h2 { font-size:clamp(34px,4vw,52px); }
.intro { max-width:610px; margin-bottom:32px; color:var(--muted); font-size:19px; letter-spacing:-.02em; }
.actions { display:flex; flex-wrap:wrap; gap:12px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:12px 20px; border-radius:999px; font-size:14px; font-weight:750; }
.button-primary { color:white; background:var(--ink); }.button-primary:hover { background:var(--blue); }.button-secondary { border:1px solid var(--line); background:white; }
.button-disabled { color:#77756e; background:#e7e4dc; cursor:not-allowed; }
.visual { min-height:410px; display:grid; place-items:center; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius); background:linear-gradient(145deg,#eaf1ff,#fff); }
.visual.calmanta { background:linear-gradient(145deg,#fff0f8,#fff9ed); }.visual img { width:min(52%,230px); height:auto; filter:drop-shadow(0 26px 26px rgba(59,72,255,.16)); }
.release-note { margin:0; padding:13px 16px; color:var(--muted); border-top:1px solid var(--line); background:white; font-size:13px; }
.details { display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; padding:80px 0; border-top:1px solid var(--line); }
.details p { max-width:620px; color:var(--muted); font-size:17px; }.feature-list { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.feature-list li { display:grid; grid-template-columns:42px 1fr; gap:16px; padding:18px 0; border-bottom:1px solid var(--line); }.feature-list b { color:var(--blue); font:700 12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace; }.feature-list span { font-size:15px; }
.download { display:grid; grid-template-columns:1fr auto; gap:36px; align-items:center; padding:42px; border-radius:var(--radius); color:white; background:var(--ink); }.download h2 { margin:0 0 11px; }.download p { margin:0; color:#c7ccdb; }.download .button { color:var(--ink); background:var(--aqua); }.download .button-disabled { color:#77756e; background:#e7e4dc; }
.download-actions { display:grid; justify-items:end; gap:10px; }.download-checksum { color:#c7ccdb; font-size:13px; font-weight:650; text-decoration:underline; text-underline-offset:3px; }
.footer { padding:30px 0 42px; color:var(--muted); font-size:13px; }.footer p { margin:0; }
@media (max-width:760px) { .shell { padding:0 20px; }.topbar { min-height:66px; }.product-hero,.details { display:block; }.product-hero { padding:56px 0; }.product-logo { width:86px; height:86px; border-radius:22px; }.eyebrow { margin-top:23px; }.intro { font-size:17px; }.visual { min-height:260px; margin-top:42px; }.details { padding:58px 0; }.details > div:first-child { margin-bottom:30px; }.download { display:block; padding:30px 24px; }.download .button { width:100%; margin-top:24px; }.download-actions { justify-items:stretch; }.download-checksum { margin-top:3px; text-align:center; }.footer { padding-bottom:30px; } }
@media (max-width:380px) { .shell { padding:0 16px; }.brand { font-size:14px; }.brand img { width:30px; height:30px; } h1 { font-size:45px; }.actions { display:grid; }.actions .button { width:100%; } }
