*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #ffffff;--color-bg-secondary: #f6f8fa;--color-text: #1f2328;--color-text-secondary: #656d76;--color-border: #d0d7de;--color-link: #0969da;--color-code-bg: rgba(175, 184, 193, .2);--color-pre-bg: #161b22;--color-pre-text: #e6edf3}[data-theme=dark]{--color-bg: #0d1117;--color-bg-secondary: #161b22;--color-text: #e6edf3;--color-text-secondary: #8b949e;--color-border: #30363d;--color-link: #58a6ff;--color-code-bg: rgba(110, 118, 129, .4);--color-pre-bg: #161b22;--color-pre-text: #e6edf3}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI Adjusted,Segoe UI,Liberation Sans,sans-serif;font-size:14px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;visibility:visible}html[data-theme] body{transition:background-color .2s,color .2s}body:before{content:"";position:fixed;top:0;left:0;width:calc(50% - 510px);height:100%;background:var(--color-bg-secondary);z-index:-1;transition:background-color .2s}#app{display:flex;min-height:100vh;max-width:1280px;margin:0 auto}.sidebar{width:260px;flex-shrink:0;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);padding:20px;overflow-y:auto;position:sticky;top:0;height:100vh;transition:background-color .2s,border-color .2s}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.sidebar-header h1{font-size:1rem;font-weight:600;margin:0}.sidebar-header h1 a{text-decoration:none;color:var(--color-text)}.theme-toggle{display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--color-border);border-radius:6px;padding:6px;cursor:pointer;color:var(--color-text-secondary);transition:background-color .2s,color .2s}.theme-toggle:hover{color:var(--color-text);background:var(--color-border)}.theme-toggle svg{display:block}.nav-list{list-style:none}.nav-list .nav-list{margin-left:12px;margin-top:4px}.nav-item{margin:2px 0}.nav-item a{color:var(--color-link);text-decoration:none;display:block;padding:4px 8px;border-radius:6px;font-size:13px}.nav-item a:hover{background:var(--color-border)}.nav-folder{margin:8px 0}.folder-name{font-weight:600;font-size:12px;color:var(--color-text-secondary);display:block;padding:4px 8px;text-transform:uppercase;letter-spacing:.5px}.main-content{flex:1;min-width:0;padding:32px 48px;display:flex;gap:48px}.content{font-size:14px;line-height:1.6;word-wrap:break-word;width:800px;flex-shrink:1;min-width:0}.toc{width:220px;flex-shrink:0;position:sticky;top:32px;align-self:flex-start;max-height:calc(100vh - 64px);overflow-y:auto}.toc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.toc-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:0}.toc-close{display:none;background:none;border:none;font-size:20px;color:var(--color-text-secondary);cursor:pointer;padding:0;line-height:1}.toc-close:hover{color:var(--color-text)}.toc-overlay,.toc-toggle{display:none}.toc-list{list-style:none;border-left:1px solid var(--color-border);padding-left:0;margin:0}.toc-item{margin:0}.toc-item a{display:block;padding:4px 0 4px 12px;font-size:12px;color:var(--color-text-secondary);text-decoration:none;border-left:2px solid transparent;margin-left:-1px;cursor:pointer;transition:color .15s,border-color .15s}.toc-item a:hover{color:var(--color-text);border-left-color:var(--color-border)}.toc-item a.active{color:var(--color-link);border-left-color:var(--color-link);font-weight:500}.toc-item.toc-h3 a{padding-left:24px;font-size:11px}.content>*:first-child{margin-top:0!important}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25;color:var(--color-text)}.content h1{font-size:1.75em;padding-bottom:.3em;border-bottom:1px solid var(--color-border)}.content h2{font-size:1.35em;padding-bottom:.3em;border-bottom:1px solid var(--color-border)}.content h3{font-size:1.15em}.content h4{font-size:1em}.content p{margin-top:0;margin-bottom:16px}.content ul,.content ol{margin-top:0;margin-bottom:16px;padding-left:2em}.content li{margin-top:4px}.content li+li{margin-top:4px}.content li>p{margin-top:16px}.content code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;padding:.2em .4em;margin:0;background-color:var(--color-code-bg);border-radius:4px}.content .code-block{position:relative;margin-bottom:16px}.content .code-block[data-lang]:before{content:attr(data-lang);position:absolute;top:8px;right:60px;font-size:10px;font-family:-apple-system,BlinkMacSystemFont,sans-serif;color:#6e7681;text-transform:uppercase;letter-spacing:.5px;pointer-events:none;opacity:0;transition:opacity .15s;line-height:19px}.content .code-block:hover[data-lang]:before{opacity:1}.content .code-block .copy-btn{position:absolute;top:8px;right:8px;padding:4px 8px;font-size:11px;font-family:-apple-system,BlinkMacSystemFont,sans-serif;color:#8b949e;background:#6e768166;border:none;border-radius:4px;cursor:pointer;opacity:0;transition:opacity .15s,background .15s}.content .code-block:hover .copy-btn{opacity:1}.content .code-block .copy-btn:hover{background:#6e768199;color:#e6edf3}.content .code-block .copy-btn.copied{background:#238636;color:#fff}.content .code-block pre{margin-bottom:0}.content pre{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;padding:16px;overflow-x:auto;overflow-y:hidden;line-height:1.6;background-color:var(--color-pre-bg);border-radius:6px;margin-top:0;margin-bottom:16px;color:var(--color-pre-text);white-space:pre}.content pre code{font-size:100%;padding:0;margin:0;background-color:transparent;border:0;display:inline;line-height:inherit;word-wrap:normal;white-space:pre;color:inherit}.hljs{color:#dbd7ca;background:transparent}.hljs-comment,.hljs-quote{color:#758575;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-addition{color:#4d9375}.hljs-string,.hljs-attribute,.hljs-template-variable,.hljs-variable,.hljs-doctag{color:#c98a7d}.hljs-number,.hljs-literal,.hljs-regexp,.hljs-link{color:#4c9a91}.hljs-title,.hljs-section,.hljs-built_in,.hljs-type{color:#6394bf}.hljs-name,.hljs-selector-id,.hljs-selector-class{color:#80a665}.hljs-attr,.hljs-params{color:#bd976a}.hljs-meta,.hljs-meta-string{color:#cb7676}.hljs-symbol,.hljs-bullet{color:#4d9375}.hljs-deletion{color:#cb7676}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:600}.content blockquote{margin:0 0 16px;padding:0 1em;color:var(--color-text-secondary);border-left:.25em solid var(--color-border)}.content blockquote>:first-child{margin-top:0}.content blockquote>:last-child{margin-bottom:0}.content a{color:var(--color-link);text-decoration:none}.content a:hover{text-decoration:underline}.content table{border-spacing:0;border-collapse:collapse;margin-top:0;margin-bottom:16px;display:block;width:max-content;max-width:100%;overflow:auto}.content table th,.content table td{padding:6px 12px;border:1px solid var(--color-border);font-size:13px}.content table th{font-weight:600;background-color:var(--color-bg-secondary)}.content table tr{background-color:var(--color-bg);border-top:1px solid var(--color-border)}.content table tr:nth-child(2n){background-color:var(--color-bg-secondary)}.content hr{height:.25em;padding:0;margin:24px 0;background-color:var(--color-border);border:0}.content strong{font-weight:600}.content em{font-style:italic}.content img{max-width:100%;box-sizing:content-box}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:0 16px;align-items:center;justify-content:space-between;z-index:100;transition:background-color .2s,border-color .2s}.mobile-header h1{font-size:1rem;font-weight:600;margin:0}.mobile-header h1 a{text-decoration:none;color:var(--color-text)}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:4px;width:32px;height:32px;background:none;border:none;cursor:pointer;padding:4px}.menu-toggle span{display:block;width:20px;height:2px;background:var(--color-text);border-radius:1px;transition:transform .2s,opacity .2s}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:90;opacity:0;transition:opacity .2s}.sidebar-overlay.active{opacity:1}@media(max-width:1100px){.toc{position:fixed;top:0;right:0;width:280px;height:100vh;background:var(--color-bg);border-left:1px solid var(--color-border);padding:20px;z-index:95;transform:translate(100%);transition:transform .2s ease-out;max-height:100vh;overflow-y:auto}.toc.open{transform:translate(0)}.toc-header{margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.toc-title{font-size:14px}.toc-close{display:block}.toc-overlay{display:block;position:fixed;inset:0;background:#00000080;z-index:90;opacity:0;pointer-events:none;transition:opacity .2s}.toc-overlay.active{opacity:1;pointer-events:auto}.toc-toggle{display:flex;align-items:center;justify-content:center;position:fixed;bottom:24px;right:24px;width:48px;height:48px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:50%;cursor:pointer;z-index:80;box-shadow:0 2px 8px #00000026;transition:background-color .2s,transform .2s}.toc-toggle:hover{transform:scale(1.05)}.toc-toggle:active{transform:scale(.95)}.toc-toggle svg{color:var(--color-text)}.content{width:100%}}@media(max-width:768px){body:before{display:none}.mobile-header{display:flex}.sidebar-overlay{display:block;pointer-events:none}.sidebar-overlay.active{pointer-events:auto}.sidebar{position:fixed;top:0;left:0;width:280px;height:100vh;z-index:95;transform:translate(-100%);transition:transform .2s ease-out}.sidebar.open{transform:translate(0)}.main-content{margin-left:0;padding:72px 16px 24px;flex-direction:column}#app{flex-direction:column}.content{width:100%}.content h1{font-size:1.5em}.content h2{font-size:1.25em}.content pre{font-size:11px;padding:12px;border-radius:4px}.content .code-block .copy-btn{opacity:1;padding:2px 6px;font-size:10px}.content .code-block[data-lang]:before{opacity:1;right:50px;font-size:9px;line-height:14px}.content table{font-size:12px}.content table th,.content table td{padding:4px 8px}}
