:root { color-scheme:light; --paper:#f8f4ef; --ink:#29231f; --muted:#756d67; --red:#773b40; --line:#e7ded5; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; -webkit-font-smoothing:antialiased; }
a,button { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible { outline:3px solid #a66d72; outline-offset:4px; }
.download-shell { max-width:1120px; min-height:100vh; margin:auto; padding:0 clamp(24px,5vw,72px); display:flex; flex-direction:column; }
.download-header { min-height:92px; display:flex; align-items:center; border-bottom:1px solid var(--line); }
.download-brand { display:inline-flex; align-items:center; gap:12px; color:var(--ink); text-decoration:none; font-size:21px; font-weight:600; }
.download-brand img { width:46px; height:46px; border-radius:12px; }
main { flex:1; display:grid; place-items:center; }
.download-hero { width:100%; padding:72px 0 82px; text-align:center; }
h1 { margin:0; font-family:"Songti SC","Noto Serif CJK SC",serif; font-size:clamp(42px,6.2vw,72px); font-weight:600; letter-spacing:-.04em; line-height:1.25; }
.download-lead { margin:22px 0 0; color:var(--muted); font-size:clamp(16px,1.7vw,19px); letter-spacing:.06em; }
.download-actions { margin:47px auto 0; max-width:310px; }
.download-button { min-height:62px; display:flex; align-items:center; justify-content:center; padding:12px 24px; border-radius:12px; background:var(--red); color:#fff; text-decoration:none; font-size:19px; font-weight:600; box-shadow:0 10px 22px rgba(93,42,47,.15); transition:background .2s,transform .2s; }
.download-button:hover { background:#612b30; transform:translateY(-2px); }
.download-status,.download-fallback-wrap { margin:14px 0 0; color:var(--muted); font-size:14px; }
.download-fallback-wrap a { color:var(--red); text-underline-offset:3px; }
.download-footer { display:grid; grid-template-columns:1fr auto; gap:12px 24px; padding:30px 0 40px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
.download-footer-brand { color:var(--ink); font-size:17px; font-weight:600; }
.download-footer-links { display:flex; flex-wrap:wrap; gap:18px; align-items:center; }
.download-footer a { color:inherit; text-decoration:none; }
.download-footer a:hover { color:var(--red); }
.download-footer p { grid-column:1/-1; margin:0; line-height:1.8; }
.wechat-guide[hidden] { display:none; }
.wechat-guide { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:28px; background:rgba(27,24,26,.94); color:#fff; }
.wechat-guide-open { overflow:hidden; }
.wechat-guide-arrow { position:absolute; top:max(20px,env(safe-area-inset-top)); right:max(25px,env(safe-area-inset-right)); font-size:62px; line-height:1; }
.wechat-guide-panel { width:min(100%,520px); text-align:center; }
.wechat-guide-panel h2 { margin:0 0 28px; font-size:clamp(30px,8vw,42px); line-height:1.35; }
.wechat-guide-panel p { margin:0; font-size:clamp(23px,6vw,31px); line-height:1.8; }
.wechat-guide-panel strong { color:#ffe8df; }
.wechat-guide-panel button { margin-top:45px; padding:12px 32px; border:1px solid rgba(255,255,255,.65); border-radius:10px; background:transparent; color:#fff; font:inherit; font-size:17px; cursor:pointer; }
@media (max-width:600px) { .download-header { min-height:75px; } .download-brand { font-size:18px; } .download-brand img { width:40px; height:40px; border-radius:10px; } .download-hero { padding:66px 0 75px; } .download-lead { margin-top:18px; } .download-actions { margin-top:39px; } .download-button { min-height:58px; } .download-footer { grid-template-columns:1fr; gap:14px; padding:25px 0 34px; } .download-footer p { grid-column:1; } }
@media (prefers-reduced-motion:reduce) { .download-button { transition:none; } }
