body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%}*{box-sizing:border-box;margin:0;padding:0}:root{--sidebar-width:280px;--bg:#f8f9fb;--card-bg:#fff;--border:#e8eaed;--text:#374151;--text-secondary:#6b7280;--text-heading:#111827;--primary:#4f46e5;--primary-light:#eef2ff;--primary-hover:#4338ca;--sidebar-bg:#1e1b2e;--sidebar-text:#c4b5fd;--sidebar-active:#7c3aed;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-lg:0 4px 12px #00000014;--radius:12px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.6}.app{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);color:var(--sidebar-text);z-index:100;transition:width .25s;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar--collapsed{width:48px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.sidebar-toggle{width:28px;height:28px;color:var(--sidebar-text);cursor:pointer;background:#ffffff14;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:12px;transition:background .2s;display:flex;position:absolute;top:16px;right:12px}.sidebar-toggle:hover{background:#ffffff26}.sidebar-nav{padding:20px 0 20px 16px}.sidebar-title{color:#fff;margin-bottom:2px;padding-right:40px;font-size:18px;font-weight:700}.sidebar-subtitle{color:#ffffff73;margin-bottom:20px;padding-right:40px;font-size:12px}.nav-group{margin-bottom:12px}.nav-group-label{text-transform:uppercase;letter-spacing:.5px;color:#ffffff59;padding:6px 12px 4px;font-size:11px;font-weight:600}.nav-item{text-align:left;color:#ffffffa6;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;width:100%;margin:1px 0;padding:6px 12px;font-family:inherit;font-size:13px;line-height:1.4;transition:all .15s;display:block;overflow:hidden}.nav-item:hover{color:#fff;background:#ffffff14}.nav-item--active{color:#fff;background:var(--sidebar-active);font-weight:500}.main-content{margin-left:var(--sidebar-width);flex:1;max-width:100%;padding:32px 40px 60px;transition:margin-left .25s;overflow-x:hidden}.sidebar--collapsed~.main-content,.sidebar--collapsed+.main-content{margin-left:48px}.page-header{margin-bottom:32px}.page-header h1{color:var(--text-heading);margin-bottom:8px;font-size:28px;font-weight:700}.page-header p{color:var(--text-secondary);font-size:14px}.section-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:28px;transition:box-shadow .2s;overflow:hidden}.section-card:hover{box-shadow:var(--shadow-lg)}.section-header{border-bottom:1px solid var(--border);padding:24px 28px 16px}.section-title{color:var(--text-heading);margin-bottom:4px;font-size:18px;font-weight:600}.section-desc{color:var(--text-secondary);font-size:14px}.diagram-wrapper{padding:20px;overflow-x:auto}.mermaid-container{justify-content:center;min-height:100px;display:flex}.mermaid-container svg{max-width:100%;height:auto}@media (width<=1024px){:root{--sidebar-width:240px}.main-content{padding:24px 20px 40px}}@media (width<=768px){.sidebar{width:var(--sidebar-width);transform:translate(-100%)}.sidebar--collapsed{width:48px;transform:translate(0)}.main-content{padding:20px 16px 32px;margin-left:48px!important}.section-header{padding:20px 20px 12px}.diagram-wrapper{padding:12px}}
