.code-block-wrapper{border-radius:0;margin:1.5rem 0;position:relative;overflow:hidden}.code-block-wrapper pre{tab-size:2;border-radius:0;padding:1rem 3rem 1rem 1.25rem;font-size:.8125rem;line-height:1.7;overflow-x:auto;margin:0!important}.code-block-wrapper pre code{font-family:var(--font-mono);background:0 0;padding:0}.code-block-wrapper .code-line{display:block}.code-block-wrapper .code-line.line-number:before{display:none}.code-block-wrapper .code-line.highlight-line{border-left-color:var(--color-primary);background:#ffffff0d}.code-copy-btn{z-index:2;color:#9ca3af;cursor:pointer;opacity:0;background:#ffffff14;border:none;border-radius:4px;justify-content:center;align-items:center;width:30px;height:30px;transition:opacity .15s,background .15s;display:flex;position:absolute;top:8px;right:8px}.code-block-wrapper:hover .code-copy-btn{opacity:1}.code-copy-btn:hover{background:#ffffff26}.code-block-wrapper.collapsed pre{max-height:480px;overflow:hidden}.code-block-wrapper.collapsed:after{content:"";pointer-events:none;background:linear-gradient(#0000,#1d1f21);height:80px;position:absolute;bottom:32px;left:0;right:0}.code-expand-btn{text-align:center;color:#9ca3af;cursor:pointer;background:#1d1f21;border:none;border-top:1px solid #ffffff0f;border-radius:0 0 6px 6px;width:100%;padding:6px 0;font-size:12px;transition:color .15s;display:block}.code-expand-btn:hover{color:#fff}
code[class*=language-],pre[class*=language-]{color:#ccc;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;tab-size:4;-webkit-hyphens:none;hyphens:none;background:0 0;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;line-height:1.5}pre[class*=language-]{margin:.5em 0;padding:1em;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{white-space:normal;border-radius:.3em;padding:.1em}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}
.blog-toc-outer{width:200px;height:100%;padding-top:6rem;position:absolute;top:0;left:calc(100% + 32px)}.blog-toc{border-left:1px solid var(--color-border);padding-left:0}.blog-toc-header{color:var(--color-text-sub);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:6px;padding:0 0 10px 16px;font-size:12px;font-weight:600;display:flex}.blog-toc-list{margin:0;padding:0;list-style:none}.blog-toc-item{color:var(--color-text-dim);text-overflow:ellipsis;white-space:nowrap;border-left:2px solid #0000;margin-left:-1px;padding:5px 12px 5px 16px;font-size:12.5px;line-height:1.5;text-decoration:none;transition:color .15s,border-color .15s;display:block;overflow:hidden}.blog-toc-item:hover{color:var(--color-text-main)}.blog-toc-item.active{color:var(--color-primary);border-left-color:var(--color-primary);font-weight:500}@keyframes tocCurtainIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.blog-toc-header,.blog-toc-list li{animation:.3s ease-out both tocCurtainIn}.blog-toc-list li:first-child{animation-delay:50ms}.blog-toc-list li:nth-child(2){animation-delay:80ms}.blog-toc-list li:nth-child(3){animation-delay:.11s}.blog-toc-list li:nth-child(4){animation-delay:.14s}.blog-toc-list li:nth-child(5){animation-delay:.17s}.blog-toc-list li:nth-child(6){animation-delay:.2s}.blog-toc-list li:nth-child(7){animation-delay:.23s}.blog-toc-list li:nth-child(8){animation-delay:.26s}.blog-toc-list li:nth-child(9){animation-delay:.29s}.blog-toc-list li:nth-child(10){animation-delay:.32s}.blog-toc-list li:nth-child(n+11){animation-delay:.35s}
.blog-ai-summary{background:color-mix(in srgb, var(--color-primary) 4%, var(--color-bg-card));border:1px solid color-mix(in srgb, var(--color-primary) 15%, var(--color-border));border-radius:4px;margin:0 0 2rem;padding:1.25rem 1.5rem;position:relative}.blog-ai-summary-header{color:var(--color-primary);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.blog-ai-summary-body{color:var(--color-text-sub);font-size:.9375rem;line-height:1.8}
