*{margin:0;padding:0;box-sizing:border-box}
:root{--primary:#25c2a0;--primary-dark:#21a78d;--bg:#1b1b1d;--bg-card:#242526;--bg-sidebar:#1e1e20;--text:#e3e3e3;--text-muted:#999;--border:#3a3a3c;--code-bg:#2d2d2f}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Noto Sans SC',sans-serif;background:var(--bg);color:var(--text);line-height:1.65}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
.layout{display:flex;min-height:100vh}
.sidebar{width:260px;background:var(--bg-sidebar);border-right:1px solid var(--border);padding:20px 0;position:fixed;top:0;bottom:0;overflow-y:auto}
.sidebar .logo{padding:0 20px 16px;font-size:1.2em;font-weight:700;color:var(--primary);border-bottom:1px solid var(--border);margin-bottom:12px}
.sidebar .logo span{color:var(--text-muted);font-weight:400;font-size:0.8em}
.sidebar nav{padding:0 12px}
.sidebar .section-title{font-size:0.72em;text-transform:uppercase;color:var(--text-muted);letter-spacing:0.8px;padding:12px 8px 6px;font-weight:600}
.sidebar a{display:block;padding:6px 12px;border-radius:4px;color:var(--text-muted);font-size:0.88em;margin-bottom:2px;transition:all 0.15s}
.sidebar a:hover{background:var(--bg-card);color:var(--text);text-decoration:none}
.sidebar a.active{background:rgba(37,194,160,0.12);color:var(--primary);font-weight:600}
.main{margin-left:260px;flex:1;padding:32px 48px 60px;max-width:900px}
.doc-title{font-size:2em;margin-bottom:8px;color:#fff}
.doc-meta{font-size:0.82em;color:var(--text-muted);margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.doc-body p{margin-bottom:1.2em;font-size:0.95em}
.doc-body h2{font-size:1.5em;margin:2em 0 0.6em;color:#fff;padding-bottom:6px;border-bottom:1px solid var(--border)}
.doc-body h3{font-size:1.2em;margin:1.5em 0 0.5em;color:var(--text)}
.doc-body ul,.doc-body ol{margin:0 0 1.2em 1.6em;font-size:0.95em}
.doc-body li{margin-bottom:0.4em}
.doc-body code{background:var(--code-bg);padding:2px 6px;border-radius:3px;font-family:'SF Mono','Fira Code',monospace;font-size:0.88em;color:#e06c75}
.doc-body pre{background:var(--code-bg);border:1px solid var(--border);border-radius:6px;padding:16px;margin:0 0 1.4em;overflow-x:auto;font-size:0.85em;line-height:1.5}
.doc-body pre code{background:none;padding:0;color:#abb2bf}
.doc-body blockquote{border-left:3px solid var(--primary);margin:1.2em 0;padding:0.8em 1.2em;background:rgba(37,194,160,0.06);border-radius:0 4px 4px 0;font-size:0.92em;color:var(--text-muted)}
.doc-body table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:0.9em}
.doc-body th{background:var(--bg-card);text-align:left;padding:10px 12px;border:1px solid var(--border);color:var(--text);font-weight:600}
.doc-body td{padding:8px 12px;border:1px solid var(--border)}
.admonition{border-radius:6px;padding:14px 18px;margin:1.4em 0;border-left:4px solid}
.admonition.info{background:rgba(56,132,244,0.08);border-color:#3884f4}
.admonition.tip{background:rgba(37,194,160,0.08);border-color:var(--primary)}
.admonition.warning{background:rgba(230,162,60,0.08);border-color:#e6a23c}
.admonition .admonition-title{font-weight:700;font-size:0.88em;margin-bottom:6px;text-transform:uppercase;letter-spacing:0.3px}
.admonition.info .admonition-title{color:#3884f4}
.admonition.tip .admonition-title{color:var(--primary)}
.admonition.warning .admonition-title{color:#e6a23c}
.author-bio{margin-top:2.5em;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;display:flex;gap:14px;align-items:flex-start}
.author-bio .author-avatar{width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1em;flex-shrink:0}
.author-bio .author-info{flex:1}
.author-bio .author-name{font-weight:700;font-size:0.9em;color:#fff;margin-bottom:2px}
.author-bio .author-role{font-size:0.75em;color:var(--primary);margin-bottom:6px}
.author-bio .author-desc{font-size:0.82em;color:var(--text-muted);line-height:1.5}
.hero{text-align:center;padding:40px 0 30px}
.hero h1{font-size:2.4em;color:#fff;margin-bottom:8px}
.hero p{color:var(--text-muted);font-size:1.05em;max-width:600px;margin:0 auto}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:30px 0}
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:20px;transition:border-color 0.2s}
.card:hover{border-color:var(--primary)}
.card h3{font-size:1em;color:#fff;margin-bottom:6px}
.card h3 a{color:#fff}
.card h3 a:hover{color:var(--primary);text-decoration:none}
.card p{font-size:0.85em;color:var(--text-muted);line-height:1.5}
.site-footer{margin-left:260px;border-top:1px solid var(--border);padding:20px 48px;font-size:0.78em;color:var(--text-muted)}
@media(max-width:768px){
.sidebar{display:none}
.main,.site-footer{margin-left:0}
.main{padding:20px 16px 40px}
.site-footer{padding:16px}
}
