:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--accent:#ec4899;--text-color:#1f2937;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--bg-color:#fff;--bg-page:#f9fafb;--bg-hover:#f3f4f6;--border-color:#e5e7eb;--border-light:#f3f4f6;--header-bg:#ffffffd9;--shadow-sm:0 1px 2px #0000000a;--shadow:0 4px 12px #0000000f;--shadow-lg:0 12px 32px #0000001a;--shadow-primary:0 8px 24px #6366f140;--radius-sm:6px;--radius:10px;--radius-lg:16px;--header-height:64px;--container-width:1140px;--search-bg:#ffffffe6;--search-text:#1f2937;--search-placeholder:#9ca3af;--search-border:#d1d5db;--engine-text:#6b7280;--engine-active-bg:#6366f11f;--engine-active-text:#4f46e5}:root,[data-theme=dark]{--search-focus-border:#6366f1}[data-theme=dark]{--text-color:#e5e7eb;--text-secondary:#9ca3af;--text-tertiary:#6b7280;--bg-color:#1e293b;--bg-page:#0f172a;--bg-hover:#334155;--border-color:#334155;--border-light:#1e293b;--header-bg:#0f172ad9;--shadow-sm:0 1px 2px #0000004d;--shadow:0 4px 12px #0006;--shadow-lg:0 12px 32px #00000080;--shadow-primary:0 8px 24px #6366f159;--search-bg:#1e293bcc;--search-text:#e5e7eb;--search-placeholder:#64748b;--search-border:#334155;--engine-text:#94a3b8;--engine-active-bg:#6366f140;--engine-active-text:#a5b4fc}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}@media (hover:none){[role=button]:active,a:active,button:active{opacity:.72}}@media (width<=860px){input,select,textarea{font-size:16px!important}}@supports (padding:max(0px)){.community,.site{padding-bottom:env(safe-area-inset-bottom)}}body,html{margin:0;padding:0}body{color:var(--text-color);background-color:var(--bg-page);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.6}a{color:var(--primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-dark)}img{max-width:100%;display:block}.container{max-width:var(--container-width);margin:0 auto;padding:0 20px}@media (width<=640px){.container{padding:0 16px}}.card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px;transition:box-shadow .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1),border-color .35s cubic-bezier(.22,1,.36,1)}.tag{color:var(--primary);white-space:nowrap;background:#6366f11a;border-radius:4px;padding:2px 10px;font-weight:500}.tag-top{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff}.article-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.page-title{color:var(--text-color);margin:0 0 8px;font-size:28px;font-weight:700}.page-subtitle{color:var(--text-secondary);margin:0 0 32px;font-size:15px}.empty-state{text-align:center;color:var(--text-tertiary);padding:80px 20px}.empty-state .empty-icon{opacity:.4;margin:0 auto 12px;display:block}.gradient-text{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@media (width<=640px){.page-title{font-size:23px}.page-subtitle{margin-bottom:22px;font-size:14px}.empty-state{padding:56px 16px}}.scroll-x{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;position:relative;overflow-x:auto}@media (hover:none){.scroll-x:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#0000000f);width:24px;position:absolute;top:0;bottom:0;right:0}}:root{--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}.reveal{opacity:0;transform:translateY(var(--reveal-y,24px));transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);will-change:opacity,transform}.reveal.reveal-visible{opacity:1;animation:.1s .8s forwards reveal-cleanup;transform:translateY(0)}@keyframes reveal-cleanup{to{will-change:auto}}@keyframes fade-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-up{opacity:0;animation:fade-up .8s var(--ease-out) forwards}.animate-fade-in{opacity:0;animation:fade-in .8s var(--ease-out) forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}@keyframes blob-float-1{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-24px)scale(1.08)}66%{transform:translate(-20px,20px)scale(.96)}}@keyframes blob-float-2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-36px,20px)scale(1.1)}}.hero-blob{filter:blur(70px);opacity:.5;pointer-events:none;will-change:transform;border-radius:50%;position:absolute}.hero-blob-1{width:420px;height:420px;animation:blob-float-1 14s var(--ease-in-out) infinite;background:radial-gradient(circle,#6366f159,#0000 70%);top:-80px;left:-60px}.hero-blob-2{width:380px;height:380px;animation:blob-float-2 18s var(--ease-in-out) infinite;background:radial-gradient(circle,#ec489947,#0000 70%);bottom:-80px;right:-40px}.zoom-wrap{border-radius:8px;overflow:hidden}.zoom-wrap>img{transition:transform .6s var(--ease-out)}.zoom-wrap:hover>img{transform:scale(1.08)}.page-enter-active{transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}.page-leave-active{transition:opacity .15s ease-in,transform .15s ease-in}.page-enter-from{opacity:0;transform:translateY(12px)}.page-leave-to{opacity:0;transform:translateY(-8px)}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}.markdown-body{color:var(--text-color);word-break:break-word;overflow-wrap:anywhere;--md-code-bg:#0f172a;--md-code-head:#16203a;--md-code-border:#1e293b;--md-code-fg:#e2e8f0;--md-code-dim:#64748b;--md-code-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;font-size:15px;line-height:1.8}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--text-color);margin:1.6em 0 .7em;font-weight:700;line-height:1.35}.markdown-body h1{font-size:1.75em}.markdown-body h2{border-bottom:1px solid var(--border-color);padding-bottom:.3em;font-size:1.45em}.markdown-body h3{font-size:1.22em}.markdown-body h4{font-size:1.08em}.markdown-body h5,.markdown-body h6{color:var(--text-secondary);font-size:1em}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body p{margin:.85em 0}.markdown-body hr{border:0;border-top:1px solid var(--border-color);height:0;margin:2em 0}.markdown-body ol,.markdown-body ul{margin:.85em 0;padding-left:1.6em}.markdown-body ul{list-style:outside}.markdown-body ol{list-style:decimal}.markdown-body li,.markdown-body li>ol,.markdown-body li>ul{margin:.35em 0}.markdown-body li input[type=checkbox]{vertical-align:middle;margin-right:.45em}.markdown-body ul:has(>li>input[type=checkbox]){padding-left:.4em;list-style:none}.markdown-body blockquote{border-left:3px solid var(--primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-hover);color:var(--text-secondary);margin:1em 0;padding:.6em 1em}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body code{background:var(--bg-hover);border:1px solid var(--border-light);color:var(--accent);border-radius:4px;padding:.15em .4em;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:.88em}.markdown-body pre{border:1px solid var(--border-color);border-radius:var(--radius);-webkit-overflow-scrolling:touch;background:#0f172a;margin:1em 0;padding:14px 16px;font-size:13px;line-height:1.6;overflow-x:auto}.markdown-body pre code{color:#e2e8f0;white-space:pre;word-break:normal;background:0 0;border:0;border-radius:0;padding:0;font-family:inherit;font-size:13px}.markdown-body .md-code{border:1px solid var(--md-code-border);border-radius:var(--radius);background:var(--md-code-bg);margin:1.1em 0;overflow:hidden}.markdown-body .md-code-head{background:var(--md-code-head);border-bottom:1px solid var(--md-code-border);justify-content:space-between;align-items:center;gap:12px;padding:6px 8px 6px 14px;display:flex}.markdown-body .md-code-lang{font-family:var(--md-code-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--md-code-dim);font-size:11px}.markdown-body .md-code-copy{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #334155;border-radius:999px;flex:none;padding:3px 11px;font-size:12px;line-height:1.5;transition:color .15s,border-color .15s,background .15s}.markdown-body .md-code-copy:hover{color:#fff;background:#94a3b824;border-color:#475569}.markdown-body .md-code-copy.is-ok{color:#4ade80;border-color:#4ade8073}.markdown-body .md-code-body{align-items:stretch;display:flex}.markdown-body .md-code-gutter{text-align:right;white-space:pre;color:var(--md-code-dim);border-right:1px solid var(--md-code-border);-webkit-user-select:none;user-select:none;flex:none;padding:12px 10px 12px 14px}.markdown-body .md-code pre.md-code-pre,.markdown-body .md-code pre.md-code-pre code,.markdown-body .md-code-gutter{font-family:var(--md-code-mono);font-size:13px;line-height:1.6}.markdown-body .md-code pre.md-code-pre{background:0 0;border:0;border-radius:0;flex:auto;min-width:0;margin:0;padding:12px 14px}.markdown-body .md-code pre.md-code-pre code{color:var(--md-code-fg)}.markdown-body .hljs-comment,.markdown-body .hljs-quote{color:#8b949e;font-style:italic}.markdown-body .hljs-doctag,.markdown-body .hljs-keyword,.markdown-body .hljs-literal,.markdown-body .hljs-selector-tag,.markdown-body .hljs-type{color:#ff7b72}.markdown-body .hljs-addition,.markdown-body .hljs-regexp,.markdown-body .hljs-string,.markdown-body .hljs-template-tag{color:#a5d6ff}.markdown-body .hljs-bullet,.markdown-body .hljs-number,.markdown-body .hljs-symbol,.markdown-body .hljs-template-variable,.markdown-body .hljs-variable{color:#79c0ff}.markdown-body .hljs-title,.markdown-body .hljs-title.function_{color:#d2a8ff}.markdown-body .hljs-built_in,.markdown-body .hljs-params,.markdown-body .hljs-title.class_{color:#ffa657}.markdown-body .hljs-attr,.markdown-body .hljs-attribute,.markdown-body .hljs-property{color:#7d8590}.markdown-body .hljs-name,.markdown-body .hljs-selector-class,.markdown-body .hljs-selector-id,.markdown-body .hljs-tag{color:#7ee787}.markdown-body .hljs-deletion,.markdown-body .hljs-meta{color:#ffa657}.markdown-body .hljs-section{color:#1f6feb;font-weight:700}.markdown-body .hljs-emphasis,.markdown-body em{font-style:italic}.markdown-body .hljs-strong,.markdown-body strong{font-weight:700}.markdown-body pre,.markdown-body table{scrollbar-width:thin;scrollbar-color:#94a3b866 transparent;overscroll-behavior-x:contain}.markdown-body pre:hover,.markdown-body table:hover{scrollbar-color:#94a3b8cc transparent}.markdown-body pre::-webkit-scrollbar{background:0 0;width:10px;height:10px}.markdown-body table::-webkit-scrollbar{background:0 0;width:10px;height:10px}.markdown-body pre::-webkit-scrollbar-corner{background:0 0}.markdown-body pre::-webkit-scrollbar-track{background:0 0}.markdown-body table::-webkit-scrollbar-corner{background:0 0}.markdown-body table::-webkit-scrollbar-track{background:0 0}.markdown-body pre::-webkit-scrollbar-thumb{background-color:#94a3b852;background-clip:content-box;border:2px solid #0000;border-radius:999px}.markdown-body table::-webkit-scrollbar-thumb{background-color:#94a3b852;background-clip:content-box;border:2px solid #0000;border-radius:999px}.markdown-body pre:hover::-webkit-scrollbar-thumb{background-color:#94a3b8bf;border-width:1px}.markdown-body table:hover::-webkit-scrollbar-thumb{background-color:#94a3b8bf;border-width:1px}.markdown-body table::-webkit-scrollbar-thumb{background-color:#78829652}.markdown-body table:hover::-webkit-scrollbar-thumb{background-color:#7882969e}.markdown-body a{color:var(--primary);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .15s}.markdown-body a:hover{border-bottom-color:var(--primary)}.markdown-body img{border-radius:var(--radius);max-width:100%;height:auto;margin:1em 0}.markdown-body table{border-collapse:collapse;width:max-content;max-width:100%;margin:1em 0;font-size:.94em;display:block;overflow-x:auto}.markdown-body td,.markdown-body th{border:1px solid var(--border-color);padding:8px 12px}.markdown-body th{background:var(--bg-hover);white-space:nowrap;font-weight:600}.markdown-body details,.markdown-body tr:nth-child(2n) td{background:var(--bg-page)}.markdown-body del{color:var(--text-tertiary)}.markdown-body kbd{border:1px solid var(--border-color);background:var(--bg-hover);border-bottom-width:2px;border-radius:4px;padding:.1em .4em;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85em}.markdown-body mark{color:#1f2937;background:#fde68a;border-radius:3px;padding:.05em .3em}.markdown-body ins{text-underline-offset:2px;text-decoration:underline}.markdown-body abbr[title]{cursor:help;border-bottom:1px dotted var(--text-tertiary)}.markdown-body small{color:var(--text-secondary);font-size:.85em}.markdown-body sub,.markdown-body sup{font-size:.78em;line-height:0}.markdown-body dl{margin:.85em 0}.markdown-body dt{margin-top:.6em;font-weight:700}.markdown-body dd{color:var(--text-secondary);margin:.15em 0 0 1.4em}.markdown-body figure{margin:1em 0}.markdown-body figure img{margin:0}.markdown-body figcaption{color:var(--text-secondary);text-align:center;margin-top:.4em;font-size:.88em}.markdown-body details{border:1px solid var(--border-color);border-radius:var(--radius-sm);margin:1em 0;padding:.6em .9em}.markdown-body summary{cursor:pointer;color:var(--text-secondary);font-weight:600}.markdown-body details[open] summary{margin-bottom:.5em}.markdown-body li.task-list-item{list-style:none}.markdown-body li.task-list-item input[type=checkbox]{width:1em;height:1em;accent-color:var(--primary);cursor:default;margin-right:.5em}.markdown-body blockquote.markdown-alert{background:var(--bg-page);border-left-width:4px;margin:1.1em 0;padding:.7em 1em}.markdown-body .markdown-alert .markdown-alert-title{align-items:center;gap:.4em;margin:0 0 .35em;font-size:.92em;font-weight:700;display:flex}.markdown-body .markdown-alert-note{border-left-color:#3b82f6}.markdown-body .markdown-alert-tip{border-left-color:#16a34a}.markdown-body .markdown-alert-important{border-left-color:#a855f7}.markdown-body .markdown-alert-warning{border-left-color:#d97706}.markdown-body .markdown-alert-caution{border-left-color:#dc2626}.markdown-body .markdown-alert-note .markdown-alert-title{color:#3b82f6}.markdown-body .markdown-alert-tip .markdown-alert-title{color:#16a34a}.markdown-body .markdown-alert-important .markdown-alert-title{color:#a855f7}.markdown-body .markdown-alert-warning .markdown-alert-title{color:#d97706}.markdown-body .markdown-alert-caution .markdown-alert-title{color:#dc2626}[data-theme=dark] .markdown-body .markdown-alert-note,[data-theme=dark] .markdown-body .markdown-alert-note .markdown-alert-title{color:#60a5fa;border-left-color:#60a5fa}[data-theme=dark] .markdown-body .markdown-alert-tip,[data-theme=dark] .markdown-body .markdown-alert-tip .markdown-alert-title{color:#4ade80;border-left-color:#4ade80}[data-theme=dark] .markdown-body .markdown-alert-important,[data-theme=dark] .markdown-body .markdown-alert-important .markdown-alert-title{color:#c084fc;border-left-color:#c084fc}[data-theme=dark] .markdown-body .markdown-alert-warning,[data-theme=dark] .markdown-body .markdown-alert-warning .markdown-alert-title{color:#fbbf24;border-left-color:#fbbf24}[data-theme=dark] .markdown-body .markdown-alert-caution,[data-theme=dark] .markdown-body .markdown-alert-caution .markdown-alert-title{color:#f87171;border-left-color:#f87171}.markdown-body :is(h1,h2,h3,h4,h5,h6){position:relative}.markdown-body :is(h1,h2,h3,h4,h5,h6)>a[id]:empty{border-bottom:0}.markdown-body :is(h1,h2,h3,h4,h5,h6)>a[id]:empty:before{content:"#";color:var(--primary);opacity:0;font-weight:600;transition:opacity .15s;position:absolute;top:0;left:-1.05em}.markdown-body :is(h1,h2,h3,h4,h5,h6):hover>a[id]:empty:before,.markdown-body :is(h1,h2,h3,h4,h5,h6)>a[id]:empty:focus-visible:before{opacity:.65}html{scroll-padding-top:calc(12px + var(--header-height,64px))}.markdown-body sup a[href^=\#fn],.markdown-body sup.footnote-ref a{border-bottom:0;font-size:.78em;font-weight:700}.markdown-body .footnotes{color:var(--text-secondary);border-top:1px solid var(--border-color);margin-top:2.2em;padding-top:.8em;font-size:.9em}.markdown-body .footnotes hr{display:none}.markdown-body .footnotes ol{margin:.6em 0;padding-left:1.5em}.markdown-body .footnotes li{margin:.3em 0}.markdown-body .footnotes .footnote-backref{border-bottom:0;text-decoration:none}.floor-content>:first-child,.subreply-content>:first-child{margin-top:0}.floor-content pre,.subreply-content pre{margin:.6em 0}.floor-content code,.subreply-content code{font-size:.86em}
