:root { --green:#0F7B3F; --green-d:#0a5c2f; --green-l:#e8f5e9; --ink:#1f2937; --mut:#6b7280; --line:#e5e7eb; --warn:#b45309; --warn-l:#fffbeb; --info:#1d4ed8; --info-l:#eff6ff }
* { box-sizing:border-box; margin:0; padding:0 }
[hidden] { display:none !important }
body { font-family:-apple-system,'PingFang SC','Microsoft YaHei','Segoe UI',sans-serif; color:var(--ink); background:#f8fafc; line-height:1.7; -webkit-font-smoothing:antialiased }
.layout { display:flex; min-height:100vh }
aside { width:260px; background:#fff; border-right:1px solid var(--line); position:sticky; top:0; height:100vh; overflow-y:auto; flex-shrink:0 }
aside .brand { padding:22px 24px 14px }
aside .brand b { color:var(--green); font-size:18px; letter-spacing:-.3px }
aside .brand span { display:block; color:var(--mut); font-size:12px; margin-top:3px }

/* 语言切换：三按钮分段控件（侧边栏内） */
.lang-sw { display:flex; margin:0 20px 14px; border-radius:10px; overflow:hidden; border:1px solid var(--line) }
.lang-sw a, .lang-sw span { flex:1; text-align:center; padding:8px 4px; font-size:12.5px; font-weight:600; color:var(--mut); text-decoration:none; background:#f8f9fa; transition:background .15s, color .15s; cursor:pointer }
.lang-sw a:hover { color:var(--green); background:var(--green-l) }
.lang-sw span { color:#fff; background:var(--green) }
.lang-sw a:not(:last-child), .lang-sw span:not(:last-child) { border-right:1px solid var(--line) }

.lang-home { margin:0 24px 12px; text-align:right }
.lang-home a { font-size:12px; color:var(--mut); text-decoration:none }
.lang-home a:hover { color:var(--green) }

aside .nav-div { height:1px; background:var(--line); margin:0 24px 10px }
aside a.toc { display:flex; align-items:center; padding:9px 24px; color:var(--mut); text-decoration:none; font-size:14px; transition:all .1s }
aside a.toc::before { content:''; width:4px; height:4px; border-radius:50%; background:var(--line); margin-right:10px; flex-shrink:0; transition:.1s }
aside a.toc:hover { color:var(--green); background:#f8fafc }
aside a.toc:hover::before { background:var(--green) }
aside a.back { margin:18px 24px 0; display:inline-flex; align-items:center; gap:6px; font-size:13px; color:var(--mut); text-decoration:none }
aside a.back:hover { color:var(--green) }
main { flex:1; padding:42px 52px; max-width:960px }
h1 { font-size:29px; margin-bottom:4px; letter-spacing:-.4px } .sub { color:var(--mut); margin-bottom:30px; font-size:14.5px }
h2 { font-size:19px; margin:38px 0 16px; padding-bottom:8px; border-bottom:1px solid var(--line); letter-spacing:-.2px }
h3 { font-size:15.5px; margin:22px 0 8px; color:var(--green-d) }
p { margin:8px 0 } ul,ol { margin:8px 0 8px 22px } li { margin:5px 0 }
table { border-collapse:collapse; width:100%; margin:14px 0; background:#fff; font-size:13.5px; border-radius:8px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,.05) }
th,td { border:none; padding:10px 14px; text-align:left; vertical-align:top }
th { background:#f1f5f9; font-weight:600; white-space:nowrap; font-size:13px }
tr:not(:first-child) td { border-top:1px solid #f1f5f9 }
code { background:#f1f5f9; padding:2px 7px; border-radius:5px; font-size:13px; font-family:'SF Mono',Consolas,monospace }
.tip,.warn { border-radius:10px; padding:14px 18px; margin:16px 0; font-size:13.5px }
.tip { background:var(--info-l); border-left:3px solid var(--info) } .warn { background:var(--warn-l); border-left:3px solid var(--warn) }
.tip b,.warn b { display:block; margin-bottom:3px }
.flow { background:#fff; border:1px solid var(--line); border-radius:10px; padding:16px 20px; margin:14px 0; font-size:14px; overflow-x:auto }
kbd { background:#fff; border:1px solid var(--line); border-bottom-width:2px; border-radius:4px; padding:0 6px; font-size:12px }
@media (max-width:860px){ aside{display:none} main{padding:20px; min-width:0} table{display:block; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch} th{white-space:normal} }
@media print{ aside{display:none} main{padding:0} body{background:#fff} }

/* 语言切换：首页顶部（与手册页侧边栏 .lang-sw 同风格） */
.lang-sw-top { display:flex; margin:0 auto 8px; border-radius:10px; overflow:hidden; border:1px solid var(--line); width:fit-content }
.lang-sw-top a, .lang-sw-top span { display:block; text-align:center; padding:8px 28px; font-size:13px; font-weight:600; color:var(--mut); text-decoration:none; background:#f8f9fa; transition:background .15s, color .15s; cursor:pointer }
.lang-sw-top a:hover { color:var(--green); background:var(--green-l) }
.lang-sw-top span { color:#fff; background:var(--green) }
.lang-sw-top a:not(:last-child), .lang-sw-top span:not(:last-child) { border-right:1px solid var(--line) }
.lang-home { display:flex; justify-content:flex-end; padding:16px 24px 6px; margin:0 }
.lang-home a { font-size:12.5px; color:var(--green); text-decoration:none; font-weight:500 }
.lang-home a:hover { text-decoration:underline }
