:root{--bg:#fbfaf7;--fg:#1d1d1f;--muted:#5d5d66;--accent:#e4572e;--accent2:#1f6feb;--card:#fff;--line:#e7e4dd}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:var(--bg);color:var(--fg)}
a{color:var(--accent2)}a:hover{text-decoration:none}
.wrap{max-width:760px;margin:0 auto;padding:0 20px}.wide{max-width:1040px}
header.site{border-bottom:1px solid var(--line);background:#fff}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{font-weight:800;font-size:20px;color:var(--fg);text-decoration:none;letter-spacing:-.3px}.logo span{color:var(--accent)}
nav a{margin-left:16px;color:var(--fg);text-decoration:none;font-size:15px}nav a.cta{background:var(--accent);color:#fff;padding:7px 14px;border-radius:999px}
nav a:first-child{margin-left:0}
.disclosure{font-size:13.5px;color:var(--muted);background:#f3f0ea;border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin:18px 0}
h1{font-size:34px;line-height:1.2;letter-spacing:-.6px;margin:28px 0 10px}h2{font-size:24px;margin:38px 0 10px;letter-spacing:-.3px}h3{font-size:19px;margin:26px 0 6px}
.meta{color:var(--muted);font-size:14px}
.lead{font-size:19px;color:#333}
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15px;background:#fff;display:block;overflow-x:auto}
th,td{border:1px solid var(--line);padding:9px 10px;text-align:left;vertical-align:top}th{background:#f3f0ea}
.box{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;padding:14px 18px;margin:22px 0}
.box.tip{border-left-color:var(--accent2)}
.btn{display:inline-block;background:var(--accent);color:#fff!important;text-decoration:none;padding:10px 18px;border-radius:999px;font-weight:600;margin:4px 6px 4px 0}
.btn.alt{background:#fff;color:var(--fg)!important;border:1px solid var(--line)}
.hero{padding:46px 0 18px}.hero h1{font-size:40px;margin-top:0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin:20px 0 40px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px;text-decoration:none;color:var(--fg);display:block;transition:transform .1s}
.card:hover{transform:translateY(-2px);border-color:#cfcac0}.card h3{margin:4px 0 6px;font-size:18px}.card p{margin:0;color:var(--muted);font-size:15px}
.tag{font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--accent);font-weight:700}
.hire{background:#1d1d1f;color:#fff;border-radius:14px;padding:24px;margin:40px 0}.hire h2{margin-top:0}.hire a{color:#fff}
.hire .btn{background:var(--accent)}
.toc{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 18px;font-size:15px}.toc ol{margin:6px 0;padding-left:20px}
footer{border-top:1px solid var(--line);margin-top:50px;padding:24px 0;color:var(--muted);font-size:14px}
footer a{color:var(--muted)}
.price{font-size:28px;font-weight:800}
code{background:#f0ede6;padding:1px 5px;border-radius:4px;font-size:.92em}
pre{background:#1d1d1f;color:#f5f5f5;padding:14px;border-radius:8px;overflow-x:auto;font-size:14px}pre code{background:none;color:inherit}
@media(max-width:600px){h1{font-size:28px}.hero h1{font-size:31px}nav a{margin-left:10px;font-size:14px}body{font-size:16.5px}}
nav a.lang{border:1px solid currentColor;padding:5px 10px;border-radius:999px;font-size:14px;opacity:.85}
html[lang="zh-Hans"] body{font-family:-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC",sans-serif;line-height:1.85}
/* CJK font fallback + language switch */
html:lang(zh-Hans) body,[lang|="zh"] body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC","Source Han Sans SC","WenQuanYi Micro Hei",sans-serif;line-height:1.8;letter-spacing:.01em}
html:lang(zh-Hans) h1,html:lang(zh-Hans) h2,html:lang(zh-Hans) h3{letter-spacing:0;line-height:1.35}
html:lang(zh-Hans) .tag{letter-spacing:.2px}
nav .lang{margin-left:16px;font-size:14px;border:1px solid var(--line);border-radius:999px;padding:3px 4px;white-space:nowrap}
nav .lang a{margin:0;padding:3px 8px;border-radius:999px;color:var(--muted);font-family:-apple-system,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC",sans-serif}
nav .lang a[aria-current]{background:var(--fg);color:#fff}
@media(max-width:600px){nav .lang{margin-left:8px}nav .lang a{padding:2px 6px}}
.cnnote{margin-top:16px;font-size:15px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent2);border-radius:8px;padding:10px 14px}
.sources{font-size:14px;color:var(--muted)}.sources li{margin:4px 0;word-break:break-all}
