.article-maximized{width:100%;max-width:none}.article-header,.article-content,.article-footer{max-width:Min(95ch,calc(100vw - 4rem));margin:0 auto;padding:0;width:100%}.article-content.prose{margin:0 auto!important}.article-content.prose{max-width:inherit!important}.article-content.prose>*{max-width:100%}.prose{max-width:none!important}.max-w-prose{max-width:inherit!important}.article-maximized header,.article-maximized section,.article-maximized footer{max-width:Min(95ch,calc(100vw - 4rem));margin:0 auto;padding:0}@media(min-width:1536px){.article-header,.article-content,.article-footer,.article-maximized header,.article-maximized section,.article-maximized footer{max-width:Min(100ch,calc(100vw - 6rem))}}.article-content pre{max-width:100%;overflow-x:auto}.article-content table{max-width:100%;overflow-x:auto;display:block;white-space:nowrap}@media(max-width:639px){.article-header,.article-content,.article-footer,.article-maximized header,.article-maximized section,.article-maximized footer{max-width:calc(100vw - 2rem);margin:0 auto;padding:0}}:root{--toc-panel-width:320px;--toc-panel-width-tablet:280px;--toc-button-size-desktop:36px;--toc-button-size-mobile:40px;--toc-border-radius:18px;--toc-transition:0.3s ease;--toc-backdrop-blur:16px;--toc-arrow-size:12px;--toc-bg-light:rgba(255, 255, 255, 0.92);--toc-bg-dark:rgba(31, 41, 55, 0.92);--toc-panel-bg-light:rgba(255, 255, 255, 0.95);--toc-panel-bg-dark:rgba(17, 24, 39, 0.95);--toc-border-light:rgba(0, 0, 0, 0.08);--toc-border-dark:rgba(255, 255, 255, 0.1);--toc-text-light:#374151;--toc-text-dark:#e5e7eb;--toc-overlay-bg:rgba(0, 0, 0, 0.5);--toc-overlay-bg-dark:rgba(0, 0, 0, 0.7)}.toc-toggle-btn{position:fixed;top:120px;left:calc(50% + Min(1280px,100vw)/2 - 1.5rem + 20px);z-index:1000;width:auto;min-width:68px;max-width:120px;height:var(--toc-button-size-desktop);padding:0 14px;border-radius:var(--toc-border-radius);border:none;box-sizing:border-box;background:var(--toc-bg-light);backdrop-filter:blur(12px);box-shadow:0 6px 16px rgba(0,0,0,.15);border:1px solid var(--toc-border-light);display:flex;align-items:center;justify-content:center;gap:6px;font-size:.875rem;font-weight:500;color:var(--toc-text-light);white-space:nowrap!important;flex-shrink:0!important;flex-wrap:nowrap!important;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:all var(--toc-transition);opacity:1}.toc-toggle-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.15);background:rgba(255,255,255,.95)}.toc-toggle-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(0,0,0,.1)}.dark .toc-toggle-btn{background:var(--toc-bg-dark);border-color:var(--toc-border-dark);color:var(--toc-text-dark);box-shadow:0 4px 12px rgba(0,0,0,.3)}.dark .toc-toggle-btn:hover{background:rgba(31,41,55,.95);box-shadow:0 6px 20px rgba(0,0,0,.4)}.toc-toggle-btn .toc-icon{font-size:1rem;line-height:1;display:inline-block!important;flex-shrink:0!important;white-space:nowrap!important}.toc-toggle-btn .toc-text{font-size:.875rem;font-weight:500;line-height:1;display:inline-block!important;flex-shrink:0!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}.toc-toggle-btn .toc-text.short{display:none!important}.toc-toggle-btn.scrolling{opacity:.8}.toc-toggle-btn.first-visit{animation:gentle-pulse 2s ease-in-out 3}@keyframes gentle-pulse{0%,100%{box-shadow:0 4px 12px rgba(0,0,0,.12)}50%{box-shadow:0 4px 20px rgba(59,130,246,.3)}}.dark .toc-toggle-btn.first-visit{animation:gentle-pulse-dark 2s ease-in-out 3}@keyframes gentle-pulse-dark{0%,100%{box-shadow:0 4px 12px rgba(0,0,0,.3)}50%{box-shadow:0 4px 20px rgba(59,130,246,.4)}}.toc-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--toc-overlay-bg);z-index:1001;opacity:0;visibility:hidden;transition:all var(--toc-transition)}.toc-overlay.show{opacity:1;visibility:visible}.dark .toc-overlay{background:var(--toc-overlay-bg-dark)}.toc-panel{position:fixed;top:0;right:calc(-1 * var(--toc-panel-width));width:var(--toc-panel-width);height:100vh;z-index:1002;background:var(--toc-panel-bg-light);backdrop-filter:blur(var(--toc-backdrop-blur));border-left:1px solid var(--toc-border-light);transition:right .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.toc-panel.open{right:0}.dark .toc-panel{background:var(--toc-panel-bg-dark);border-left-color:var(--toc-border-dark)}.toc-panel-header{padding:1.5rem;border-bottom:1px solid var(--toc-border-light);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.toc-header-controls{display:flex;gap:.5rem;align-items:center}.toc-panel-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.toc-close-btn,.toc-expand-all-btn,.toc-collapse-all-btn{width:32px;height:32px;border:none;background:0 0;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all .2s ease;font-size:.875rem}.toc-close-btn:hover,.toc-expand-all-btn:hover,.toc-collapse-all-btn:hover{background:rgba(0,0,0,5%);color:#374151}.toc-expand-all-btn,.toc-collapse-all-btn{font-size:1rem;font-weight:700}.dark .toc-panel-header{border-bottom-color:var(--toc-border-dark)}.dark .toc-panel-title{color:#f9fafb}.dark .toc-close-btn,.dark .toc-expand-all-btn,.dark .toc-collapse-all-btn{color:#9ca3af}.dark .toc-close-btn:hover,.dark .toc-expand-all-btn:hover,.dark .toc-collapse-all-btn:hover{background:rgba(255,255,255,5%);color:#e5e7eb}.toc-panel-content{flex:1;overflow-y:auto;padding:1rem 1.5rem 1.5rem}.toc-content ul{list-style:none;margin:0;padding:0}.toc-content li{margin:0}.toc-content a{display:block;padding:.5rem 0;color:#4b5563;text-decoration:none;font-size:.875rem;line-height:1.4;border-radius:4px;transition:all .2s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toc-content a:hover{color:#1f2937;background:rgba(0,0,0,5%);padding-left:.75rem}.toc-content ul ul{padding-left:1rem}.toc-content ul ul a{font-size:.8125rem;color:#6b7280}.toc-content ul ul ul{padding-left:.75rem}.toc-content ul ul ul a{font-size:.75rem;color:#9ca3af}.dark .toc-content a{color:#d1d5db}.dark .toc-content a:hover{color:#f9fafb;background:rgba(255,255,255,5%)}.dark .toc-content ul ul a{color:#9ca3af}.dark .toc-content ul ul ul a{color:#6b7280}.toc-content .toc-collapsible{margin:0;border:none;background:0 0}.toc-content .toc-summary{list-style:none;cursor:pointer;padding:0;margin:0;position:relative;display:flex;align-items:center;user-select:none}.toc-content .toc-summary::-webkit-details-marker{display:none}.toc-content .toc-summary::marker{content:''}.toc-content .toc-summary::before{content:'';width:var(--toc-arrow-size);height:var(--toc-arrow-size);margin-right:6px;flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6L4.5 9.5' stroke='%236b7280' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:contain;transition:transform .2s ease;display:inline-block}.toc-content .toc-collapsible[open]>.toc-summary::before{transform:rotate(90deg)}.toc-content .toc-summary-link{display:block;padding:.5rem 0;color:#4b5563;text-decoration:none;font-size:.875rem;line-height:1.4;font-weight:500;border-radius:4px;transition:all .2s ease;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toc-content .toc-summary-link:hover{color:#1f2937;background:rgba(0,0,0,5%);padding-left:.75rem}.toc-content .toc-leaf-item{margin:0}.toc-content .toc-leaf-link{display:block;padding:.5rem 0;color:#4b5563;text-decoration:none;font-size:.875rem;line-height:1.4;border-radius:4px;transition:all .2s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toc-content .toc-leaf-link:hover{color:#1f2937;background:rgba(0,0,0,5%);padding-left:.75rem}.toc-content .toc-parent-item{margin:0}.toc-content .toc-collapsible{transition:all .2s ease}.toc-content .toc-collapsible:not([open]){height:auto}.dark .toc-content .toc-summary::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6L4.5 9.5' stroke='%239ca3af' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.dark .toc-content .toc-summary-link{color:#d1d5db}.dark .toc-content .toc-summary-link:hover{color:#f9fafb;background:rgba(255,255,255,5%)}.dark .toc-content .toc-leaf-link{color:#d1d5db}.dark .toc-content .toc-leaf-link:hover{color:#f9fafb;background:rgba(255,255,255,5%)}.toc-content .toc-collapsible ul{padding-left:1rem;margin-top:.25rem}.toc-content .toc-collapsible ul .toc-summary-link,.toc-content .toc-collapsible ul .toc-leaf-link{font-size:.8125rem;color:#6b7280}.toc-content .toc-collapsible ul ul{padding-left:.75rem}.toc-content .toc-collapsible ul ul .toc-summary-link,.toc-content .toc-collapsible ul ul .toc-leaf-link{font-size:.75rem;color:#9ca3af}.dark .toc-content .toc-collapsible ul .toc-summary-link,.dark .toc-content .toc-collapsible ul .toc-leaf-link{color:#9ca3af}.dark .toc-content .toc-collapsible ul ul .toc-summary-link,.dark .toc-content .toc-collapsible ul ul .toc-leaf-link{color:#6b7280}.toc-panel-content::-webkit-scrollbar{width:4px}.toc-panel-content::-webkit-scrollbar-track{background:0 0}.toc-panel-content::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:2px}.toc-panel-content::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.dark .toc-panel-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2)}.dark .toc-panel-content::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.toc-panel-content{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2)transparent}.dark .toc-panel-content{scrollbar-color:rgba(255,255,255,.2)transparent}@media(min-width:640px){.toc-toggle-btn,.toc-toggle-btn *{white-space:nowrap!important;flex-wrap:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important}.toc-toggle-btn .toc-text,.toc-toggle-btn .toc-icon{flex-shrink:0!important}}:root{--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--toc-panel-width-mobile:100vw;--toc-panel-width-tablet:280px;--toc-panel-width-desktop:320px}@media(min-width:1024px){.toc-toggle-btn{min-width:80px!important;height:36px;top:120px;left:calc(50vw + Min(32rem,50vw - 8rem) + .25rem);right:auto}.toc-toggle-btn .toc-text{display:inline}.toc-toggle-btn .toc-text.short{display:none}.toc-panel{width:var(--toc-panel-width-desktop);right:calc(-1 * var(--toc-panel-width-desktop))}.toc-overlay{display:none}}@media(min-width:640px) and (max-width:767.98px){.toc-toggle-btn{min-width:80px!important;height:32px;top:90px;left:Min( calc(50% + Min(1280px,100vw - 13.5rem)/2 + 1rem),calc(100vw - 80px) );right:auto;white-space:nowrap;overflow:hidden}.toc-toggle-btn .toc-text{display:inline;font-size:.75rem}.toc-toggle-btn .toc-text.short{display:none}.toc-panel{width:var(--toc-panel-width-tablet);right:calc(-1 * var(--toc-panel-width-tablet))}.toc-overlay{display:none}}@media(min-width:767.99px) and (max-width:767.99px){.toc-toggle-btn{min-width:80px!important;height:34px;top:100px;left:Min( calc(50% + Min(1280px,100vw - 12rem)/2 + 1rem),calc(100vw - 80px) );right:auto;white-space:nowrap;overflow:hidden}.toc-toggle-btn .toc-text{display:inline;font-size:.8125rem}.toc-toggle-btn .toc-text.short{display:none}}@media(min-width:768px) and (max-width:1023.98px){.toc-toggle-btn{min-width:80px!important;height:34px;top:100px;left:Min( calc(50% + Min(1280px,100vw - 12rem)/2 + .25rem),calc(100vw - 80px) );right:auto;white-space:nowrap;overflow:hidden}.toc-toggle-btn .toc-text{display:inline;font-size:.8125rem}.toc-toggle-btn .toc-text.short{display:none}.toc-panel{width:var(--toc-panel-width-tablet);right:calc(-1 * var(--toc-panel-width-tablet))}.toc-overlay{display:none}}@media(max-width:639px){.toc-toggle-btn{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important;border-radius:50%!important;font-size:1.1rem!important;right:.75rem;left:auto!important;top:80px;white-space:normal!important;overflow:visible!important;aspect-ratio:1/1!important;box-sizing:border-box!important;opacity:0;visibility:hidden;transition:all var(--toc-transition)}.toc-toggle-btn.mobile-visible{opacity:1;visibility:visible;animation:mobile-appear .4s ease-out}@keyframes mobile-appear{0%{opacity:0;transform:translateY(20px)scale(.8)}60%{transform:translateY(-5px)scale(1.05)}100%{opacity:1;transform:translateY(0)scale(1)}}.toc-toggle-btn .toc-text,.toc-toggle-btn .toc-text.short{display:none!important}.toc-panel{width:var(--toc-panel-width-mobile);right:calc(-1 * var(--toc-panel-width-mobile))}.toc-overlay{display:block}.toc-panel-header{padding:1rem}.toc-panel-content{padding:.75rem 1rem 1rem}.toc-header-controls{gap:.25rem}.toc-close-btn,.toc-expand-all-btn,.toc-collapse-all-btn{width:28px;height:28px;font-size:.75rem}.toc-expand-all-btn,.toc-collapse-all-btn{font-size:.875rem}}/*!* 在所有断点下英文版本的额外优化 *!*/html ::-webkit-scrollbar{width:6px!important;height:6px!important}html ::-webkit-scrollbar-track{background:0 0!important}html ::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2)!important;border-radius:3px!important;opacity:0!important;transition:opacity .3s ease,background .2s ease!important}html ::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)!important}html.scrollbar-visible ::-webkit-scrollbar-thumb,body.scrollbar-visible ::-webkit-scrollbar-thumb,.scrollbar-visible ::-webkit-scrollbar-thumb{opacity:1!important}.toc-panel-content::-webkit-scrollbar-thumb{opacity:1!important}::-webkit-scrollbar-corner{background:0 0}html{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2)transparent}html.dark ::-webkit-scrollbar-thumb,.dark html ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2)!important;opacity:0!important;transition:opacity .3s ease,background .2s ease!important}html.dark ::-webkit-scrollbar-thumb:hover,.dark html ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)!important}html.dark.scrollbar-visible ::-webkit-scrollbar-thumb,.dark.scrollbar-visible ::-webkit-scrollbar-thumb,.dark html.scrollbar-visible ::-webkit-scrollbar-thumb{opacity:1!important}.dark .toc-panel-content::-webkit-scrollbar-thumb{opacity:1!important}.dark html{scrollbar-color:rgba(255,255,255,.2)transparent}@media(min-width:1024px){::-webkit-scrollbar{width:6px;height:6px}}@media(min-width:768px) and (max-width:1023px){::-webkit-scrollbar{width:5px;height:5px}}@media(max-width:639.98px){::-webkit-scrollbar{width:auto;height:auto}::-webkit-scrollbar-thumb{background:initial}::-webkit-scrollbar-track{background:initial}html{scrollbar-width:auto;scrollbar-color:initial}}@media(min-width:780px){#main-content article section div div pre::-webkit-scrollbar,#main-content>article>section>div>div>pre::-webkit-scrollbar,article section div div pre.chroma::-webkit-scrollbar,section div div pre.chroma::-webkit-scrollbar,main article section div div pre::-webkit-scrollbar,html body .article-content pre::-webkit-scrollbar,html body .prose pre::-webkit-scrollbar,html body div.highlight pre::-webkit-scrollbar,html body .chroma pre::-webkit-scrollbar,html body pre[class*=language-]::-webkit-scrollbar,html body code[class*=language-]::-webkit-scrollbar,html body .highlight pre::-webkit-scrollbar,html body .chroma .lntable::-webkit-scrollbar,html body main pre::-webkit-scrollbar,html body article pre::-webkit-scrollbar,html body section pre::-webkit-scrollbar,html body div pre::-webkit-scrollbar,body pre::-webkit-scrollbar,body code::-webkit-scrollbar,pre::-webkit-scrollbar,code::-webkit-scrollbar,[class*=highlight]::-webkit-scrollbar,[class*=chroma]::-webkit-scrollbar,[class*=language]::-webkit-scrollbar{width:4px!important;height:4px!important}#main-content article section div div pre::-webkit-scrollbar-thumb,#main-content>article>section>div>div>pre::-webkit-scrollbar-thumb,article section div div pre.chroma::-webkit-scrollbar-thumb,section div div pre.chroma::-webkit-scrollbar-thumb,main article section div div pre::-webkit-scrollbar-thumb,html body .article-content pre::-webkit-scrollbar-thumb,html body .prose pre::-webkit-scrollbar-thumb,html body div.highlight pre::-webkit-scrollbar-thumb,html body .chroma pre::-webkit-scrollbar-thumb,html body pre[class*=language-]::-webkit-scrollbar-thumb,html body code[class*=language-]::-webkit-scrollbar-thumb,html body .highlight pre::-webkit-scrollbar-thumb,html body .chroma .lntable::-webkit-scrollbar-thumb,html body main pre::-webkit-scrollbar-thumb,html body article pre::-webkit-scrollbar-thumb,html body section pre::-webkit-scrollbar-thumb,html body div pre::-webkit-scrollbar-thumb,body pre::-webkit-scrollbar-thumb,body code::-webkit-scrollbar-thumb,pre::-webkit-scrollbar-thumb,code::-webkit-scrollbar-thumb,[class*=highlight]::-webkit-scrollbar-thumb,[class*=chroma]::-webkit-scrollbar-thumb,[class*=language]::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)!important;border-radius:2px!important;opacity:1!important}#main-content article section div div pre::-webkit-scrollbar-thumb:hover,#main-content>article>section>div>div>pre::-webkit-scrollbar-thumb:hover,article section div div pre.chroma::-webkit-scrollbar-thumb:hover,section div div pre.chroma::-webkit-scrollbar-thumb:hover,main article section div div pre::-webkit-scrollbar-thumb:hover,html body .article-content pre::-webkit-scrollbar-thumb:hover,html body .prose pre::-webkit-scrollbar-thumb:hover,html body div.highlight pre::-webkit-scrollbar-thumb:hover,html body .chroma pre::-webkit-scrollbar-thumb:hover,html body pre[class*=language-]::-webkit-scrollbar-thumb:hover,html body code[class*=language-]::-webkit-scrollbar-thumb:hover,html body .highlight pre::-webkit-scrollbar-thumb:hover,html body .chroma .lntable::-webkit-scrollbar-thumb:hover,html body main pre::-webkit-scrollbar-thumb:hover,html body article pre::-webkit-scrollbar-thumb:hover,html body section pre::-webkit-scrollbar-thumb:hover,html body div pre::-webkit-scrollbar-thumb:hover,body pre::-webkit-scrollbar-thumb:hover,body code::-webkit-scrollbar-thumb:hover,pre::-webkit-scrollbar-thumb:hover,code::-webkit-scrollbar-thumb:hover,[class*=highlight]::-webkit-scrollbar-thumb:hover,[class*=chroma]::-webkit-scrollbar-thumb:hover,[class*=language]::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)!important}html.dark body .article-content pre::-webkit-scrollbar-thumb,html.dark body .prose pre::-webkit-scrollbar-thumb,html.dark body div.highlight pre::-webkit-scrollbar-thumb,html.dark body .chroma pre::-webkit-scrollbar-thumb,html.dark body pre[class*=language-]::-webkit-scrollbar-thumb,html.dark body code[class*=language-]::-webkit-scrollbar-thumb,html.dark body .highlight pre::-webkit-scrollbar-thumb,html.dark body .chroma .lntable::-webkit-scrollbar-thumb,html.dark body main pre::-webkit-scrollbar-thumb,html.dark body article pre::-webkit-scrollbar-thumb,html.dark body section pre::-webkit-scrollbar-thumb,html.dark body div pre::-webkit-scrollbar-thumb,.dark body pre::-webkit-scrollbar-thumb,.dark body code::-webkit-scrollbar-thumb,.dark pre::-webkit-scrollbar-thumb,.dark code::-webkit-scrollbar-thumb,.dark [class*=highlight]::-webkit-scrollbar-thumb,.dark [class*=chroma]::-webkit-scrollbar-thumb,.dark [class*=language]::-webkit-scrollbar-thumb,.dark #main-content article section div div pre::-webkit-scrollbar-thumb,.dark #main-content>article>section>div>div>pre::-webkit-scrollbar-thumb,.dark article section div div pre.chroma::-webkit-scrollbar-thumb,.dark section div div pre.chroma::-webkit-scrollbar-thumb,.dark main article section div div pre::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3)!important;opacity:1!important}html.dark body .article-content pre::-webkit-scrollbar-thumb:hover,html.dark body .prose pre::-webkit-scrollbar-thumb:hover,html.dark body div.highlight pre::-webkit-scrollbar-thumb:hover,html.dark body .chroma pre::-webkit-scrollbar-thumb:hover,html.dark body pre[class*=language-]::-webkit-scrollbar-thumb:hover,html.dark body code[class*=language-]::-webkit-scrollbar-thumb:hover,html.dark body .highlight pre::-webkit-scrollbar-thumb:hover,html.dark body .chroma .lntable::-webkit-scrollbar-thumb:hover,html.dark body main pre::-webkit-scrollbar-thumb:hover,html.dark body article pre::-webkit-scrollbar-thumb:hover,html.dark body section pre::-webkit-scrollbar-thumb:hover,html.dark body div pre::-webkit-scrollbar-thumb:hover,.dark body pre::-webkit-scrollbar-thumb:hover,.dark body code::-webkit-scrollbar-thumb:hover,.dark pre::-webkit-scrollbar-thumb:hover,.dark code::-webkit-scrollbar-thumb:hover,.dark [class*=highlight]::-webkit-scrollbar-thumb:hover,.dark [class*=chroma]::-webkit-scrollbar-thumb:hover,.dark [class*=language]::-webkit-scrollbar-thumb:hover,.dark #main-content article section div div pre::-webkit-scrollbar-thumb:hover,.dark #main-content>article>section>div>div>pre::-webkit-scrollbar-thumb:hover,.dark article section div div pre.chroma::-webkit-scrollbar-thumb:hover,.dark section div div pre.chroma::-webkit-scrollbar-thumb:hover,.dark main article section div div pre::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.4)!important}}@media(max-width:639.98px){pre::-webkit-scrollbar,code::-webkit-scrollbar{width:4px;height:4px}pre::-webkit-scrollbar-thumb,code::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3);border-radius:2px}pre::-webkit-scrollbar-thumb:hover,code::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)}.dark pre::-webkit-scrollbar-thumb,.dark code::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3)}.dark pre::-webkit-scrollbar-thumb:hover,.dark code::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.4)}}table::-webkit-scrollbar{height:4px}table::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3);border-radius:2px}table::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)}.dark table::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3)}.dark table::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.4)}.toc-panel-content::-webkit-scrollbar{width:4px}.article-content::-webkit-scrollbar,div[style*=overflow]::-webkit-scrollbar{width:6px;height:6px}.article-content::-webkit-scrollbar-thumb,div[style*=overflow]::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:3px}.article-content::-webkit-scrollbar-thumb:hover,div[style*=overflow]::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.dark .article-content::-webkit-scrollbar-thumb,.dark div[style*=overflow]::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2)}.dark .article-content::-webkit-scrollbar-thumb:hover,.dark div[style*=overflow]::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}@media print{.toc-toggle-btn,.toc-overlay,.toc-panel{display:none!important}.article-content{max-width:none!important}.article-header,.article-content,.article-footer{max-width:none!important;margin:0!important;padding:0!important}pre,code{overflow:visible!important;white-space:pre-wrap!important;word-break:break-word!important}table{width:100%!important;table-layout:auto!important}a[href]:after{content:" (" attr(href)")";font-size:.8em;color:#666}h1,h2,h3,h4,h5,h6{page-break-after:avoid}pre,blockquote{page-break-inside:avoid}}@media(prefers-reduced-motion:reduce){.toc-toggle-btn,.toc-panel,.toc-overlay,.toc-content a,.toc-content .toc-summary::before,.toc-content .toc-collapsible{transition:none!important;animation:none!important}.toc-toggle-btn:hover{transform:none!important}.toc-toggle-btn.first-visit{animation:none!important}.toc-toggle-btn.mobile-visible{animation:none!important}.toc-content .toc-collapsible[open]>.toc-summary::before{transform:rotate(90deg)!important;transition:none!important}}@media(prefers-contrast:high){.toc-toggle-btn{border:2px solid!important;box-shadow:none!important}.toc-panel{border-left:2px solid!important}.toc-panel-header{border-bottom:2px solid!important}.toc-content a{font-weight:600!important;border:1px solid transparent}.toc-content a:hover,.toc-content a:focus{border-color:initial!important;background:0 0!important}.toc-close-btn,.toc-expand-all-btn,.toc-collapse-all-btn{border:1px solid!important}.toc-content .toc-summary::before{filter:contrast(2)!important}}@media(forced-colors:active){.toc-toggle-btn{background:ButtonFace!important;color:ButtonText!important;border:1px solid ButtonBorder!important}.toc-panel{background:Canvas!important;color:CanvasText!important;border-left:1px solid CanvasText!important}.toc-panel-header{border-bottom:1px solid CanvasText!important}.toc-content a{color:LinkText!important}.toc-content a:hover,.toc-content a:focus{background:Highlight!important;color:HighlightText!important}.toc-overlay{background:rgba(0,0,0,.8)!important}}.toc-toggle-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;box-shadow:0 0 0 4px rgba(59,130,246,.2)}.toc-close-btn:focus-visible,.toc-expand-all-btn:focus-visible,.toc-collapse-all-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;box-shadow:0 0 0 2px rgba(59,130,246,.2)}.toc-content a:focus-visible,.toc-content .toc-summary-link:focus-visible,.toc-content .toc-leaf-link:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px;box-shadow:0 0 0 2px rgba(59,130,246,.2)}.toc-content .toc-summary:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px;box-shadow:0 0 0 2px rgba(59,130,246,.2)}.dark .toc-toggle-btn:focus-visible{outline-color:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.2)}.dark .toc-close-btn:focus-visible,.dark .toc-expand-all-btn:focus-visible,.dark .toc-collapse-all-btn:focus-visible{outline-color:#60a5fa;box-shadow:0 0 0 2px rgba(96,165,250,.2)}.dark .toc-content a:focus-visible,.dark .toc-content .toc-summary-link:focus-visible,.dark .toc-content .toc-leaf-link:focus-visible,.dark .toc-content .toc-summary:focus-visible{outline-color:#60a5fa;box-shadow:0 0 0 2px rgba(96,165,250,.2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.toc-toggle-btn[aria-expanded=true] .toc-icon{transform:rotate(180deg)}.toc-collapsible[open] .toc-summary[aria-expanded=true]::before{transform:rotate(90deg)}@media(pointer:coarse){.toc-toggle-btn{min-height:44px;min-width:44px}.toc-close-btn,.toc-expand-all-btn,.toc-collapse-all-btn{min-width:44px;min-height:44px}.toc-content a,.toc-content .toc-summary-link,.toc-content .toc-leaf-link{min-height:44px;display:flex;align-items:center}.toc-content .toc-summary{min-height:44px}}@media(min-resolution:1dppx){.toc-panel{min-width:280px}.toc-content a,.toc-content .toc-summary-link,.toc-content .toc-leaf-link{white-space:normal;overflow-wrap:break-word}.toc-toggle-btn{white-space:normal;padding:.5rem 1rem}}.toc-content a{color:#374151}.toc-content ul ul a{color:#4b5563}.toc-content ul ul ul a{color:#6b7280}.dark .toc-content a{color:#e5e7eb}.dark .toc-content ul ul a{color:#d1d5db}.dark .toc-content ul ul ul a{color:#9ca3af}.toc-content a:hover{color:#111827;background:rgba(0,0,0,8%)}.dark .toc-content a:hover{color:#fff;background:rgba(255,255,255,8%)}.no-js .toc-toggle-btn{display:none}@supports not (width:var(--toc-panel-width)){.toc-panel{width:320px}.toc-toggle-btn{height:36px}}@supports not (backdrop-filter:blur(16px)){.toc-panel{background:rgba(255,255,255,.98)}.dark .toc-panel{background:rgba(17,24,39,.98)}.toc-toggle-btn{background:rgba(255,255,255,.95)}.dark .toc-toggle-btn{background:rgba(31,41,55,.95)}}.friendlink-card{display:flex;align-items:center;width:calc(33.33% - 7px);height:110px;padding:.5rem .65rem;background:rgb(var(--color-neutral));border:1px solid rgb(var(--color-neutral-200));border-radius:.375rem;text-decoration:none;color:rgb(var(--color-neutral-800));transition:all .15s ease-in-out;overflow:hidden}.dark .friendlink-card{background:rgb(var(--color-neutral-800));border-color:rgb(var(--color-neutral-700));color:rgb(var(--color-neutral-100))}.friendlink-card:hover,.not-prose .friendlink-card:hover,a.friendlink-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-neutral-400),.15);border-color:rgb(var(--color-neutral-300));text-decoration:none!important;color:rgb(var(--color-neutral-800))!important}.dark .friendlink-card:hover,.dark .not-prose .friendlink-card:hover,.dark a.friendlink-card:hover{border-color:rgb(var(--color-neutral-600));box-shadow:0 4px 12px rgba(var(--color-primary-500),.2),0 0 0 1px rgba(var(--color-primary-500),.1);color:rgb(var(--color-neutral-100))!important}.friendlink-avatar{width:65px;height:65px;border-radius:50%;object-fit:cover;margin-right:.8rem;flex-shrink:0;border:1px solid rgb(var(--color-neutral-200))}.dark .friendlink-avatar{border-color:rgb(var(--color-neutral-600));background:rgb(var(--color-neutral-700))}.friendlink-content{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:center}.friendlink-title{font-size:1.1rem;font-weight:600;line-height:1.3;color:rgb(var(--color-neutral-800));margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dark .friendlink-title{color:rgb(var(--color-neutral-100))}.friendlink-desc{font-size:.875rem;line-height:1.4;color:rgb(var(--color-neutral-600));margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.dark .friendlink-desc{color:rgb(var(--color-neutral-400))}@media(max-width:900px) and (min-width:513px){.friendlink-card{width:calc(50% - 5px)}}@media(max-width:512px){.friendlink-card{width:100%;height:100px}}.alert{margin:1.5rem 0;border-radius:.5rem;border-left:4px solid;overflow:hidden;background:rgb(var(--color-neutral-50));border-color:rgb(var(--color-neutral-300));font-family:inherit;font-size:inherit;line-height:1.6;transition:all .2s ease-in-out}.dark .alert{background:rgb(var(--color-neutral-800));border-color:rgb(var(--color-neutral-600))}.alert-header{display:flex;align-items:center;padding:.875rem 1rem;font-weight:600}.alert-icon{margin-right:.5rem;font-size:1.1em;flex-shrink:0}.alert-title{flex-grow:1;margin:0;font-size:1em}.alert-content{padding:0 1rem .875rem}.alert-content>p:first-child{margin-top:0}.alert-content>p:last-child{margin-bottom:0}.alert-content ul,.alert-content ol{margin:.5rem 0;padding-left:1.5rem}.alert-content li{margin:.25rem 0}.alert-content code{padding:.125rem .25rem;border-radius:.25rem;background:rgba(var(--color-neutral-500),.1);font-size:.875em}.dark .alert-content code{background:rgba(var(--color-neutral-400),.15)}.alert-content blockquote{margin:.5rem 0;padding-left:1rem;border-left:3px solid rgba(var(--color-neutral-400),.3);color:rgb(var(--color-neutral-600))}.dark .alert-content blockquote{border-color:rgba(var(--color-neutral-500),.3);color:rgb(var(--color-neutral-400))}.alert-note{border-color:#3b82f6;background:rgba(59,130,246,5%)}.alert-note .alert-header{color:#1d4ed8}.dark .alert-note{border-color:#3b82f6;background:rgba(59,130,246,.1)}.dark .alert-note .alert-header{color:#93c5fd}.alert-tip{border-color:#22c55e;background:rgba(34,197,94,5%)}.alert-tip .alert-header{color:#15803d}.dark .alert-tip{border-color:#22c55e;background:rgba(34,197,94,.1)}.dark .alert-tip .alert-header{color:#86efac}.alert-important{border-color:#a855f7;background:rgba(168,85,247,5%)}.alert-important .alert-header{color:#6d28d9}.dark .alert-important{border-color:#a855f7;background:rgba(168,85,247,.1)}.dark .alert-important .alert-header{color:#c4b5fd}.alert-warning{border-color:coral;background:rgba(255,150,80,5%)}.alert-warning .alert-header{color:#d0572d}.dark .alert-warning{border-color:coral;background:rgba(255,150,80,.1)}.dark .alert-warning .alert-header{color:#fdba74}.alert-caution{border-color:red;background:rgba(255,0,0,5%)}.alert-caution .alert-header{color:#a50000}.dark .alert-caution{border-color:red;background:rgba(255,0,0,.1)}.dark .alert-caution .alert-header{color:#fca5a5}@media(max-width:768px){.alert{margin:1rem 0;border-radius:.375rem}.alert-header{padding:.75rem .875rem}.alert-content{padding:0 .875rem .75rem}}@media(max-width:640px){.alert{margin:.875rem 0;border-radius:.25rem}.alert-header{padding:.625rem .75rem;font-size:.95rem}.alert-content{padding:0 .75rem .625rem;font-size:.9rem}.alert-icon{font-size:1rem}}@media(prefers-contrast:high){.alert{border-width:2px}.alert-header{font-weight:700}}@media(prefers-reduced-motion:reduce){.alert{transition:none}}.chroma pre,.highlight pre,pre[tabindex="0"]{max-height:400px;overflow-y:auto;overflow-x:auto}.chroma pre::-webkit-scrollbar,.highlight pre::-webkit-scrollbar,pre[tabindex="0"]::-webkit-scrollbar{width:8px;height:8px}.chroma pre::-webkit-scrollbar-track,.highlight pre::-webkit-scrollbar-track,pre[tabindex="0"]::-webkit-scrollbar-track{@apply bg-neutral-100 dark:bg-neutral-800 rounded}.chroma pre::-webkit-scrollbar-thumb,.highlight pre::-webkit-scrollbar-thumb,pre[tabindex="0"]::-webkit-scrollbar-thumb{@apply bg-neutral-400 dark:bg-neutral-600 rounded}.chroma pre::-webkit-scrollbar-thumb:hover,.highlight pre::-webkit-scrollbar-thumb:hover,pre[tabindex="0"]::-webkit-scrollbar-thumb:hover{@apply bg-neutral-500 dark:bg-neutral-500}.chroma pre,.highlight pre,pre[tabindex="0"]{scrollbar-width:thin;scrollbar-color:rgba(var(--color-neutral-400),1)rgba(var(--color-neutral-100),1)}.dark .chroma pre,.dark .highlight pre,.dark pre[tabindex="0"]{scrollbar-color:rgba(var(--color-neutral-600),1)rgba(var(--color-neutral-800),1)}@media(max-width:640px){.chroma pre,.highlight pre,pre[tabindex="0"]{max-height:300px}.chroma pre::-webkit-scrollbar,.highlight pre::-webkit-scrollbar,pre[tabindex="0"]::-webkit-scrollbar{width:4px;height:4px}}@media(max-width:768px) and (min-width:641px){.chroma pre,.highlight pre,pre[tabindex="0"]{max-height:350px}}@media(min-width:1280px){.chroma pre,.highlight pre,pre[tabindex="0"]{max-height:500px}}