:root{--sidebar-w: 260px;--toc-w: 220px;--content-max: 860px;--header-h: 56px;--radius: 8px;--bg: #ffffff;--bg-muted: #f4f4f5;--bg-hover: #f4f4f5;--border: #e4e4e7;--text: #09090b;--text-muted: #71717a;--text-dimmed: #a1a1aa;--primary: #18181b;--link: #2563eb;--code-bg: #f4f4f5;--code-text: #18181b;--pre-bg: #f6f8fa;--pre-text: #24292f;--callout-bg: #fffbeb;--callout-border:#fbbf24;--callout-text: #92400e;--scrollbar: #d4d4d8;--shadow: 0 1px 3px rgba(0,0,0,.08);--toc-active: #18181b}html.dark{--bg: #111111;--bg-muted: #1a1a1a;--bg-hover: #222222;--border: #2a2a2a;--text: #fafafa;--text-muted: #a1a1aa;--text-dimmed: #71717a;--primary: #fafafa;--link: #60a5fa;--code-bg: #1e1e1e;--code-text: #e4e4e7;--pre-bg: #0d0d0d;--pre-text: #e4e4e7;--callout-bg: #1c1700;--callout-border:#d97706;--callout-text: #fde68a;--scrollbar: #3f3f46;--shadow: 0 1px 3px rgba(0,0,0,.5);--toc-active: #fafafa}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{font-size:15px;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.7}a{text-decoration:none;color:inherit}ul,ol{list-style:none}button{border:none;background:none;cursor:pointer;font:inherit;color:inherit}svg{display:block;flex-shrink:0}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#a1a1aa;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#71717a}html.dark ::-webkit-scrollbar-thumb{background:#52525b}html.dark ::-webkit-scrollbar-thumb:hover{background:#71717a}*{scrollbar-width:thin;scrollbar-color:#a1a1aa transparent}html.dark *{scrollbar-color:#52525b transparent}#nd-layout{display:grid;min-height:100vh;grid-template-columns:1fr var(--sidebar-w) minmax(0,var(--content-max)) var(--toc-w) 1fr;grid-template-areas:". sidebar main toc .";align-items:start}#nd-sidebar{grid-area:sidebar;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--bg);overflow-y:auto;overflow-x:hidden}.sb-logo-row{display:flex;align-items:center;justify-content:space-between;padding:0 14px;height:var(--header-h);border-bottom:1px solid var(--border);flex-shrink:0}.sb-logo{display:flex;align-items:center;gap:9px;font-weight:600;font-size:.9rem;color:var(--text)}.sb-logo-icon{width:24px;height:24px;border-radius:6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}.sb-search{padding:10px 10px 6px;flex-shrink:0}.sb-search-btn{display:flex;align-items:center;gap:7px;width:100%;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-muted);color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:border-color .15s,background .15s;text-align:left}.sb-search-btn:hover{background:var(--bg-hover);border-color:var(--text-dimmed)}.sb-search-btn kbd{margin-left:auto;font-size:.7rem;padding:1px 5px;border-radius:4px;border:1px solid var(--border);background:var(--bg);color:var(--text-muted);font-family:inherit}.sb-nav{padding:6px 8px 16px;flex:1}.sb-section-title{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding:14px 8px 5px;cursor:pointer;user-select:none;border-radius:4px;transition:color .12s}.sb-section-title:hover{color:var(--text)}.sb-chevron{display:flex;align-items:center;opacity:.5;transition:transform .2s cubic-bezier(.4,0,.2,1);transform:rotate(90deg)}.sb-section-title.collapsed .sb-chevron{transform:rotate(0)}.sb-group-items{overflow:hidden;transition:opacity .15s}.sb-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;font-size:.85rem;color:var(--text-muted);transition:background .12s,color .12s;cursor:pointer}.sb-item:hover{background:var(--bg-hover);color:var(--text)}.sb-item.active{background:var(--bg-hover);color:var(--text);font-weight:500}.sb-item svg{opacity:.6}.sb-item.active svg{opacity:1}.sb-remote-section{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.sb-section-label{font-size:.7rem;font-weight:600;color:var(--text-dimmed);text-transform:uppercase;letter-spacing:.07em;padding:6px 10px 4px}.sb-remote-nav-wrap{display:flex;flex-direction:column;gap:1px}.sb-remote-cat-title{display:flex;align-items:center;gap:7px;padding:5px 10px;border-radius:6px;font-size:.84rem;color:var(--text-muted);cursor:pointer;user-select:none;transition:background .12s,color .12s}.sb-remote-cat-title:hover{background:var(--bg-hover);color:var(--text)}.sb-remote-cat.open .sb-remote-cat-title{color:var(--text);font-weight:500}.sb-remote-cat-name{flex:1}.sb-remote-chevron{flex-shrink:0;opacity:.5;transition:transform .18s}.sb-remote-cat.open .sb-remote-chevron{transform:rotate(90deg)}.sb-remote-cat-refresh{display:flex;align-items:center;cursor:pointer;opacity:0;transition:opacity .2s;padding:2px;color:var(--text-dimmed)}.sb-remote-cat-title:hover .sb-remote-cat-refresh{opacity:1}.sb-remote-cat-refresh:hover{color:var(--text)}.sb-remote-articles{overflow:hidden;padding-left:12px}.sb-remote-article{padding:4px 10px!important;font-size:.8rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex!important;align-items:center;gap:5px}.sb-remote-lock{flex-shrink:0;display:flex;align-items:center;color:var(--text-dimmed);opacity:.7}.sb-remote-article.locked{color:var(--text-dimmed)}.sb-remote-article.locked:hover{color:var(--text-muted)}.sb-remote-article.offline{color:#ef4444;opacity:.75}.sb-remote-article.offline:hover{color:#dc2626;opacity:1}.sb-tree-node{position:relative}.sb-tree-node .sb-tree-header{display:flex;align-items:center;gap:2px}.sb-tree-node .sb-tree-header .sb-remote-article{flex:1;min-width:0}.sb-tree-toggle{display:flex;align-items:center;cursor:pointer;padding:2px;transition:transform .2s;flex-shrink:0;color:var(--text-dimmed)}.sb-tree-node.open>.sb-tree-header>.sb-tree-toggle{transform:rotate(90deg)}.sb-tree-children{padding-left:14px}.sb-tree-node.dragging,.sb-tree-leaf.dragging{opacity:.4}.sb-tree-node.drag-over>.sb-tree-header,.sb-tree-leaf.drag-over,.sb-remote-cat-title.drag-over{background:var(--bg-hover);outline:2px dashed var(--link);outline-offset:-2px;border-radius:4px}.sb-remote-article.external{color:var(--text-muted)}.sb-remote-article.external:hover{color:var(--text)}.sb-remote-ext-icon{flex-shrink:0;display:flex;align-items:center;color:var(--text-dimmed);opacity:.8}.sb-remote-ext-arrow{flex-shrink:0;display:flex;align-items:center;margin-left:auto;padding-left:4px;color:var(--text-dimmed);opacity:.5}.sb-remote-loading,.sb-remote-empty{font-size:.78rem;color:var(--text-dimmed);padding:4px 10px 6px 22px}.sb-remote-loading:before{content:"\23f3  "}#cat-ctx-menu,#article-ctx-menu,#trash-ctx-menu{position:fixed;z-index:10020;background:var(--bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000026;padding:4px;min-width:120px;display:none;animation:ctxFadeIn .1s ease}#cat-ctx-menu.open,#article-ctx-menu.open,#trash-ctx-menu.open{display:block}@keyframes ctxFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}#cat-ctx-menu button,#article-ctx-menu button,#trash-ctx-menu button{display:flex;align-items:center;gap:7px;width:100%;padding:7px 10px;border-radius:5px;font-size:.82rem;color:var(--text-muted);text-align:left;white-space:nowrap;transition:background .1s,color .1s}#cat-ctx-menu button:hover:not(:disabled),#article-ctx-menu button:hover:not(:disabled),#trash-ctx-menu button:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}#cat-ctx-menu button:disabled,#article-ctx-menu button:disabled,#trash-ctx-menu button:disabled{opacity:.5;cursor:default}.ctx-menu-danger{color:var(--danger, #e53e3e)!important}.ctx-menu-danger:hover{color:var(--danger, #e53e3e)!important;background:#e53e3e14!important}.sb-trash-cat{margin-top:8px;border-top:1px solid var(--border);padding-top:8px}.sb-trash-title .sb-remote-cat-icon{opacity:.6}.sb-trash-title .sb-remote-cat-name{color:var(--text-muted);font-size:.8rem}.sb-trash-article{color:var(--text-muted)!important;font-style:italic}.sb-trash-cat-tag{margin-left:6px;font-size:.7rem;opacity:.5;font-style:normal}.sb-trash-tenant-tag{margin-left:6px;font-size:.7rem;opacity:.6;font-style:normal;color:var(--primary, #3b82f6)}.sb-history-wrap{border-top:1px solid var(--border);flex-shrink:0}.sb-history-wrap[style*="display: none"]{display:none!important}.sb-history-header .sb-section-title{font-size:.7rem;font-weight:600;letter-spacing:.07em;color:var(--text-muted);text-transform:uppercase}#sb-history-clear{font-size:.7rem;color:var(--text-dimmed);padding:1px 6px;border-radius:4px;transition:color .12s,background .12s}#sb-history-clear:hover{color:var(--text);background:var(--bg-hover)}.sb-history-list{padding:2px 8px 8px}.sb-history-item{display:flex;align-items:center;gap:7px;padding:4px 6px;font-size:.78rem;color:var(--text-muted);border-radius:5px;cursor:pointer;transition:background .12s,color .12s;overflow:hidden}.sb-history-item:hover{background:var(--bg-hover);color:var(--text)}.sb-history-item.active{color:var(--text);font-weight:500}.sh-dot{width:5px;height:5px;border-radius:50%;background:var(--text-dimmed);flex-shrink:0;opacity:.6}.sb-history-item.active .sh-dot{background:var(--link);opacity:1}.sh-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-footer{flex-shrink:0;border-top:1px solid var(--border);padding:10px 8px;display:flex;align-items:center;gap:4px}.sb-footer-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:var(--text-muted);transition:background .12s,color .12s}.sb-footer-btn:hover{background:var(--bg-hover);color:var(--text)}.sb-logo-row-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.sb-auth-btn{display:inline-flex;align-items:center;gap:5px;padding:0 10px;height:32px;border-radius:8px;font-size:.75rem;font-weight:500;line-height:1;color:#4f46e5;background:linear-gradient(135deg,#ede9fe,#e0e7ff);border:1px solid #c4b5fd;cursor:pointer;text-decoration:none;transition:background .15s,box-shadow .15s,color .15s,transform .1s;white-space:nowrap;flex-shrink:0}.sb-auth-btn:hover{background:linear-gradient(135deg,#ddd6fe,#c7d2fe);box-shadow:0 2px 8px #6366f140;color:#3730a3;text-decoration:none;transform:translateY(-1px)}.sb-auth-btn:active{transform:translateY(0);box-shadow:none}.sb-auth-btn-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.sb-auth-btn.sb-auth-btn--authed{color:#059669;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#6ee7b7;cursor:pointer}.sb-auth-btn.sb-auth-btn--authed:hover{background:linear-gradient(135deg,#bbf7d0,#86efac);box-shadow:0 2px 8px #05966933;color:#047857;transform:translateY(-1px)}.sb-user-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f;min-width:160px;padding:6px 0;animation:sbddFadeIn .15s ease}@keyframes sbddFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sb-user-dropdown-name{padding:8px 14px;font-size:.8rem;font-weight:600;color:#111827}.sb-user-dropdown-divider{height:1px;background:#e5e7eb;margin:2px 0}.sb-user-dropdown-new-article{display:flex;align-items:center;gap:6px;width:100%;padding:8px 14px;font-size:.78rem;color:#6366f1;background:none;border:none;cursor:pointer;text-align:left}.sb-user-dropdown-new-article:hover{background:#eef2ff}.sb-user-dropdown-logout{display:flex;align-items:center;gap:6px;width:100%;padding:8px 14px;font-size:.78rem;color:#ef4444;background:none;border:none;cursor:pointer;text-align:left}.sb-user-dropdown-logout:hover{background:#fef2f2}.dark .sb-user-dropdown-new-article{color:#818cf8}.dark .sb-user-dropdown-new-article:hover{background:#1e1b4b}.dark .sb-user-dropdown{background:#1f2937;border-color:#374151}.dark .sb-user-dropdown-name{color:#f3f4f6}.dark .sb-user-dropdown-divider{background:#374151}.dark .sb-user-dropdown-logout{color:#f87171}.dark .sb-user-dropdown-logout:hover{background:#371520}.sb-auth-btn-m .sb-auth-btn-label{display:none}.sb-auth-btn-m{padding:0;width:34px;height:34px;border-radius:8px;justify-content:center}html.dark .sb-auth-btn{color:#a5b4fc;background:linear-gradient(135deg,#6366f12e,#4f46e538);border-color:#8b5cf666}html.dark .sb-auth-btn:hover{background:linear-gradient(135deg,#6366f147,#4f46e552);box-shadow:0 2px 10px #6366f159;color:#c7d2fe}html.dark .sb-auth-btn.sb-auth-btn--authed{color:#34d399;background:linear-gradient(135deg,#10b98126,#0596692e);border-color:#34d39959}html.dark .sb-auth-btn.sb-auth-btn--authed:hover{background:linear-gradient(135deg,#10b98126,#0596692e);box-shadow:none;color:#34d399}#nd-topbar{position:fixed;top:0;left:0;right:0;z-index:50;display:none;align-items:center;padding:0 16px;height:var(--header-h);border-bottom:1px solid var(--border);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffffd9}html.dark #nd-topbar{background:#111111d9}#nd-topbar a{font-weight:600;font-size:.9rem}#nd-topbar-right{margin-left:auto;display:flex;gap:6px}#nd-main{grid-area:main;min-width:0;overflow-x:hidden;padding:40px 16px 80px;width:100%}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-muted);margin-bottom:18px}.breadcrumb span{display:flex;align-items:center}.breadcrumb .sep{color:var(--text-dimmed);margin:0 1px}.article-header{margin-bottom:32px}.article-header.no-ai{margin-bottom:16px}.article-header h1{font-size:1.5rem;font-weight:700;line-height:1.3;letter-spacing:-.015em;color:var(--text);margin-bottom:8px}.article-header p{font-size:.95rem;color:var(--text-muted);max-width:60ch;line-height:1.6}.article-header .badges{display:flex;gap:6px;margin-top:14px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:99px;font-size:.72rem;font-weight:500;background:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border)}.badge.blue{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}.badge.green{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.badge.purple{background:#ede9fe;color:#7c3aed;border-color:#ddd6fe}.badge.orange{background:#ffedd5;color:#c2410c;border-color:#fed7aa}html.dark .badge.blue{background:#1e3a5f;color:#93c5fd;border-color:#1d4ed8}html.dark .badge.green{background:#14532d;color:#86efac;border-color:#166534}html.dark .badge.purple{background:#2e1065;color:#c4b5fd;border-color:#5b21b6}html.dark .badge.orange{background:#431407;color:#fdba74;border-color:#9a3412}.badge.yellow{background:#fefce8;color:#a16207;border-color:#fde68a}.badge.red{background:#fef2f2;color:#b91c1c;border-color:#fecaca}html.dark .badge.yellow{background:#422006;color:#fde68a;border-color:#92400e}html.dark .badge.red{background:#450a0a;color:#fca5a5;border-color:#7f1d1d}.am-tag{font-weight:500;font-size:.75rem;padding:2px 8px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;line-height:1.6}.am-tag-time{color:#0369a1;background:#eff6ff}html.dark .am-tag-time{color:#7dd3fc;background:#0369a11f}.am-tag-wordcount{color:#6d28d9;background:#f5f3ff}html.dark .am-tag-wordcount{color:#c4b5fd;background:#6d28d91f}.am-tag-category{color:#4338ca;background:#eef2ff}html.dark .am-tag-category{color:#a5b4fc;background:#6366f126}.am-tag-sc{font-weight:600}.am-tag-sc-1{color:#15803d;background:#f0fdf4}.am-tag-sc-2{color:#1d4ed8;background:#eff6ff}.am-tag-sc-3{color:#b45309;background:#fffbeb}.am-tag-sc-4{color:#b91c1c;background:#fef2f2}html.dark .am-tag-sc-1{color:#86efac;background:#16a34a1f}html.dark .am-tag-sc-2{color:#93c5fd;background:#1d4ed826}html.dark .am-tag-sc-3{color:#fcd34d;background:#b4530926}html.dark .am-tag-sc-4{color:#fca5a5;background:#b91c1c26}.am-tag-pass-open{color:#008642;background:#f0f9f0}.am-tag-pass-crypto{color:#b91c1c;background:#fef2f2}html.dark .am-tag-pass-open{color:#6ee7b7;background:#0086421f}html.dark .am-tag-pass-crypto{color:#fca5a5;background:#b91c1c26}.am-tag-status-0{color:#64748b;background:#f8fafc}.am-tag-status-1{color:#0369a1;background:#eff6ff}html.dark .am-tag-status-0{color:#94a3b8;background:#64748b1f}html.dark .am-tag-status-1{color:#7dd3fc;background:#0369a126}.article-header hr{border:none;border-top:1px solid var(--border);margin-top:24px}.article-meta{display:flex;flex-direction:column;gap:6px;margin-top:10px;margin-bottom:0;font-size:.82rem;color:var(--text-muted)}.am-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.am-row-actions{min-height:0}.am-row-actions:empty{display:none}.am-row-actions:not(:has(button:not([style*="display:none"]),span:not([style*="display:none"]))){display:none}.article-meta .am-item{display:inline-flex;align-items:center;gap:4px}.article-meta .am-item>svg,.article-meta .am-item .badge>svg{flex-shrink:0;opacity:.85;display:block}.prose{max-width:none}.prose>*:first-child{margin-top:0!important}.prose h2{font-size:1.35rem;font-weight:600;line-height:1.3;letter-spacing:-.015em;margin:36px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border);color:var(--text);scroll-margin-top:80px}.prose h3{font-size:1.05rem;font-weight:600;margin:26px 0 8px;color:var(--text);scroll-margin-top:80px}.prose p{margin-bottom:14px;color:var(--text);font-size:.92rem}.prose a{color:var(--link)}.prose a:hover{text-decoration:underline}.prose strong{font-weight:600;color:var(--text)}.prose ul{margin:10px 0 14px}.prose ul li{position:relative;padding-left:18px;margin-bottom:5px;font-size:.92rem;color:var(--text)}.prose ul li:before{content:"\2022";position:absolute;left:5px;color:var(--text-muted)}.prose ul .task-item{padding-left:28px;list-style:none}.prose ul .task-item:before{display:none}.task-checkbox{position:absolute;left:0;top:2px;width:16px;height:16px;border:1.5px solid var(--border);border-radius:4px;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s}.task-item.checked .task-checkbox{background:#6366f1;border-color:#6366f1;color:#fff}.task-item.checked .task-checkbox svg{display:block}.task-text{line-height:1.55}.task-item.checked .task-text{color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--text-dimmed)}.prose ol{margin:10px 0 14px;counter-reset:ol-counter}.prose ol li{position:relative;padding-left:22px;margin-bottom:5px;font-size:.92rem;color:var(--text);counter-increment:ol-counter}.prose ol li:before{content:counter(ol-counter) ".";position:absolute;left:0;color:var(--text-muted);font-weight:500}.prose code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.8em;padding:2px 6px;border-radius:5px;background:var(--code-bg);color:var(--code-text);border:1px solid var(--border)}.prose pre{position:relative;background:var(--pre-bg);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;overflow-x:auto;margin:16px 0 20px;font-size:.82rem;line-height:1.65}.prose pre code{background:none!important;border:none;padding:0!important;font-size:inherit}.hljs{background:transparent!important;padding:0!important}.prose table{width:100%;border-collapse:collapse;font-size:.86rem;margin:14px 0 20px}.prose table th{text-align:left;padding:8px 12px;font-weight:600;font-size:.78rem;color:var(--text-muted);background:var(--bg-muted);border-bottom:1px solid var(--border)}.prose table td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:top}.prose table tbody tr:last-child td{border-bottom:none}.prose table tbody tr:hover td{background:var(--bg-muted)}.prose blockquote{border-left:3px solid var(--border);margin:16px 0;padding:6px 16px;color:var(--text-muted);font-style:italic}.prose blockquote>p:first-child{margin-top:0}.prose blockquote>p:last-child{margin-bottom:0}.prose hr{border:none;border-top:1px solid var(--border);margin:24px 0}.code-block{position:relative;margin:16px 0 20px}.code-title{display:flex;align-items:center;gap:8px;background:var(--pre-bg);border:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;padding:8px 14px;font-size:.75rem;color:var(--text-muted);font-family:ui-monospace,monospace}.code-title svg{opacity:.6}.code-block>pre{margin:0;border-radius:0 0 var(--radius) var(--radius);border-top:none}.code-block:not(:has(.code-title))>pre{border-radius:var(--radius)}.copy-btn{position:absolute;top:9px;right:10px;display:flex;align-items:center;gap:5px;padding:3px 8px;border-radius:5px;font-size:.72rem;color:#a1a1aa;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);transition:background .15s,color .15s;z-index:1}.copy-btn:hover{background:#ffffff1f;color:#fafafa}.copy-btn.copied{color:#86efac;border-color:#86efac4d}.code-block pre{overflow-x:auto}.hljs.numbered{display:block;font-size:.82rem}.hljs.numbered .line{display:flex;gap:0;min-height:1.2em;font-size:.82rem}.hljs.numbered .line:hover{background:#ffffff0a}.hljs.numbered .line-num{display:inline-block;min-width:2.2em;padding-right:.8em;color:#9696a066;text-align:right;font-size:.85em;user-select:none;flex-shrink:0;border-right:1px solid var(--border);margin-right:.9em}.hljs.numbered .line-code{flex:1;white-space:pre;font-size:.82rem}.code-lang{position:absolute;top:9px;right:84px;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#9696a080;font-family:ui-monospace,monospace;pointer-events:none;user-select:none}.code-title .code-lang{position:static;margin-left:auto}.code-fold-inner{max-height:370px;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(to bottom,black 65%,transparent 100%);mask-image:linear-gradient(to bottom,black 65%,transparent 100%)}.code-fold-inner>pre{border-radius:var(--radius) var(--radius) 0 0!important;margin:0!important}.code-fold-inner+.code-expand-btn{border-top:none}.code-expand-btn{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:7px 0;background:var(--pre-bg);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius) var(--radius);color:var(--text-muted);font-size:.78rem;font-family:ui-monospace,monospace;cursor:pointer;transition:color .15s,background .15s}.code-expand-btn:hover{color:var(--link);background:color-mix(in srgb,var(--pre-bg) 85%,var(--link))}.code-expand-btn svg{transition:transform .2s}.code-expand-btn:hover svg{transform:translateY(2px)}.mermaid-wrap{margin:16px 0 20px;display:flex;justify-content:center;align-items:center;overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-muted);min-height:80px;position:relative}.mermaid-wrap .mermaid{display:inline-block;padding:16px}.mermaid-wrap svg{max-width:100%;height:auto}html.dark .mermaid-wrap svg text,html.dark .mermaid-wrap svg tspan,html.dark .mermaid-wrap svg .label,html.dark .mermaid-wrap svg .nodeLabel,html.dark .mermaid-wrap svg foreignObject div,html.dark .mermaid-wrap svg foreignObject span,html.dark #diagram-modal svg text,html.dark #diagram-modal svg tspan,html.dark #diagram-modal svg .label,html.dark #diagram-modal svg .nodeLabel,html.dark #diagram-modal svg foreignObject div,html.dark #diagram-modal svg foreignObject span{color:#e0e7ff!important;fill:#e0e7ff!important}.diagram-expand-btn{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:var(--bg);border:1px solid var(--border);color:var(--text-muted);opacity:0;pointer-events:none;transition:opacity .15s,background .12s,color .12s;z-index:2}.mermaid-wrap:hover .diagram-expand-btn{opacity:1;pointer-events:auto}.diagram-expand-btn:hover{background:var(--bg-hover);color:var(--text)}#diagram-modal{position:fixed;inset:0;z-index:300;background:#000000b8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .22s}#diagram-modal.open{opacity:1;pointer-events:auto}#diagram-modal-box{position:relative;width:min(94vw,1200px);height:min(88dvh,800px);background:var(--bg);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #0006;transform:scale(.95);transition:transform .22s}#diagram-modal.open #diagram-modal-box{transform:scale(1)}#diagram-modal-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg)}#diagram-modal-hint{font-size:.74rem;color:var(--text-dimmed)}#diagram-modal-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;color:var(--text-muted);transition:background .12s,color .12s}#diagram-modal-close:hover{background:var(--bg-hover);color:var(--text)}#diagram-modal-stage{flex:1;overflow:clip;display:flex;align-items:center;justify-content:center;min-height:300px;cursor:grab;padding:24px;user-select:none;position:relative}#diagram-modal-stage>*{display:block;will-change:transform;transform-origin:50% 50%}.echarts-wrap{margin:16px 0 20px;display:flex;justify-content:center;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-muted);min-height:120px;position:relative}.echarts-wrap .echarts-chart{width:100%;height:360px}.echarts-wrap .diagram-expand-btn{opacity:0;pointer-events:none}.echarts-wrap:hover .diagram-expand-btn{opacity:1;pointer-events:auto}.echarts-error{padding:20px;color:#ef4444;font-size:.85rem;text-align:center}.prose img{cursor:zoom-in;transition:transform .2s,box-shadow .2s}.prose img:hover{box-shadow:0 4px 20px #00000026}.medium-zoom-overlay{z-index:200!important;background:#000000d9!important}.medium-zoom-image--opened{z-index:201!important;border-radius:var(--radius);max-width:none!important}.md-correct-group{display:inline}.md-correct-del{color:#dc2626;text-decoration:line-through;text-decoration-color:#dc2626;background:#fef2f2;border-radius:2px;padding:0 2px}.md-correct-ins{color:#16a34a;text-decoration:none;background:#f0fdf4;border-radius:2px;padding:0 2px;font-style:normal}html.dark .md-correct-del{color:#fca5a5;background:#2d0a0a}html.dark .md-correct-ins{color:#86efac;background:#052e16}.callout{display:flex;align-items:flex-start;gap:10px;margin:16px 0;padding:10px 14px;border-radius:var(--radius);border-left:3px solid var(--callout-border);background:var(--callout-bg);font-size:.88rem;line-height:1.6}.callout.info{--callout-bg:#eff6ff;--callout-border:#3b82f6;--callout-text:#1e40af}.callout.tip{--callout-bg:#f0fdf4;--callout-border:#22c55e;--callout-text:#166534}.callout.warn{--callout-bg:#fffbeb;--callout-border:#f59e0b;--callout-text:#92400e}html.dark .callout.info{--callout-bg:#172554;--callout-text:#93c5fd}html.dark .callout.tip{--callout-bg:#14532d;--callout-text:#86efac}html.dark .callout.warn{--callout-bg:#1c1700;--callout-text:#fde68a}.callout-icon{font-size:1rem;flex-shrink:0;line-height:1.6;color:var(--callout-border);margin-top:2px}.callout-body{color:var(--callout-text);min-width:0}.callout-body>p:first-child{margin-top:0}.callout-body>p:last-child{margin-bottom:0}.callout-body strong{color:inherit;font-weight:600}.md-details{margin:16px 0;border-radius:var(--radius);border:1px solid var(--border);background:var(--sidebar-bg, #f8fafc);overflow:hidden;font-size:.88rem}html.dark .md-details{background:#1e1e2e}.md-details-summary{display:flex;align-items:center;gap:6px;padding:9px 14px;cursor:pointer;font-weight:500;color:var(--text);list-style:none;user-select:none;border-bottom:1px solid transparent;transition:background .15s}.md-details-summary::-webkit-details-marker{display:none}.md-details-summary:before{content:"\25b6";font-size:10px;color:var(--muted, #9ca3af);transition:transform .2s;flex-shrink:0}.md-details[open]>.md-details-summary{border-bottom-color:var(--border)}.md-details[open]>.md-details-summary:before{transform:rotate(90deg)}.md-details-summary:hover{background:var(--hover, rgba(0,0,0,.04))}.md-details-body{padding:12px 16px;color:var(--text-muted, var(--text))}.md-details-body>p:first-child{margin-top:0}.md-details-body>p:last-child{margin-bottom:0}.ai-insight{margin:0 0 24px;border-radius:var(--radius);border:1px solid #c4b5fd;background:#faf5ff;overflow:hidden}html.dark .ai-insight{border-color:#5b21b6;background:#1a0533}.ai-insight-header{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#ede9fe,#f5f3ff);border-bottom:1px solid #ddd6fe;font-size:.8rem;font-weight:600;color:#6d28d9;letter-spacing:.02em}html.dark .ai-insight-header{background:linear-gradient(135deg,#2e1065,#1e1033);border-bottom-color:#4c1d95;color:#c4b5fd}.ai-insight-header svg{opacity:.8;display:block;flex-shrink:0}.ai-insight-header-right{margin-left:auto;display:flex;align-items:center;gap:10px}.ai-credit{font-size:.7rem;font-weight:400;opacity:.6;letter-spacing:0}.ai-credit strong{font-weight:600;opacity:.9}.ai-score{display:inline-flex;align-items:center;gap:2px;padding:2px 10px;border-radius:99px;background:#7c3aed;color:#fff;font-size:.78rem;font-weight:700;line-height:1}.ai-score-num{font-size:.92rem;line-height:1}.ai-score-unit{font-size:.65rem;opacity:.85}.ai-insight-body{padding:12px 16px;display:flex;flex-direction:column;gap:10px}.ai-evaluation{font-size:.83rem;color:#6d28d9;font-style:italic;line-height:1.6}html.dark .ai-evaluation{color:#c4b5fd}.ai-summary{font-size:.83rem;color:#5b21b6;line-height:1.7;padding-top:8px;border-top:1px solid #ede9fe}html.dark .ai-summary{border-top-color:#3b0764;color:#a78bfa}.ai-summary-label{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#7c3aed;margin-bottom:4px;display:flex;align-items:center;gap:4px}.ai-summary-label svg{display:block;flex-shrink:0;opacity:.8}html.dark .ai-summary-label{color:#a78bfa}@keyframes ai-blink{0%,to{opacity:1}50%{opacity:0}}.ai-cursor{display:inline-block;width:1.5px;height:.9em;background:currentColor;margin-left:1px;vertical-align:text-bottom;animation:ai-blink .9s step-end infinite}.steps{border-left:2px solid var(--border);margin:20px 0 20px 10px;padding-left:26px}.step{position:relative;margin-bottom:28px}.step:last-child{margin-bottom:0}.step-num{position:absolute;left:-38px;top:1px;width:22px;height:22px;border-radius:50%;background:var(--primary);color:var(--bg);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}html.dark .step-num{background:var(--bg-hover);color:var(--text);border:1px solid var(--border)}.step h3{margin-top:0!important}.step-title{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:6px;line-height:1.4}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:1.4em 0}.feature-card{border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;background:var(--bg-muted);transition:border-color .15s,box-shadow .15s}.feature-card:hover{border-color:var(--primary);box-shadow:0 2px 12px #00000014}.feature-card-icon{font-size:1.4rem;margin-bottom:8px}.feature-card h3{font-size:.9rem;font-weight:600;margin:0 0 6px}.feature-card p{font-size:.82rem;color:var(--text-muted);margin:0;line-height:1.55}.how-steps{display:flex;flex-direction:column;margin:1.4em 0;padding-left:12px;border-left:2px solid var(--border)}.how-step{position:relative;padding:0 0 24px 24px}.how-step:last-child{padding-bottom:0}.how-step:before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--primary);border:2px solid var(--bg);box-shadow:0 0 0 2px var(--border)}.how-step h3{font-size:.95rem;font-weight:600;margin-bottom:4px}.how-step p{font-size:.85rem;color:var(--text-muted);margin:0}.compare-table{width:100%;border-collapse:collapse;font-size:.84rem;margin:1.2em 0}.compare-table th,.compare-table td{padding:10px 14px;border:1px solid var(--border);text-align:left}.compare-table th{background:var(--bg-muted);font-weight:600;font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.compare-table tbody tr:hover td{background:var(--bg-hover)}.compare-table .yes{color:#22c55e;font-weight:600}.compare-table .no{color:#ef4444}.compare-table .part{color:#f59e0b}.api-table{width:100%;border-collapse:collapse;font-size:.84rem;margin:14px 0 20px}.api-table thead th{text-align:left;padding:8px 12px;font-weight:600;font-size:.78rem;color:var(--text-muted);background:var(--bg-muted);border-bottom:1px solid var(--border)}.api-table thead th:first-child{border-radius:var(--radius) 0 0 0}.api-table thead th:last-child{border-radius:0 var(--radius) 0 0}.api-table tbody td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:top}.api-table tbody tr:last-child td{border-bottom:none}.api-table tbody tr:hover td{background:var(--bg-muted)}.api-table .method-name{font-family:ui-monospace,monospace;font-weight:600;color:var(--link);font-size:.8rem}.api-table .type{font-family:ui-monospace,monospace;color:var(--text-muted);font-size:.78rem}.required-badge{display:inline-block;padding:1px 6px;border-radius:99px;font-size:.68rem;font-weight:600;background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}html.dark .required-badge{background:#450a0a;color:#fca5a5;border-color:#7f1d1d}h2#comments{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;pointer-events:none}.cm-disabled{display:flex;align-items:center;gap:7px;margin-top:48px;padding:12px 16px;border-top:1px solid var(--border);color:var(--text-muted);font-size:.88rem}.cm-section{margin-top:56px;padding-top:36px;border-top:1px solid var(--border)}.cm-header{margin-bottom:24px}.cm-title{font-size:.95rem;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px;margin:0}.cm-count{font-size:.75rem;font-weight:500;background:var(--bg-muted);color:var(--text-muted);padding:1px 8px;border-radius:99px}.cm-input-wrap{display:flex;gap:12px;margin-bottom:32px;align-items:flex-start}.cm-input-box{flex:1;min-width:0}.cm-editor{border:1px solid var(--border);border-radius:12px;background:var(--bg);transition:border-color .15s,box-shadow .15s;overflow:hidden}.cm-editor:focus-within{border-color:var(--link);box-shadow:0 0 0 3px #6366f11f}.cm-textarea{width:100%;box-sizing:border-box;background:transparent;border:none;padding:12px 14px 4px;font-size:.875rem;color:var(--text);resize:none;font-family:inherit;line-height:1.65;outline:none;min-height:76px;display:block}.cm-textarea::placeholder{color:var(--text-dimmed)}.cm-at-hint{padding:2px 14px 8px;font-size:.72rem;color:var(--text-dimmed);user-select:none}.cm-at-hint kbd{display:inline-block;padding:0 4px;border-radius:3px;background:var(--bg-muted);border:1px solid var(--border);font-size:.68rem;font-family:inherit;color:var(--text-muted);line-height:1.6}.cm-editor-divider{height:1px;background:var(--border);margin:0 14px}.cm-input-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;gap:10px}.cm-captcha-wrap{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.cm-captcha-img{height:32px;width:96px;max-width:96px;border-radius:6px;border:1px solid var(--border);cursor:pointer;object-fit:fill;flex-shrink:0;transition:opacity .15s}.cm-captcha-img:hover{opacity:.8}.cm-captcha-input{height:32px;width:100px;background:var(--bg-muted);border:1px solid var(--border);border-radius:7px;padding:0 10px;font-size:.82rem;color:var(--text);outline:none;transition:border-color .15s;font-family:inherit}.cm-captcha-input:focus{border-color:var(--link)}.cm-captcha-input::placeholder{color:var(--text-dimmed)}.cm-submit-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 16px;background:var(--link);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:500;cursor:pointer;flex-shrink:0;transition:opacity .15s,transform .1s;line-height:1.4}.cm-submit-btn:hover{opacity:.88}.cm-submit-btn:active{transform:scale(.97)}.cm-submit-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.cm-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-top:2px;border:2px solid var(--border)}.cm-avatar-sm{width:26px;height:26px;border-radius:50%;flex-shrink:0;object-fit:cover;margin-top:1px;border:1.5px solid var(--border)}.cm-list{display:flex;flex-direction:column;gap:0}.cm-item{display:flex;gap:12px;padding:18px 0;border-bottom:1px solid var(--border)}.cm-item:last-child{border-bottom:none}.cm-body{flex:1;min-width:0}.cm-meta{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.cm-author{font-size:.875rem;font-weight:600;color:var(--text)}.cm-time{font-size:.73rem;color:var(--text-dimmed)}.cm-content{font-size:.875rem;color:var(--text);line-height:1.72;margin-bottom:10px;word-break:break-word}.cm-content .cm-mention{color:var(--link);font-weight:500;background:#6366f114;padding:0 3px;border-radius:4px}html.dark .cm-content .cm-mention{background:#a78bfa1f}.at-link{display:inline-flex;align-items:center;gap:4px;margin:0 2px;padding:2px 8px 2px 4px;background:#e7f5ff;border-radius:999px;color:#1677ff;text-decoration:none;font-size:.9em;line-height:1;transition:background .2s;font-weight:500}.at-link:hover{background:#bae7ff}.at-link-avatar{width:16px;height:16px;border-radius:50%;object-fit:cover;flex-shrink:0}html.dark .at-link{background:#1677ff26;color:#69b1ff}html.dark .at-link:hover{background:#1677ff40}.cm-content .cm-icode{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82em;padding:1px 5px;border-radius:4px;background:var(--bg-muted);border:1px solid var(--border);color:var(--text)}.cm-content .cm-link{color:var(--link);text-decoration:underline;text-underline-offset:2px}.cm-content .cm-link:hover{opacity:.8}.cm-actions{display:flex;gap:8px;margin-bottom:0}.cm-like-btn,.cm-reply-btn{font-size:.75rem;color:var(--text-muted);padding:3px 8px;border-radius:6px;border:none;background:transparent;transition:background .12s,color .12s;cursor:pointer;display:inline-flex;align-items:center;gap:3px}.cm-like-btn:hover,.cm-reply-btn:hover{background:var(--bg-muted);color:var(--text)}.cm-main-bubble{position:relative;flex:1;min-width:0;padding:10px 14px 9px;border-radius:10px;border:1px solid var(--border);background:var(--bg);margin-bottom:0}.cm-main-bubble:before{content:"";position:absolute;left:-7px;top:14px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:7px solid var(--border)}.cm-main-bubble:after{content:"";position:absolute;left:-5px;top:14px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:7px solid var(--bg)}.cm-main-bubble.bubble-owner{background:#f0fdf4;border-color:#bbf7d0}.cm-main-bubble.bubble-owner:after{border-right-color:#f0fdf4}.cm-main-bubble.bubble-owner:before{border-right-color:#bbf7d0}html.dark .cm-main-bubble.bubble-owner{background:#052e16;border-color:#166534}html.dark .cm-main-bubble.bubble-owner:after{border-right-color:#052e16}html.dark .cm-main-bubble.bubble-owner:before{border-right-color:#166534}.cm-main-bubble .cm-meta{margin-bottom:5px}.cm-main-bubble .cm-content{margin-bottom:0}.cm-replies{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding-left:48px}.cm-reply{display:flex;gap:10px;align-items:flex-start}.cm-reply-bubble{position:relative;flex:1;min-width:0;padding:8px 12px 7px;border-radius:8px;border:1px solid var(--cm-bubble-border, var(--border));background:var(--cm-bubble-bg, var(--bg))}.cm-reply-bubble:before{content:"";position:absolute;left:-7px;top:10px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:7px solid var(--cm-bubble-border, var(--border))}.cm-reply-bubble:after{content:"";position:absolute;left:-5px;top:10px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:7px solid var(--cm-bubble-bg, var(--bg))}.cm-reply.reply-ai .cm-reply-bubble:after{border-right-color:#f5f3ff}html.dark .cm-reply.reply-ai .cm-reply-bubble:after{border-right-color:#2e1065}.cm-reply.reply-owner .cm-reply-bubble{--cm-bubble-bg: #eff6ff;--cm-bubble-border: #bfdbfe}.cm-reply.reply-ai .cm-reply-bubble{--cm-bubble-bg: #f5f3ff;--cm-bubble-border: #ddd6fe;background:linear-gradient(135deg,#f5f3ff,#ede9fe)}html.dark .cm-reply.reply-owner .cm-reply-bubble{--cm-bubble-bg: #1e3a5f;--cm-bubble-border: #1d4ed8}html.dark .cm-reply.reply-ai .cm-reply-bubble{--cm-bubble-bg: #2e1065;--cm-bubble-border: #6d28d9;background:linear-gradient(135deg,#2e1065,#3b0764)}.cm-reply .cm-meta{margin-bottom:3px}.cm-reply .cm-content{margin-bottom:0;font-size:.83rem;color:var(--text-muted);line-height:1.65}.cm-reply.reply-owner .cm-author{color:#2563eb}.cm-reply.reply-ai .cm-author{color:#7c3aed}html.dark .cm-reply.reply-owner .cm-author{color:#93c5fd}html.dark .cm-reply.reply-ai .cm-author{color:#c4b5fd}.cm-badge{display:inline-flex;align-items:center;gap:3px;font-size:.68rem;font-weight:600;padding:1px 6px;border-radius:4px;line-height:1.6}.cm-badge-owner{background:#eff6ff;color:#2563eb}.cm-badge-verified{background:#f0fdf4;color:#16a34a}.cm-badge-ai{background:#f5f3ff;color:#7c3aed}html.dark .cm-badge-owner{background:#1e3a5f;color:#93c5fd}html.dark .cm-badge-verified{background:#052e16;color:#4ade80}html.dark .cm-badge-ai{background:#2e1065;color:#c4b5fd}.cm-ai-disclaimer{margin-top:6px;font-size:.73rem;font-style:italic;color:#9ca3af;line-height:1.5}html.dark .cm-ai-disclaimer{color:#6b7280}.cm-expand-wrap{position:relative}.cm-expand-wrap.cm-collapsed .cm-expand-inner{max-height:4.5em;overflow:hidden;position:relative}.cm-expand-wrap.cm-collapsed .cm-expand-inner:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2.5em;pointer-events:none;background:linear-gradient(to bottom,transparent,var(--bg))}.cm-main-bubble .cm-expand-wrap.cm-collapsed .cm-expand-inner:after{background:linear-gradient(to bottom,transparent,var(--cm-bubble-bg, var(--bg-muted)))}html.dark .cm-main-bubble .cm-expand-wrap.cm-collapsed .cm-expand-inner:after{background:linear-gradient(to bottom,transparent,var(--cm-bubble-bg, #1f1f1f))}.cm-main-bubble.bubble-owner .cm-expand-wrap.cm-collapsed .cm-expand-inner:after{background:linear-gradient(to bottom,transparent,#f0fdf4)}html.dark .cm-main-bubble.bubble-owner .cm-expand-wrap.cm-collapsed .cm-expand-inner:after{background:linear-gradient(to bottom,transparent,#052e16)}.cm-reply-bubble .cm-expand-wrap.cm-collapsed .cm-expand-inner:after{background:linear-gradient(to bottom,transparent,var(--cm-bubble-bg, #f8fafc))}html.dark .cm-reply-bubble .cm-expand-wrap.cm-collapsed .cm-expand-inner:after{background:linear-gradient(to bottom,transparent,var(--cm-bubble-bg, #1a1a2e))}.cm-expand-btn{display:inline-flex;align-items:center;gap:3px;margin:5px 0 0;padding:0;background:none;border:none;border-bottom:1px dashed var(--text-dimmed);cursor:pointer;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.78rem;font-weight:500;color:var(--text-muted);line-height:1.5;letter-spacing:.01em;transition:color .15s,border-color .15s}.cm-expand-btn svg{flex-shrink:0;transition:transform .2s}.cm-expand-btn:hover{color:var(--link);border-bottom-color:var(--link)}.cm-expand-btn:hover svg{transform:translateY(2px)}.cm-loading{display:flex;align-items:center;gap:6px;padding:20px 0;color:var(--text-muted);font-size:.875rem}.cm-at-dropdown{position:absolute;z-index:9999;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f;min-width:200px;overflow:hidden;animation:cm-at-fadein .12s ease}html.dark .cm-at-dropdown{box-shadow:0 8px 24px #0006,0 2px 6px #0003}@keyframes cm-at-fadein{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cm-at-dropdown-header{padding:7px 12px 5px;font-size:.7rem;font-weight:600;letter-spacing:.05em;color:var(--text-dimmed);text-transform:uppercase;border-bottom:1px solid var(--border)}.cm-at-list{max-height:132px;overflow-y:auto;overscroll-behavior:contain}.cm-at-list::-webkit-scrollbar{width:4px}.cm-at-list::-webkit-scrollbar-track{background:transparent}.cm-at-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.cm-at-item{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background .1s}.cm-at-item:hover,.cm-at-item.active{background:var(--bg-muted)}.cm-at-item:last-child{border-radius:0 0 10px 10px}.cm-at-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1.5px solid var(--border)}.cm-at-info{flex:1;min-width:0}.cm-at-name{font-size:.84rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cm-at-desc{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#nd-toc{grid-area:toc;position:sticky;top:0;height:100vh;padding:calc(var(--header-h) + 24px) 16px 24px;overflow-y:auto;border-left:1px solid var(--border)}.toc-title{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px;padding:0 4px}.toc-list{display:flex;flex-direction:column;gap:1px}.toc-item{position:relative;border-left:2px solid transparent;transition:border-color .15s}.toc-item.active{border-left-color:var(--toc-active)}.toc-item a{display:block;padding:4px 8px;border-radius:5px;font-size:.8rem;color:var(--text-muted);transition:color .12s,background .12s}.toc-item a:hover{color:var(--text);background:var(--bg-hover)}.toc-item.active a{color:var(--toc-active);font-weight:500}.toc-item.h3{margin-left:12px}.toc-item.h3 a{font-size:.77rem}.toc-item.toc-comments{margin-top:4px}.toc-item.toc-comments a{color:var(--link);font-weight:500}.toc-item.toc-comments a:hover{color:var(--link);opacity:.8}.toc-item.toc-comments.active a{color:var(--link)}.toc-comments-icon{margin-right:5px;font-size:.85em;opacity:.9}.toc-h3-child{overflow:hidden;animation:toc-slide-in .18s ease}@keyframes toc-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}#reading-progress{position:fixed;top:2px;left:0;width:0%;height:2px;background:linear-gradient(90deg,#6366f1,#8b5cf6,#a78bfa);z-index:9999;pointer-events:none;transition:width .1s linear,opacity .4s;border-radius:0 2px 2px 0;box-shadow:0 0 6px #6366f180}@media(max-width:1200px){:root{--toc-w: 0px}#nd-toc{display:none}#nd-layout{grid-template-columns:1fr var(--sidebar-w) minmax(0,var(--content-max)) 0 1fr;grid-template-areas:". sidebar main . ."}}#nav-fab,#toc-fab{display:none;position:fixed;top:50%;transform:translateY(-50%);z-index:60;flex-direction:column;align-items:center;gap:5px;padding:14px 7px;border:none;cursor:pointer;font-size:.68rem;font-weight:600;letter-spacing:.04em;border-radius:12px;writing-mode:vertical-rl;transition:opacity .2s,transform .2s}#nav-fab:active,#toc-fab:active{opacity:.7;transform:translateY(-50%) scale(.95)}#nav-fab{left:0;border-radius:0 10px 10px 0;background:var(--bg);color:var(--text);border-right:1px solid var(--border)!important;border-top:1px solid var(--border)!important;border-bottom:1px solid var(--border)!important;box-shadow:2px 0 12px #00000014}html.dark #nav-fab{box-shadow:2px 0 12px #00000059}#toc-fab{right:0;border-radius:10px 0 0 10px;background:var(--primary);color:#fff;box-shadow:-2px 0 12px #00000026}html.dark #toc-fab{background:#27272a;color:#e4e4e7;box-shadow:-2px 0 12px #0006}#nav-fab svg,#toc-fab svg{writing-mode:horizontal-tb;margin-bottom:2px}#fab-bar{display:none}@media(max-width:768px){:root{--sidebar-w: 0px}#nd-sidebar{display:none}#nd-topbar{display:flex!important}#nd-layout{grid-template-columns:1fr;grid-template-areas:"main"}#nd-main{padding:calc(var(--header-h) + 24px) 20px 80px}#nav-fab,#toc-fab{display:flex!important}}#drawer-mask{display:none;position:fixed;inset:0;z-index:70;background:#0006;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}#drawer-mask.open{display:block}#toc-drawer{position:fixed;left:0;bottom:0;right:0;z-index:80;max-height:70dvh;border-radius:16px 16px 0 0;background:var(--bg);border-top:1px solid var(--border);overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0);transform:translateY(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);will-change:transform}#toc-drawer.open{transform:translateY(0)}#nav-drawer{position:fixed;left:0;top:0;bottom:0;z-index:80;width:min(80vw,300px);background:var(--bg);border-right:1px solid var(--border);overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0);transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);will-change:transform}#nav-drawer.open{transform:translate(0)}.toc-drawer-handle{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 10px;border-bottom:1px solid var(--border);flex-shrink:0;position:sticky;top:0;background:var(--bg);z-index:1}.toc-drawer-handle span{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.toc-drawer-handle button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:var(--text-muted);transition:background .12s}.toc-drawer-handle button:hover{background:var(--bg-hover)}#toc-drawer .toc-list{padding:8px 12px 16px}#toc-drawer .toc-item a{padding:8px 10px;font-size:.9rem}#toc-drawer .toc-item.h3{margin-left:14px}#toc-drawer .toc-item.h3 a{padding-left:10px}.nav-drawer-search{padding:8px 10px 4px}.nav-drawer-search .sb-search-btn{width:100%;padding:8px 12px;font-size:.88rem;display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-muted);color:var(--text-muted);cursor:pointer;transition:border-color .15s,background .15s}.nav-drawer-search .sb-search-btn:hover{background:var(--bg-hover);border-color:var(--text-dimmed)}#nav-drawer-body .sb-item{padding:10px 12px;font-size:.9rem}#nav-drawer-body .sb-section-title{padding:16px 10px 6px}.tabs-wrap{margin:18px 0 22px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.tabs-header{display:flex;overflow-x:auto;scrollbar-width:none;background:var(--bg-muted);border-bottom:1px solid var(--border);padding:0 4px;gap:2px}.tabs-header::-webkit-scrollbar{display:none}.tabs-tab{padding:8px 16px;font-size:.83rem;font-weight:500;color:var(--text-muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s;flex-shrink:0;cursor:pointer}.tabs-tab:hover{color:var(--text)}.tabs-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tabs-body{padding:4px 0}.tabs-panel{display:none;padding:16px 20px}.tabs-panel.active{display:block}.tabs-panel>:first-child{margin-top:0!important}.tabs-panel>:last-child{margin-bottom:0!important}.fn-ref{font-size:.75em;vertical-align:super;line-height:0;margin:0 1px}.fn-ref a{color:var(--primary);text-decoration:none;padding:0 1px;border-radius:3px;transition:background .12s}.fn-ref a:hover{background:var(--bg-hover)}.footnotes{margin-top:40px}.fn-sep{border:none;border-top:1px solid var(--border);margin-bottom:16px}.fn-list{list-style:none;padding:0;margin:0;font-size:.83rem;color:var(--text-muted);line-height:1.65}.fn-item{display:flex;align-items:baseline;gap:8px;padding:4px 0;border-bottom:1px solid transparent;transition:border-color .12s;list-style:none}.fn-item::marker{content:""}.fn-item:before{display:none!important;content:none!important}.fn-item:hover{border-bottom-color:var(--border)}.fn-item:target{background:var(--bg-hover);border-radius:4px;padding:4px 6px}.fn-num{min-width:1.4em;font-weight:600;color:var(--primary);font-size:.78rem;flex-shrink:0}.fn-body{flex:1}.fn-body a{color:var(--primary)}.fn-backref{color:var(--text-muted);text-decoration:none;font-size:.85em;flex-shrink:0;opacity:.6;transition:opacity .12s}.fn-backref:hover{opacity:1}.math-block{margin:18px 0;overflow-x:auto;text-align:center;padding:12px 16px;background:var(--bg-muted);border-radius:var(--radius);border:1px solid var(--border)}.math-block .katex-display{margin:0}.katex{font-size:1em!important}.math-error{color:#ef4444}.math-block.math-error code,.math-inline.math-error{font-size:.85em}.highlighted{cursor:help;background:#f59e0b21;border-radius:3px;padding:0 2px;text-decoration:underline;text-decoration-style:wavy;text-decoration-color:#f59e0b;text-decoration-thickness:1.5px;text-underline-offset:3px;transition:background .15s}.highlighted:hover{background:#f59e0b42}html.dark .highlighted{background:#fbbf2424;text-decoration-color:#fbbf24}html.dark .highlighted:hover{background:#fbbf2447}#wiki-tooltip{position:fixed;z-index:99999;width:272px;pointer-events:none;background:#ffffffe0;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(0,0,0,.08);border-radius:10px;box-shadow:0 0 0 1px #0000000a,0 8px 24px #0000001f,0 2px 6px #0000000f;padding:12px 14px 10px;opacity:0;transform:translateY(4px) scale(.97);transition:opacity .16s ease,transform .16s ease;white-space:normal;word-break:break-word}html.dark #wiki-tooltip{background:#29230fd1;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-color:#f59e0b40;box-shadow:0 0 0 1px #f59e0b1f,0 8px 28px #00000073,0 2px 8px #00000040}#wiki-tooltip.visible{opacity:1;transform:translateY(0) scale(1)}.wt-term{font-size:.84rem;font-weight:700;color:#1a1a2e;margin-bottom:5px;line-height:1.3;letter-spacing:.01em}html.dark .wt-term{color:#fde68a}.wt-desc{font-size:.81rem;color:#555e72;line-height:1.6;margin-bottom:8px}html.dark .wt-desc{color:#d6c89a}.wt-footer{display:flex;align-items:center;border-top:1px solid rgba(0,0,0,.07);padding-top:7px;margin-top:2px}html.dark .wt-footer{border-top-color:#f59e0b2e}.wt-badge{font-size:.72rem;font-weight:500;letter-spacing:.03em;color:#f59e0b;display:flex;align-items:center;gap:4px;flex-shrink:0}.wt-disclaimer{font-size:.68rem;color:#aaa;line-height:1.4;margin-top:5px}html.dark .wt-disclaimer{color:#a08c5a}#at-tooltip{position:fixed;z-index:99999;width:240px;pointer-events:auto;cursor:default;background:#ffffffeb;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(0,0,0,.08);border-radius:12px;box-shadow:0 8px 24px #00000021,0 2px 6px #00000012;padding:14px;opacity:0;transform:translateY(4px) scale(.97);transition:opacity .16s ease,transform .16s ease}html.dark #at-tooltip{background:#0a192fd1;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-color:#3b82f640;box-shadow:0 0 0 1px #3b82f61a,0 8px 28px #00000073,0 2px 8px #00000040}#at-tooltip.visible{opacity:1;transform:translateY(0) scale(1)}.at-tip-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.at-tip-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}.at-tip-info{flex:1;min-width:0}.at-tip-name{font-size:.92rem;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html.dark .at-tip-name{color:#bae6fd}.at-tip-tag{font-size:.72rem;color:#888;margin-top:2px}html.dark .at-tip-tag{color:#64a0c8}.at-tip-intro{font-size:.78rem;color:#6b7280;line-height:1.55;margin-top:6px;font-style:italic}html.dark .at-tip-intro{color:#7cb8d8}.at-tip-btn{width:100%;padding:7px 0;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;font-size:.82rem;cursor:pointer;transition:border-color .15s,background .15s}.at-tip-btn:hover{border-color:#d1d5db;background:#f9fafb}.article-edit-bar{display:flex;align-items:center;gap:8px;padding:4px 0 8px}#online-avatar-container .avatar-stack{display:flex;align-items:center}.am-edit-btn{vertical-align:middle;line-height:1.4}.am-print-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;font-size:.78rem;font-weight:500;margin-left:0;border-radius:6px;border:1px solid var(--border);background:var(--bg-muted);color:var(--text-muted);cursor:pointer;vertical-align:middle;line-height:1.6;transition:background .12s,color .12s,border-color .12s}.am-print-btn:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}html.dark .am-print-btn:hover{background:#2563eb1f;color:#93c5fd;border-color:#93c5fd4d}.fe-edit-btn{padding:5px 16px;border-radius:6px;border:1px solid #d1fae5;background:#f0fdf4;color:#28a745;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;line-height:1.6}.fe-edit-btn:hover{background:#d1fae5;border-color:#28a745}.fe-edit-btn:disabled{opacity:.6;cursor:not-allowed}html.dark .article-edit-bar{border-bottom-color:var(--border)}html.dark .fe-edit-btn{background:#14532d;border-color:#166534;color:#86efac}html.dark .fe-edit-btn:hover{background:#166534;border-color:#22c55e}#fe-editor-wrap{width:100%}#fe-editor-wrap .editormd{border:1px solid var(--border);border-radius:6px;overflow:hidden}.remote-caret{position:absolute;border-left-style:solid;border-left-width:2px;height:1.2em;margin-top:3px}.remote-caret>div{position:relative;top:-1.3em;font-size:12px;font-family:sans-serif;font-style:normal;font-weight:400;line-height:normal;user-select:none;color:#fff;padding:1px 4px;border-radius:3px 3px 3px 0;white-space:nowrap;z-index:3}.ver-btn{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:4px;font-size:.72rem;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-decoration:none;white-space:nowrap;border:1px solid;line-height:1.5;transition:background .12s,color .12s,border-color .12s;vertical-align:middle}.ver-btn+.ver-btn{margin-left:4px}.ver-btn svg{flex-shrink:0;display:block}.ver-btn--old{color:#64748b;background:#f1f5f9;border-color:#cbd5e1}.ver-btn--old:hover{background:#e2e8f0;color:#334155;border-color:#94a3b8}html.dark .ver-btn--old{color:#94a3b8;background:#1e293b;border-color:#334155}html.dark .ver-btn--old:hover{background:#273345;color:#e2e8f0;border-color:#475569}.ver-btn--diff{color:#7c3aed;background:#f5f3ff;border-color:#c4b5fd}.ver-btn--diff:hover{background:#ede9fe;border-color:#7c3aed}html.dark .ver-btn--diff{color:#a78bfa;background:#1e0a3c;border-color:#4c1d95}html.dark .ver-btn--diff:hover{background:#2d1566;border-color:#7c3aed}.ver-btn--latest{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.ver-btn--latest:hover{background:#dbeafe;border-color:#2563eb}html.dark .ver-btn--latest{color:#60a5fa;background:#0c1a2e;border-color:#1e3a5f}html.dark .ver-btn--latest:hover{background:#1e3a5f;border-color:#3b82f6}.outdated-banner{display:flex;align-items:flex-start;gap:10px;margin:0 0 20px;padding:12px 16px;border-radius:var(--radius, 8px);border:1px solid #fcd34d;background:linear-gradient(135deg,#fffbeb,#fef9e7);color:#92400e;font-size:.85rem;line-height:1.6}html.dark .outdated-banner{border-color:#92400e;background:linear-gradient(135deg,#1c1200,#211500);color:#fcd34d}.outdated-banner-icon{display:flex;align-items:center;flex-shrink:0;margin-top:1px;color:#d97706}html.dark .outdated-banner-icon{color:#fbbf24}.outdated-banner-text{flex:1}.outdated-banner-text strong{font-weight:600}.diff-view{font-size:.82rem;line-height:1.6;border:1px solid var(--border, #e2e8f0);border-radius:8px;overflow:hidden;margin:0 0 24px}.diff-toolbar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-alt, #f8fafc);border-bottom:1px solid var(--border, #e2e8f0)}html.dark .diff-toolbar{background:#1a1f2e}.diff-toolbar-title{font-size:.75rem;font-weight:600;color:var(--text-muted, #64748b);letter-spacing:.03em;margin-left:auto}.diff-back-btn{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:500;color:var(--accent, #3b82f6);text-decoration:none;padding:3px 8px;border-radius:5px;border:1px solid color-mix(in srgb,var(--accent, #3b82f6) 30%,transparent);transition:background .15s,color .15s}.diff-back-btn:hover{background:color-mix(in srgb,var(--accent, #3b82f6) 10%,transparent)}.diff-header{display:grid;grid-template-columns:1fr 1fr;background:var(--bg-alt, #f8fafc);border-bottom:1px solid var(--border, #e2e8f0);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted, #64748b)}html.dark .diff-header{background:#1a1f2e}.diff-header-old,.diff-header-new{padding:6px 12px}.diff-header-old{border-right:1px solid var(--border, #e2e8f0);color:#dc2626}html.dark .diff-header-old{color:#f87171}.diff-header-new{color:#16a34a}html.dark .diff-header-new{color:#4ade80}.diff-table-wrap{overflow-x:auto}.diff-table{width:100%;border-collapse:collapse;table-layout:fixed}.diff-table td{vertical-align:top;padding:0}.diff-lno{display:none}.diff-code{padding:6px 12px;width:50%;font-size:.85rem;line-height:1.7;word-break:break-word;vertical-align:top}.diff-table tr td:first-child{border-right:2px solid var(--border, #e2e8f0)}.diff-same .diff-code{background:transparent}.diff-del .diff-code-del{background:#fef2f2;border-left:3px solid #f87171}html.dark .diff-del .diff-code-del{background:#2d0a0a;border-left-color:#dc2626}.diff-add .diff-code-add{background:#f0fdf4;border-left:3px solid #4ade80}html.dark .diff-add .diff-code-add{background:#052e16;border-left-color:#16a34a}.diff-code-empty{background:repeating-linear-gradient(135deg,transparent,transparent 4px,rgba(0,0,0,.03) 4px,rgba(0,0,0,.03) 8px)}html.dark .diff-code-empty{background:repeating-linear-gradient(135deg,transparent,transparent 4px,rgba(255,255,255,.03) 4px,rgba(255,255,255,.03) 8px)}.diff-code p{margin:0 0 4px}.diff-code h1,.diff-code h2,.diff-code h3,.diff-code h4,.diff-code h5,.diff-code h6{margin:4px 0;font-size:1em}.diff-code ul,.diff-code ol{margin:0;padding-left:1.4em}.diff-code img{max-width:100%;height:auto}.diff-code pre,.diff-code code{font-size:.8em;white-space:pre-wrap}#search-modal-overlay{position:fixed;inset:0;z-index:500;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;opacity:0;pointer-events:none;transition:opacity .18s}#search-modal-overlay.open{opacity:1;pointer-events:auto}#search-modal-box{width:min(92vw,580px);background:var(--bg);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 72px #00000038,0 4px 16px #0000001a;display:flex;flex-direction:column;overflow:hidden;transform:translateY(-12px) scale(.97);transition:transform .18s cubic-bezier(.4,0,.2,1);max-height:70dvh}#search-modal-overlay.open #search-modal-box{transform:translateY(0) scale(1)}#search-input-row{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}#search-input-row svg{flex-shrink:0;color:var(--text-dimmed)}#search-input{flex:1;background:transparent;border:none;outline:none;font-size:.95rem;color:var(--text);font-family:inherit;caret-color:var(--link)}#search-input::placeholder{color:var(--text-dimmed)}#search-clear-btn{display:none;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--bg-muted);color:var(--text-muted);font-size:13px;flex-shrink:0;transition:background .12s,color .12s}#search-clear-btn:hover{background:var(--bg-hover);color:var(--text)}#search-clear-btn.visible{display:flex}#search-results-wrap{overflow-y:auto;flex:1;overscroll-behavior:contain}#search-results-wrap:empty{display:none}.search-results-list{padding:6px 8px 10px;display:flex;flex-direction:column;gap:2px}.search-result-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;cursor:pointer;text-decoration:none;color:var(--text);transition:background .1s;font-size:.88rem}.search-result-item:hover,.search-result-item.active{background:var(--bg-muted)}.search-result-icon{flex-shrink:0;color:var(--text-dimmed);display:flex;align-items:center}.search-result-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-title mark{background:transparent;color:var(--link);font-weight:600}.search-result-arrow{flex-shrink:0;color:var(--text-dimmed);opacity:.5;display:flex;align-items:center;transition:opacity .12s}.search-result-item:hover .search-result-arrow,.search-result-item.active .search-result-arrow{opacity:1}.search-status{padding:28px 16px;text-align:center;color:var(--text-dimmed);font-size:.85rem;display:flex;flex-direction:column;align-items:center;gap:8px}.search-status svg{opacity:.4}#search-footer{display:flex;align-items:center;gap:14px;padding:8px 16px;border-top:1px solid var(--border);flex-shrink:0;background:var(--bg-muted)}.search-hint{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;color:var(--text-dimmed)}.search-hint kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 5px;border-radius:4px;border:1px solid var(--border);background:var(--bg);font-size:.68rem;font-family:inherit;color:var(--text-muted);min-width:20px}@keyframes search-spin{to{transform:rotate(360deg)}}.search-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--link);border-radius:50%;animation:search-spin .7s linear infinite;flex-shrink:0}.crypto-approve-wrap{margin:32px auto;max-width:560px;border-radius:16px;border:1px solid #c4b5fd;background:var(--bg);overflow:hidden;box-shadow:0 4px 24px #6366f11a,0 1px 4px #0000000f}html.dark .crypto-approve-wrap{border-color:#5b21b6;box-shadow:0 4px 24px #6366f12e,0 1px 4px #0000004d}.crypto-approve-header{display:flex;align-items:center;gap:12px;padding:18px 22px 16px;background:linear-gradient(135deg,#ede9fe,#f5f3ff);border-bottom:1px solid #ddd6fe}html.dark .crypto-approve-header{background:linear-gradient(135deg,#2e1065,#1e1033);border-bottom-color:#4c1d95}.crypto-approve-header-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;flex-shrink:0;box-shadow:0 2px 8px #7c3aed59}.crypto-approve-header-text{flex:1;min-width:0}.crypto-approve-title{font-size:.95rem;font-weight:700;color:#4c1d95;line-height:1.3;margin-bottom:3px;display:flex;align-items:center;gap:6px}html.dark .crypto-approve-title{color:#c4b5fd}.crypto-approve-subtitle{font-size:.78rem;color:#7c3aed;opacity:.8}html.dark .crypto-approve-subtitle{color:#a78bfa}.crypto-client-id-section{margin:18px 22px 0;padding:14px 16px;background:var(--bg-muted);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;gap:12px}.crypto-client-id-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#6366f1;flex-shrink:0}html.dark .crypto-client-id-icon{background:linear-gradient(135deg,#1e3a5f,#2e1065);color:#a78bfa}.crypto-client-id-body{flex:1;min-width:0}.crypto-client-id-label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.crypto-client-id-value{font-size:.88rem;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#6366f1;word-break:break-all;line-height:1.4;display:flex;align-items:center;gap:6px}html.dark .crypto-client-id-value{color:#a78bfa}.crypto-client-id-loading{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-dimmed);font-weight:400;font-family:inherit}.crypto-id-copy-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:var(--bg);border:1px solid var(--border);color:var(--text-muted);flex-shrink:0;transition:background .12s,color .12s,border-color .12s}.crypto-id-copy-btn:hover{background:var(--bg-hover);color:var(--link);border-color:var(--link)}.crypto-id-copy-btn.copied{color:#22c55e;border-color:#22c55e}.crypto-approve-divider{display:flex;align-items:center;gap:10px;margin:18px 22px 0;font-size:.75rem;color:var(--text-dimmed)}.crypto-approve-divider:before,.crypto-approve-divider:after{content:"";flex:1;height:1px;background:var(--border)}.crypto-approve-warn{display:flex;align-items:center;gap:7px;margin:10px 22px 0;padding:8px 12px;border-radius:8px;background:#eab3081a;border:1px solid rgba(234,179,8,.35);color:#b45309;font-size:.78rem;line-height:1.5}.crypto-approve-warn svg{flex-shrink:0;color:#d97706}@media(prefers-color-scheme:dark){.crypto-approve-warn{background:#eab30814;border-color:#eab30840;color:#fbbf24}.crypto-approve-warn svg{color:#fbbf24}}.crypto-approve-body{padding:14px 22px 22px}.crypto-approve-field{position:relative}.crypto-approve-field-label{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;color:var(--text-muted);margin-bottom:8px}.crypto-approve-field-label svg{flex-shrink:0;opacity:.7}.crypto-approve-textarea{width:100%;box-sizing:border-box;min-height:100px;resize:vertical;background:var(--bg-muted);border:1.5px solid var(--border);border-radius:10px;padding:12px 14px;font-size:.875rem;color:var(--text);font-family:inherit;line-height:1.65;outline:none;transition:border-color .15s,box-shadow .15s}.crypto-approve-textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f;background:var(--bg)}.crypto-approve-textarea::placeholder{color:var(--text-dimmed)}.crypto-approve-footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:10px}.crypto-approve-tips{font-size:.75rem;color:var(--text-dimmed);display:flex;align-items:center;gap:5px;flex:1}.crypto-approve-tips svg{flex-shrink:0;opacity:.6}.crypto-approve-submit{display:inline-flex;align-items:center;gap:7px;padding:9px 20px;border-radius:9px;background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;font-size:.875rem;font-weight:600;border:none;cursor:pointer;flex-shrink:0;box-shadow:0 2px 8px #7c3aed4d;transition:opacity .15s,transform .1s,box-shadow .15s;line-height:1.4}.crypto-approve-submit:hover{opacity:.9;box-shadow:0 4px 14px #7c3aed66}.crypto-approve-submit:active{transform:scale(.97)}.crypto-approve-submit:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.crypto-approve-success{margin:18px 22px 22px;display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#166534;font-size:.875rem;line-height:1.65}html.dark .crypto-approve-success{background:#052e16;border-color:#166534;color:#86efac}.crypto-approve-success-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#dcfce7;flex-shrink:0;color:#16a34a}html.dark .crypto-approve-success-icon{background:#14532d;color:#4ade80}.crypto-approve-success-body strong{font-weight:600;display:block;margin-bottom:3px}@keyframes crypto-pulse{0%,to{opacity:1}50%{opacity:.45}}.crypto-id-skeleton{display:inline-block;width:200px;height:14px;border-radius:4px;background:var(--border);animation:crypto-pulse 1.4s ease-in-out infinite;vertical-align:middle}.crypto-approve-loading{display:flex;align-items:center;gap:10px;padding:24px 22px;color:var(--text-dimmed);font-size:.875rem}.crypto-approve-state{width:100%}.crypto-status-card{display:flex;align-items:flex-start;gap:14px;margin:18px 22px 22px;padding:16px 18px;border-radius:10px;font-size:.875rem;line-height:1.7}.crypto-status-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%}.crypto-status-title{font-weight:600;font-size:.95rem;margin-bottom:4px}.crypto-status-desc{color:inherit;opacity:.85}.crypto-status-expired{background:#eab30814;border:1px solid rgba(234,179,8,.3);color:#92400e}.crypto-status-expired .crypto-status-icon{background:#eab30826;color:#d97706}html.dark .crypto-status-expired{background:#eab30812;border-color:#eab30838;color:#fcd34d}html.dark .crypto-status-expired .crypto-status-icon{background:#eab3081f;color:#fbbf24}.crypto-status-pending{background:#3b82f612;border:1px solid rgba(59,130,246,.25);color:#1e3a5f}.crypto-status-pending .crypto-status-icon{background:#3b82f621;color:#2563eb}html.dark .crypto-status-pending{background:#3b82f614;border-color:#3b82f638;color:#93c5fd}html.dark .crypto-status-pending .crypto-status-icon{background:#3b82f61f;color:#60a5fa}.crypto-status-rejected{background:#ef444412;border:1px solid rgba(239,68,68,.25);color:#7f1d1d}.crypto-status-rejected .crypto-status-icon{background:#ef444421;color:#dc2626}html.dark .crypto-status-rejected{background:#ef444412;border-color:#ef444438;color:#fca5a5}html.dark .crypto-status-rejected .crypto-status-icon{background:#ef44441f;color:#f87171}#crypto-countdown{font-weight:700;font-variant-numeric:tabular-nums}.crypto-remain-bar{margin:0 0 18px;border-radius:10px;background:#3b82f612;border:1px solid rgba(59,130,246,.25);transition:background .3s,border-color .3s}.crypto-remain-bar-inner{display:flex;align-items:center;gap:8px;padding:10px 14px;color:#1e3a5f;font-size:.85rem;line-height:1.5}.crypto-remain-icon{flex-shrink:0;color:#2563eb;display:flex}.crypto-remain-bar strong{font-variant-numeric:tabular-nums;color:#2563eb}.crypto-remain-bar.crypto-remain-urgent{background:#ef444412;border-color:#ef44444d}.crypto-remain-bar.crypto-remain-urgent .crypto-remain-bar-inner{color:#7f1d1d}.crypto-remain-bar.crypto-remain-urgent .crypto-remain-icon,.crypto-remain-bar.crypto-remain-urgent strong{color:#dc2626}html.dark .crypto-remain-bar{background:#3b82f614;border-color:#3b82f638}html.dark .crypto-remain-bar-inner{color:#93c5fd}html.dark .crypto-remain-bar .crypto-remain-icon,html.dark .crypto-remain-bar strong{color:#60a5fa}html.dark .crypto-remain-bar.crypto-remain-urgent{background:#ef444412;border-color:#ef444440}html.dark .crypto-remain-bar.crypto-remain-urgent .crypto-remain-bar-inner{color:#fca5a5}html.dark .crypto-remain-bar.crypto-remain-urgent .crypto-remain-icon,html.dark .crypto-remain-bar.crypto-remain-urgent strong{color:#f87171}#back-to-top{position:fixed;right:24px;bottom:32px;z-index:900;width:38px;height:38px;border-radius:50%;background:var(--bg);border:1px solid var(--border);color:var(--text-muted);box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,background .12s,color .12s,box-shadow .12s}#back-to-top svg{transform:rotate(180deg)}#back-to-top.visible{opacity:1;pointer-events:all;transform:translateY(0)}#back-to-top:hover{background:var(--bg-hover);color:var(--text);box-shadow:0 4px 16px #00000026}@media(max-width:768px){#back-to-top{right:16px;bottom:20px;width:34px;height:34px}}#ai-chara-wrap{position:fixed;right:72px;bottom:20px;z-index:9400;display:flex;flex-direction:column;align-items:flex-end;gap:0;pointer-events:none}#ai-chara-wrap>*{pointer-events:all}#ai-chara-bubble-hint{position:absolute;bottom:108px;right:8px;background:#fff;border:2px solid #93c5fd;border-radius:14px 14px 4px;padding:8px 14px;font-size:.78rem;color:#2563eb;font-weight:500;white-space:nowrap;box-shadow:0 4px 18px #3b82f62e;opacity:0;pointer-events:none;transform:translateY(6px) scale(.95);transition:opacity .22s,transform .22s;cursor:pointer}#ai-chara-bubble-hint.show{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}.ai-hint-arrow{position:absolute;bottom:-10px;right:18px;width:0;height:0;border-left:8px solid transparent;border-right:0 solid transparent;border-top:10px solid #93c5fd}html.dark #ai-chara-bubble-hint{background:#0f172a;border-color:#38bdf8;color:#7dd3fc}html.dark .ai-hint-arrow{border-top-color:#38bdf8}#ai-chara-btn{position:relative;background:none;border:none;cursor:pointer;padding:0;display:flex;flex-direction:column;align-items:center;gap:5px;transition:transform .2s;user-select:none;-webkit-tap-highlight-color:transparent}#ai-chara-btn:hover{transform:translateY(-3px)}#ai-chara-btn:hover #ai-chara-avatar{box-shadow:0 8px 24px #3b82f67a}#ai-chara-btn.active #ai-chara-avatar{box-shadow:0 4px 14px #3b82f666;transform:scale(.95)}#ai-chara-body{display:flex;flex-direction:column;align-items:center;gap:5px;animation:charaFloat 3.5s ease-in-out infinite}@keyframes charaFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}#ai-chara-wrap.speaking #ai-chara-body{animation:charaTalk .5s ease-in-out infinite alternate}@keyframes charaTalk{0%{transform:translateY(0) scale(1)}to{transform:translateY(-4px) scale(1.05)}}#ai-chara-avatar{width:52px;height:52px;background:none;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;box-shadow:none;color:#fff;transition:box-shadow .2s,transform .2s}#ai-chara-nameplate{background:linear-gradient(135deg,#3b82f6,#38bdf8);color:#fff;font-size:.63rem;font-weight:700;letter-spacing:.06em;padding:2px 9px;border-radius:20px;box-shadow:0 2px 8px #3b82f659;white-space:nowrap}#ai-chat-modal{position:fixed;right:16px;bottom:140px;z-index:9410;width:360px;max-width:calc(100vw - 24px);display:flex;flex-direction:column;opacity:0;pointer-events:none;transform:translateY(16px) scale(.96);transform-origin:bottom right;transition:opacity .22s cubic-bezier(.34,1.56,.64,1),transform .22s cubic-bezier(.34,1.56,.64,1)}#ai-chat-modal.open{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}@media(max-width:768px){#ai-chat-modal{right:6px;bottom:130px;width:calc(100vw - 12px)}}#ai-chat-box{display:flex;flex-direction:column;max-height:calc(100vh - 160px);background:var(--bg);border:2px solid #93c5fd;border-radius:18px 18px 18px 6px;box-shadow:0 8px 40px #3b82f624,0 2px 12px #38bdf81a;overflow:hidden}html.dark #ai-chat-box{border-color:#1d4ed8;box-shadow:0 8px 40px #1d4ed84d,0 2px 12px #38bdf826}#ai-chat-header{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(135deg,#93c5fd,#60a5fa 45%,#38bdf8);color:#fff;flex-shrink:0}#ai-chat-header-avatar{width:32px;height:32px;border-radius:50%;background:none;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}#ai-chat-header-info{flex:1;display:flex;flex-direction:column;gap:1px}#ai-chat-title{font-size:.85rem;font-weight:700;letter-spacing:.04em;text-shadow:0 1px 3px rgba(0,0,0,.15)}#ai-chat-subtitle{font-size:.65rem;opacity:.85;letter-spacing:.06em}#ai-chat-header-actions{display:flex;align-items:center;gap:4px}#ai-chat-header-actions button{background:#fff3;border:none;color:#fff;width:26px;height:26px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s}#ai-chat-header-actions button:hover{background:#ffffff61}#ai-chat-messages{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:12px;min-height:120px;max-height:340px;scroll-behavior:smooth;background:var(--bg)}#ai-chat-messages::-webkit-scrollbar{width:3px}#ai-chat-messages::-webkit-scrollbar-thumb{background:linear-gradient(#93c5fd,#38bdf8);border-radius:3px}.ai-chat-welcome{display:flex;flex-direction:column;align-items:center;padding:12px 8px 4px;gap:10px}.ai-chat-welcome-chara{width:56px;height:56px;background:none;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #3b82f659;color:#fff;animation:charaFloat 3.5s ease-in-out infinite}.ai-chat-welcome-bubble{background:linear-gradient(135deg,#f0f9ff,#eff6ff);border:1.5px solid #93c5fd;border-radius:4px 14px 14px;padding:10px 14px;font-size:.82rem;line-height:1.65;color:var(--text);max-width:85%;box-shadow:0 2px 8px #93c5fd33}html.dark .ai-chat-welcome-bubble{background:linear-gradient(135deg,#0c1a2e,#0f172a);border-color:#1d4ed8}.ai-chat-welcome-bubble p{margin:2px 0}.ai-chat-welcome-bubble strong{color:#2563eb}html.dark .ai-chat-welcome-bubble strong{color:#60a5fa}.ai-chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:2px}.ai-suggestion-btn{background:linear-gradient(135deg,#f0f9ff,#eff6ff);border:1.5px solid #93c5fd;border-radius:20px;padding:5px 12px;font-size:.74rem;color:#2563eb;cursor:pointer;transition:all .15s;font-weight:500}.ai-suggestion-btn:hover{background:linear-gradient(135deg,#dbeafe,#e0f2fe);border-color:#60a5fa;color:#1d4ed8;transform:translateY(-1px);box-shadow:0 3px 10px #3b82f633}html.dark .ai-suggestion-btn{background:linear-gradient(135deg,#0c1a2e,#0f172a);border-color:#1d4ed8;color:#60a5fa}html.dark .ai-suggestion-btn:hover{background:linear-gradient(135deg,#1e3a5f,#1e3a5f);border-color:#3b82f6;color:#93c5fd}.ai-msg{display:flex;flex-direction:column;gap:4px;max-width:88%;animation:aiMsgIn .2s cubic-bezier(.34,1.56,.64,1)}.ai-msg-user{align-self:flex-end}.ai-msg-ai{align-self:flex-start}@keyframes aiMsgIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-msg-row{display:flex;align-items:flex-end;gap:8px;width:100%}.ai-msg-user .ai-msg-row{flex-direction:row-reverse}.ai-msg-avatar{width:30px;height:30px;border-radius:50%;background:none;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;box-shadow:0 2px 8px #3b82f64d}.ai-msg-content{flex:1;min-width:0;font-size:.82rem;line-height:1.65}.ai-msg-user-text{background:linear-gradient(135deg,#3b82f6,#38bdf8);color:#fff;padding:8px 13px;border-radius:14px 4px 14px 14px;word-break:break-word;white-space:pre-wrap;box-shadow:0 2px 10px #3b82f647}.ai-msg-ai .ai-msg-content{background:linear-gradient(135deg,#f0f9ff,#eff6ff);border:1.5px solid #93c5fd;padding:8px 13px;border-radius:4px 14px 14px;color:var(--text);word-break:break-word;box-shadow:0 2px 8px #93c5fd2e}html.dark .ai-msg-ai .ai-msg-content{background:linear-gradient(135deg,#0c1a2e,#0f172a);border-color:#1d4ed8;box-shadow:0 2px 8px #1d4ed833}.ai-msg-ai .ai-msg-content pre{background:var(--pre-bg);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:.78rem;overflow-x:auto;margin:6px 0}.ai-msg-ai .ai-msg-content code{background:#dbeafe;color:#1d4ed8;padding:1px 5px;border-radius:4px;font-size:.8rem}html.dark .ai-msg-ai .ai-msg-content code{background:#1e3a5f;color:#93c5fd}.ai-msg-ai .ai-msg-content h2,.ai-msg-ai .ai-msg-content h3,.ai-msg-ai .ai-msg-content h4{margin:8px 0 4px;font-size:.85rem;font-weight:600;color:#2563eb}html.dark .ai-msg-ai .ai-msg-content h2,html.dark .ai-msg-ai .ai-msg-content h3,html.dark .ai-msg-ai .ai-msg-content h4{color:#60a5fa}.ai-msg-ai .ai-msg-content ul,.ai-msg-ai .ai-msg-content ol{padding-left:16px;margin:4px 0}.ai-msg-ai .ai-msg-content li{margin:2px 0}.ai-msg-ai .ai-msg-content .ai-table-wrap,.ai-msg-ai .ai-msg-content .ai-table-wrap+br{display:block}.ai-msg-ai .ai-msg-content table{display:block;overflow-x:auto;width:100%;border-collapse:collapse;font-size:.78rem;margin:8px 0;border:1px solid var(--border);border-radius:6px}.ai-table-wrap{overflow-x:auto;margin:8px 0;border-radius:6px;border:1px solid var(--border)}.ai-table,.ai-msg-ai .ai-msg-content table{width:100%;border-collapse:collapse;font-size:.78rem}.ai-table th,.ai-msg-ai .ai-msg-content table th{text-align:left;padding:6px 10px;font-weight:600;font-size:.75rem;color:var(--text-muted);background:var(--bg-muted);border-bottom:1px solid var(--border);white-space:nowrap}.ai-table td,.ai-msg-ai .ai-msg-content table td{padding:6px 10px;border-bottom:1px solid var(--border);vertical-align:top;word-break:break-word}.ai-table tbody tr:last-child td,.ai-msg-ai .ai-msg-content table tbody tr:last-child td{border-bottom:none}.ai-table tbody tr:hover td,.ai-msg-ai .ai-msg-content table tbody tr:hover td{background:var(--bg-hover, var(--bg-muted))}html.dark .ai-table th,html.dark .ai-msg-ai .ai-msg-content table th{background:#ffffff0a}html.dark .ai-table,html.dark .ai-msg-ai .ai-msg-content table{border-color:var(--border)}#ai-chara-avatar .ai-bot-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;display:block;box-shadow:0 4px 16px #3b82f666}#ai-chat-header-avatar .ai-bot-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;display:block}.ai-chat-welcome-chara .ai-bot-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block}.ai-msg-avatar .ai-bot-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;display:block}.ai-global-search-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:99px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:.72rem;cursor:pointer;transition:color .15s,background .15s,border-color .15s;white-space:nowrap;flex-shrink:0}.ai-global-search-btn:hover{color:var(--link);border-color:var(--link);background:#3b82f60f}.ai-global-search-btn.active{color:#fff;background:linear-gradient(135deg,#3b82f6,#06b6d4);border-color:transparent;box-shadow:0 2px 8px #3b82f659}.ai-global-search-btn.active:hover{opacity:.9}.ai-msg-error{color:#ef4444;font-size:.8rem}.ai-sources{margin:2px 0 0 38px}.ai-sources-list{display:flex;flex-direction:column;gap:4px}.ai-src-link{display:inline-flex;align-items:center;gap:4px;padding:3px 10px 3px 7px;border:1px solid var(--border);border-radius:20px;background:var(--bg-muted, #f1f5f9);color:var(--text-muted, #64748b);font-size:.72rem;line-height:1.5;text-decoration:none;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;max-width:100%;align-self:flex-start}a.ai-src-link:hover{background:#3b82f614;border-color:var(--link, #3b82f6);color:var(--link, #3b82f6);text-decoration:none}.ai-src-link svg{flex-shrink:0;opacity:.6}a.ai-src-link svg:last-child{opacity:.4}.ai-src-link-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.ai-src-score{padding:0 4px;border-radius:4px;background:#22c55e26;color:#16a34a;font-size:.68rem;font-weight:700;flex-shrink:0}html.dark .ai-src-link{background:#ffffff0d;border-color:#ffffff1a;color:#94a3b8}html.dark a.ai-src-link:hover{background:#3b82f626;border-color:#3b82f6;color:#93c5fd}.ai-typing-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#93c5fd,#38bdf8);margin:0 2px;animation:aiDotBlink 1.2s infinite ease-in-out}.ai-typing-dot:nth-child(2){animation-delay:.2s}.ai-typing-dot:nth-child(3){animation-delay:.4s}@keyframes aiDotBlink{0%,80%,to{opacity:.25;transform:scale(.75) translateY(0)}40%{opacity:1;transform:scale(1) translateY(-3px)}}#ai-chat-input-area{border-top:1.5px solid #93c5fd;padding:8px 10px;flex-shrink:0;background:var(--bg)}html.dark #ai-chat-input-area{border-top-color:#1d4ed8}#ai-chat-ctx-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}#ai-cur-article-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;user-select:none}#ai-cur-article-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.ai-toggle-track{position:relative;width:28px;height:16px;background:var(--border);border-radius:8px;flex-shrink:0;transition:background .18s}#ai-cur-article-chk:checked~.ai-toggle-track{background:linear-gradient(135deg,#3b82f6,#38bdf8)}.ai-toggle-thumb{position:absolute;top:2px;left:2px;width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:transform .18s cubic-bezier(.34,1.56,.64,1)}#ai-cur-article-chk:checked~.ai-toggle-track .ai-toggle-thumb{transform:translate(12px)}.ai-toggle-label{display:flex;align-items:center;gap:4px;font-size:.7rem;color:var(--text-muted);font-weight:500;transition:color .15s}#ai-cur-article-toggle:has(input:checked) .ai-toggle-label{color:#3b82f6}html.dark #ai-cur-article-toggle:has(input:checked) .ai-toggle-label{color:#60a5fa}.ai-ctx-label{display:flex;align-items:center;gap:5px;font-size:.7rem;color:#60a5fa;font-weight:500}#ai-chat-status{font-size:.68rem;color:#3b82f6;font-weight:500;animation:aiStatusBlink 1s infinite}@keyframes aiStatusBlink{0%,to{opacity:1}50%{opacity:.3}}#ai-chat-input-row{display:flex;align-items:flex-end;gap:7px}#ai-chat-input{flex:1;border:1.5px solid #93c5fd;border-radius:10px;padding:7px 11px;font-size:.82rem;font-family:inherit;background:var(--bg-muted);color:var(--text);outline:none;line-height:1.6;min-height:36px;max-height:120px;overflow-y:auto;transition:border-color .15s,box-shadow .15s;cursor:text;word-break:break-word;white-space:pre-wrap}#ai-chat-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}#ai-chat-input.empty:before{content:attr(data-placeholder);color:var(--text-dimmed);pointer-events:none;position:absolute;font-size:.82rem}#ai-chat-input-row{position:relative}html.dark #ai-chat-input{border-color:#1d4ed8}html.dark #ai-chat-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.ai-article-chip{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#dbeafe,#e0f2fe);border:1.5px solid #93c5fd;border-radius:6px;padding:2px 6px 2px 5px;font-size:.75rem;font-weight:500;color:#1d4ed8;cursor:default;vertical-align:middle;user-select:none;margin:0 2px;max-width:160px;line-height:1.4}html.dark .ai-article-chip{background:linear-gradient(135deg,#1e3a5f,#1e3a5f);border-color:#3b82f6;color:#93c5fd}.ai-chip-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:110px;display:inline-block;vertical-align:middle}.ai-chip-del{font-size:.9rem;line-height:1;color:#60a5fa;cursor:pointer;flex-shrink:0;margin-left:1px;opacity:.7;transition:opacity .12s,color .12s}.ai-chip-del:hover{opacity:1;color:#ef4444}#ai-chat-send{width:36px;height:36px;border-radius:50%;border:none;background:linear-gradient(135deg,#60a5fa,#38bdf8);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 2px 8px #3b82f659}#ai-chat-send:hover{transform:scale(1.1);box-shadow:0 4px 14px #3b82f680}#ai-chat-send.loading{background:linear-gradient(135deg,#fca5a5,#f87171);box-shadow:0 2px 8px #f8717159}@media(max-width:768px){#ai-chara-wrap{right:60px;bottom:12px}#ai-chat-modal{right:6px}}#ai-at-panel{position:fixed;z-index:9500;background:var(--bg);border:1.5px solid #93c5fd;border-radius:12px;box-shadow:0 8px 32px #3b82f62e,0 2px 8px #00000014;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(6px) scale(.97);transform-origin:bottom left;transition:opacity .18s,transform .18s;max-height:320px;display:flex;flex-direction:column}#ai-at-panel.open{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}html.dark #ai-at-panel{border-color:#1d4ed8;box-shadow:0 8px 32px #1d4ed847,0 2px 8px #0000004d}#ai-at-search-row{display:flex;align-items:center;gap:7px;padding:8px 12px;border-bottom:1px solid var(--border);flex-shrink:0;color:var(--text-muted)}#ai-at-input{border:none;outline:none;background:transparent;font-size:.8rem;color:var(--text);flex:1;font-family:inherit}#ai-at-list{overflow-y:auto;max-height:240px;padding:4px 0}#ai-at-list::-webkit-scrollbar{width:3px}#ai-at-list::-webkit-scrollbar-thumb{background:linear-gradient(#93c5fd,#38bdf8);border-radius:3px}.ai-at-item{display:flex;align-items:center;gap:8px;padding:7px 12px;cursor:pointer;transition:background .1s;font-size:.8rem}.ai-at-item:hover,.ai-at-item.active{background:linear-gradient(90deg,#eff6ff,#f0f9ff)}html.dark .ai-at-item:hover,html.dark .ai-at-item.active{background:linear-gradient(90deg,#0c1a2e,#0f172a)}.ai-at-icon{color:#60a5fa;flex-shrink:0}.ai-at-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:500}.ai-at-item.active .ai-at-title{color:#2563eb}html.dark .ai-at-item.active .ai-at-title{color:#93c5fd}.ai-at-cat{font-size:.7rem;color:var(--text-dimmed);background:var(--bg-muted);border-radius:4px;padding:1px 5px;flex-shrink:0}.ai-at-empty{padding:12px 14px;font-size:.78rem;color:var(--text-dimmed);text-align:center;display:flex;align-items:center;justify-content:center;gap:7px}.ai-at-spinner{display:inline-block;width:13px;height:13px;border:2px solid #93c5fd;border-top-color:#3b82f6;border-radius:50%;animation:aiAtSpin .7s linear infinite;flex-shrink:0}@keyframes aiAtSpin{to{transform:rotate(360deg)}}.ai-msg-chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.ai-msg-chip{display:inline-flex;align-items:center;gap:4px;background:#ffffff38;border:1px solid rgba(255,255,255,.45);border-radius:5px;padding:2px 7px;font-size:.72rem;font-weight:500;color:#fff}#ai-ctx-label{transition:color .15s}#share-sel-btn{position:fixed;z-index:9500;display:inline-flex;align-items:center;gap:2px;padding:4px;font-size:.78rem;font-weight:500;line-height:1;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow),0 4px 16px #0000001f;opacity:0;pointer-events:none;transform:translateY(4px) scale(.96);transition:opacity .15s,transform .15s;user-select:none;white-space:nowrap}#share-sel-btn.visible{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}.sel-tb-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border:none;border-radius:7px;background:transparent;color:var(--text);font-size:.75rem;font-weight:500;cursor:pointer;transition:background .12s}.sel-tb-btn:hover{background:var(--bg-hover)}.sel-tb-btn svg{flex-shrink:0;opacity:.7}#sel-ai-panel{position:fixed;z-index:9500;width:320px;max-height:260px;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow),0 8px 24px #00000026;padding:14px 16px;color:var(--text);font-size:.82rem;line-height:1.6;display:none;white-space:pre-wrap;word-break:break-word}#sel-ai-panel.visible{display:block}#sel-ai-close{position:absolute;top:8px;right:8px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:4px}#sel-ai-close:hover{background:var(--bg-hover);color:var(--text)}.sel-ai-loading{color:var(--text-muted);font-style:italic}#share-card-modal{position:fixed;inset:0;z-index:9600;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}#share-card-modal.open{opacity:1;pointer-events:all}#share-card-box{background:var(--bg);border:1px solid var(--border);border-radius:14px;box-shadow:0 20px 60px #00000040;padding:20px;display:flex;flex-direction:column;gap:14px;max-width:700px;width:calc(100vw - 40px);transform:scale(.96) translateY(10px);transition:transform .2s}#share-card-modal.open #share-card-box{transform:scale(1) translateY(0)}#share-card-header{display:flex;align-items:center;justify-content:space-between}#share-card-title{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;color:var(--text)}#share-card-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s}#share-card-close:hover{background:var(--bg-hover);color:var(--text)}#share-card-preview{display:flex;justify-content:center;background:var(--bg-muted);border:1px solid var(--border);border-radius:10px;padding:16px;overflow:hidden}#share-canvas{border-radius:10px;box-shadow:0 4px 20px #0000001f;max-width:100%;height:auto}#share-card-actions{display:flex;gap:10px;justify-content:flex-end}#share-card-save,#share-card-copy{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;font-size:.81rem;font-weight:500;border-radius:8px;cursor:pointer;transition:background .12s,color .12s,border-color .12s}#share-card-save{background:linear-gradient(135deg,#7c3aed,#2563eb);color:#fff;border:none;box-shadow:0 2px 8px #6d28d94d}#share-card-save:hover{background:linear-gradient(135deg,#6d28d9,#1d4ed8)}#share-card-copy{background:transparent;color:var(--text);border:1px solid var(--border)}#share-card-copy:hover{background:var(--bg-hover);border-color:var(--text-dimmed)}@media print{@page{margin:18mm 20mm;size:A4}#nd-sidebar,#nd-topbar,#nd-toc,#nav-fab,#toc-fab,#drawer-mask,#nav-drawer,#toc-drawer,#pjax-bar,#reading-progress,#back-to-top,#ai-chara-wrap,#share-sel-btn,#share-card-modal,#search-modal-overlay,#ai-insight-wrap,#outdated-banner-wrap,#article-edit-bar,#diagram-modal,.sb-auth-btn,.am-print-btn,.am-edit-btn,#editSaveBtn,#ver-btns-wrap,.breadcrumb,.fe-edit-btn,.cm-form,.cm-load-more,#notion-ai-menu,.medium-zoom-overlay,.medium-zoom-image--opened,.code-toolbar{display:none!important}html,body{margin:0!important;padding:0!important;background:#fff!important;color:#111!important;width:100%!important;overflow:visible!important}#nd-layout{display:block!important;width:100%!important;min-height:0!important;padding:0!important;margin:0!important}#nd-main{display:block!important;grid-area:unset!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important;position:static!important}.article-header{margin-bottom:16pt!important;padding-bottom:10pt!important;border-bottom:1.5pt solid #ddd!important}.article-header h1{font-size:20pt!important;font-weight:700!important;color:#111!important;margin:0 0 8pt!important;page-break-after:avoid}.article-header p{font-size:10pt!important;color:#555!important;margin:0!important}.article-meta{font-size:9.5pt!important;color:#666!important;margin:6pt 0 0!important;padding:0!important;border:none!important;background:transparent!important}.am-tag{font-size:8.5pt!important;color:#555!important;background:#f3f4f6!important;border:1pt solid #ddd!important;padding:1pt 5pt!important;border-radius:3pt!important}.prose{font-size:10.5pt!important;line-height:1.75!important;color:#111!important;max-width:100%!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.prose *{color:inherit}.prose p,.prose li{color:#222!important;orphans:3;widows:3}.prose a{color:#1d4ed8!important}.prose a[href]:after{content:" (" attr(href) ")";font-size:8pt;color:#888!important;word-break:break-all}.prose a[href^="view.html"]:after,.prose a[href^="#"]:after{content:""!important}.prose strong{color:#111!important;font-weight:600}.prose h2{font-size:15pt!important;color:#111!important;margin-top:22pt!important;margin-bottom:8pt!important;padding-bottom:5pt!important;border-bottom:1pt solid #e5e7eb!important;page-break-after:avoid}.prose h3{font-size:12pt!important;color:#111!important;margin-top:16pt!important;page-break-after:avoid}.prose h4,.prose h5,.prose h6{color:#111!important;page-break-after:avoid}.prose img{max-width:100%!important;height:auto!important;cursor:default!important;page-break-inside:avoid;box-shadow:none!important}.prose pre{background:#f8f9fa!important;border:1pt solid #e2e8f0!important;border-radius:4pt!important;font-size:8.5pt!important;line-height:1.55!important;white-space:pre-wrap!important;word-break:break-all!important;padding:9pt 11pt!important;page-break-inside:avoid;color:#1e293b!important}.prose pre code,.prose pre *{font-size:8.5pt!important;color:#1e293b!important;background:transparent!important}.code-filename{font-size:8pt!important;background:#e2e8f0!important;color:#475569!important}.prose code{font-size:8.5pt!important;background:#f1f5f9!important;color:#be123c!important;border:1pt solid #e2e8f0!important;padding:1pt 3pt!important}.prose table{font-size:9.5pt!important;border-collapse:collapse!important;width:100%!important;page-break-inside:auto}.prose table th{background:#f3f4f6!important;color:#374151!important;font-weight:600!important;border:1pt solid #d1d5db!important;padding:5pt 8pt!important}.prose table td{border:1pt solid #d1d5db!important;padding:5pt 8pt!important;color:#374151!important;background:#fff!important}.prose table tr:nth-child(2n) td{background:#f9fafb!important}.prose table tr{page-break-inside:avoid}.prose blockquote{border-left:3pt solid #94a3b8!important;background:transparent!important;color:#475569!important;padding-left:10pt!important;page-break-inside:avoid}.callout{border:1pt solid #cbd5e1!important;background:#f8fafc!important;color:#334155!important;page-break-inside:avoid}.callout *{color:#334155!important}.callout-info{border-color:#93c5fd!important;background:#eff6ff!important}.callout-tip{border-color:#86efac!important;background:#f0fdf4!important}.callout-warn{border-color:#fcd34d!important;background:#fffbeb!important}.mermaid,.echarts-chart{page-break-inside:avoid;max-width:100%!important}.echarts-chart canvas{max-width:100%!important}.prose pre,.prose table,.prose blockquote,.callout{page-break-inside:avoid}}.sch-container{max-width:720px;margin:0 auto;padding:8px 0 40px}.sch-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.sch-nav{display:flex;align-items:center;gap:8px}.sch-title{font-size:1.1rem;font-weight:600;color:var(--text);margin:0;min-width:120px;text-align:center;line-height:32px}.sch-nav-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-size:1.1rem;line-height:1;color:var(--text);background:transparent;border:none;transition:background .12s,color .12s}.sch-nav-btn:hover{background:var(--bg-hover);color:var(--primary)}.sch-today-btn{padding:5px 12px;border-radius:6px;font-size:.78rem;font-weight:500;color:var(--primary);background:transparent;border:1px solid var(--border);transition:background .12s,border-color .12s}.sch-today-btn:hover{background:var(--bg-hover);border-color:var(--text-dimmed)}.sch-grid{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg);box-shadow:var(--shadow)}.sch-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border)}.sch-weekdays span{padding:10px 0;text-align:center;font-size:.72rem;font-weight:500;color:var(--text-muted)}.sch-weekdays .sch-weekend{color:var(--link);opacity:.7}.sch-days{display:grid;grid-template-columns:repeat(7,1fr)}.sch-day{position:relative;min-height:72px;padding:8px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;transition:background .15s;display:flex;flex-direction:column;align-items:flex-start}.sch-day:nth-child(7n){border-right:none}.sch-day:hover{background:var(--bg-hover)}.sch-day-empty{cursor:default;background:transparent}.sch-day-empty:hover{background:transparent}.sch-day-num{font-size:.82rem;font-weight:500;color:var(--text);line-height:1}.sch-weekend-day .sch-day-num{color:var(--link);opacity:.8}.sch-today .sch-day-num{background:var(--link);color:#fff;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:600}.sch-selected{background:var(--bg-hover);box-shadow:inset 0 0 0 2px var(--link)}.sch-holiday{background:#ef44440a}.sch-holiday .sch-day-num{color:#ef4444}.sch-workday .sch-day-num{color:var(--link)}html.dark .sch-holiday{background:#ef444414}.sch-hol-tag{position:absolute;top:3px;right:4px;font-size:.5rem;font-weight:600;line-height:1}.sch-hol-off{color:#ef4444}.sch-hol-work{color:var(--link)}.sch-dots{display:flex;gap:3px;margin-top:auto;padding-top:6px}.sch-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sch-timeline{margin-top:28px;min-height:60px}.sch-timeline-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.sch-timeline-date{font-size:1rem;font-weight:600;color:var(--text)}.sch-timeline-count{font-size:.78rem;color:var(--text-muted);background:var(--bg-muted);padding:2px 8px;border-radius:10px}.sch-timeline-empty{text-align:center;padding:32px 0;font-size:.88rem;color:var(--text-dimmed)}.sch-timeline-list{display:flex;flex-direction:column;gap:0}.sch-event{display:flex;gap:14px;padding:0 0 20px}.sch-event:last-child{padding-bottom:0}.sch-event-line{display:flex;flex-direction:column;align-items:center;padding-top:6px;flex-shrink:0;width:16px}.sch-event-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 3px var(--bg),0 0 0 4px var(--border)}.sch-milestone .sch-event-dot{width:14px;height:14px;box-shadow:0 0 0 3px var(--bg),0 0 0 5px currentColor}.sch-event-connector{flex:1;width:2px;background:var(--border);margin-top:6px;border-radius:1px}.sch-event:last-child .sch-event-connector{display:none}.sch-event-card{flex:1;background:var(--bg-muted);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;transition:box-shadow .15s,border-color .15s}.sch-event-card:hover{box-shadow:var(--shadow);border-color:var(--text-dimmed)}.sch-milestone .sch-event-card{border-left:3px solid var(--primary)}.sch-event-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.sch-event-time{font-size:.75rem;font-weight:500;color:var(--text-muted)}.sch-event-status{font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:10px}.sch-status-pending{background:#eff6ff;color:#2563eb}.sch-status-in_progress{background:#fef3c7;color:#d97706}.sch-status-done{background:#f0fdf4;color:#16a34a}html.dark .sch-status-pending{background:#1e3a5f;color:#60a5fa}html.dark .sch-status-in_progress{background:#422006;color:#fbbf24}html.dark .sch-status-done{background:#052e16;color:#4ade80}.sch-event-title{font-size:.9rem;font-weight:600;color:var(--text);margin-bottom:4px}.sch-milestone .sch-event-title{font-size:.95rem}.sch-event-desc{font-size:.8rem;color:var(--text-muted);line-height:1.5}.sch-event-badge{display:inline-block;margin-top:8px;font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:4px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}@media(max-width:768px){.sch-container{padding:4px 0 24px}.sch-day{min-height:56px;padding:5px}.sch-day-num{font-size:.75rem}.sch-title{font-size:1rem;min-width:110px}.sch-event-card{padding:10px 12px}}.doc-file-card{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:12px 0;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:inherit;transition:background .15s,border-color .15s,transform .05s;max-width:480px}.doc-file-card:hover{background:#f9fafb;border-color:#d1d5db;text-decoration:none}.doc-file-card:active{transform:translateY(1px)}.doc-file-icon{flex:0 0 44px;height:44px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff;background:#6b7280;letter-spacing:.5px}.doc-file-icon-pdf{background:#dc2626}.doc-file-icon-doc,.doc-file-icon-docx{background:#2563eb}.doc-file-icon-xls,.doc-file-icon-xlsx{background:#16a34a}.doc-file-icon-ppt,.doc-file-icon-pptx{background:#ea580c}.doc-file-icon-zip{background:#7c3aed}.doc-file-icon-txt{background:#4b5563}.doc-file-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.doc-file-name{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-file-size{font-size:12px;color:#6b7280}.child-articles-intro{display:flex;align-items:center;gap:12px;margin:40px 0 12px}.child-articles-intro:before,.child-articles-intro:after{content:"";flex:1;height:1px;background:var(--border, #e5e7eb)}.child-articles-label{padding:3px 12px;border:1px dashed var(--border, #d1d5db);border-radius:12px;color:var(--text-muted, #6b7280);font-size:.8125rem;font-weight:500;background:var(--bg, transparent);white-space:nowrap}.child-article-line{margin:.25em 0}#prose-content:has(.child-articles-intro) .cm-section{margin-top:20px!important;padding-top:20px!important}
