.article-toc .toc-mobile-toggle[data-v-3c9e290f]{position:fixed;bottom:24px;right:24px;z-index:999;display:flex;align-items:center;gap:8px;padding:12px 16px;background:#2563eb;color:#fff;border:none;border-radius:24px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #2563eb4d;cursor:pointer;transition:all .2s}.article-toc .toc-mobile-toggle[data-v-3c9e290f]:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66}.article-toc .toc-mobile-toggle svg[data-v-3c9e290f]{flex-shrink:0}.article-toc .toc-mobile-overlay[data-v-3c9e290f]{position:fixed;inset:0;background:#00000080;z-index:9999;display:flex;align-items:flex-end;justify-content:center}.article-toc .toc-mobile-panel[data-v-3c9e290f]{background:#fff;width:100%;max-height:80vh;border-radius:16px 16px 0 0;display:flex;flex-direction:column;overflow:hidden}.article-toc .toc-mobile-header[data-v-3c9e290f]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0;background:#fff}.article-toc .toc-mobile-header h3[data-v-3c9e290f]{margin:0;font-size:18px;font-weight:600;color:#111827}.article-toc .toc-mobile-header .toc-close[data-v-3c9e290f]{background:transparent;border:none;font-size:32px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;flex-shrink:0}.article-toc .toc-mobile-header .toc-close[data-v-3c9e290f]:hover{color:#111827}.article-toc .toc-sidebar[data-v-3c9e290f]{position:sticky;top:190px;align-self:start;max-height:calc(100vh - 210px);overflow-y:auto;padding:24px;background:#f9fafb;border-radius:12px}.article-toc .toc-sidebar .toc-title[data-v-3c9e290f]{margin:0 0 16px;font-size:14px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.article-toc .toc-nav[data-v-3c9e290f]{flex:1;overflow-y:auto;padding:20px 24px;-webkit-overflow-scrolling:touch}@media(min-width:1024px){.article-toc .toc-nav[data-v-3c9e290f]{padding:0;flex:none}}.article-toc .toc-nav ul[data-v-3c9e290f]{list-style:none;padding:0;margin:0}.article-toc .toc-nav .toc-item[data-v-3c9e290f]{margin-bottom:4px}.article-toc .toc-nav .toc-item a[data-v-3c9e290f]{display:block;padding:8px 12px;color:#6b7280;text-decoration:none;border-left:2px solid transparent;font-size:14px;line-height:1.5;transition:all .15s;border-radius:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.article-toc .toc-nav .toc-item a[data-v-3c9e290f]:hover{color:#2563eb;background:#eff6ff;border-left-color:#bfdbfe}.article-toc .toc-nav .toc-item.toc-active a[data-v-3c9e290f]{color:#2563eb;background:#eff6ff;border-left-color:#2563eb;font-weight:500}.article-toc .toc-nav .toc-item.toc-level-2 a[data-v-3c9e290f]{padding-left:12px}.article-toc .toc-nav .toc-item.toc-level-3 a[data-v-3c9e290f]{padding-left:24px;font-size:13px}.article-toc .toc-nav .toc-item.toc-level-4 a[data-v-3c9e290f]{padding-left:36px;font-size:12px;color:#9ca3af}@keyframes fadeIn-3c9e290f{0%{opacity:0}to{opacity:1}}@keyframes slideUp-3c9e290f{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:1024px){.toc-mobile-toggle[data-v-3c9e290f],.toc-mobile-overlay[data-v-3c9e290f]{display:none!important}}@media(max-width:1023px){.toc-sidebar[data-v-3c9e290f]{display:none!important}}.article-reactions[data-v-2f2861f9]{margin:40px 0;padding:30px;background:linear-gradient(135deg,#f5f7fa,#e3f2fd);border-radius:12px;text-align:center}.article-reactions .reactions-title[data-v-2f2861f9]{font-size:1.25rem;font-weight:600;margin:0 0 20px;color:#333}.article-reactions .reactions-container[data-v-2f2861f9]{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.article-reactions .reaction-button[data-v-2f2861f9]{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .3s ease;min-width:100px}.article-reactions .reaction-button[data-v-2f2861f9]:hover:not(:disabled){transform:translateY(-4px);box-shadow:0 8px 20px #0000001a;border-color:var(--color-primary, #4a90e2)}.article-reactions .reaction-button[data-v-2f2861f9]:disabled{opacity:.6;cursor:not-allowed}.article-reactions .reaction-button.reaction-active[data-v-2f2861f9]{background:var(--color-primary, #4a90e2);border-color:var(--color-primary, #4a90e2);color:#fff}.article-reactions .reaction-button.reaction-active .reaction-emoji[data-v-2f2861f9]{transform:scale(1.2)}.article-reactions .reaction-button.reaction-active .reaction-label[data-v-2f2861f9],.article-reactions .reaction-button.reaction-active .reaction-count[data-v-2f2861f9]{color:#fff}.article-reactions .reaction-button.reaction-loading[data-v-2f2861f9]{pointer-events:none}.article-reactions .reaction-button .reaction-emoji[data-v-2f2861f9]{font-size:2rem;transition:transform .3s ease}.article-reactions .reaction-button .reaction-label[data-v-2f2861f9]{font-size:.9rem;font-weight:500;color:#666}.article-reactions .reaction-button .reaction-count[data-v-2f2861f9]{position:absolute;top:-8px;right:-8px;background:var(--color-primary, #4a90e2);color:#fff;font-size:.75rem;font-weight:600;padding:4px 8px;border-radius:12px;min-width:24px;text-align:center;box-shadow:0 2px 8px #00000026}.article-reactions .reaction-message[data-v-2f2861f9]{margin-top:16px;padding:12px 20px;border-radius:8px;font-size:.9rem;font-weight:500}.article-reactions .reaction-message.success[data-v-2f2861f9]{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.article-reactions .reaction-message.error[data-v-2f2861f9]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.article-reactions .reaction-message.info[data-v-2f2861f9]{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.fade-enter-active[data-v-2f2861f9],.fade-leave-active[data-v-2f2861f9]{transition:opacity .3s ease}.fade-enter-from[data-v-2f2861f9],.fade-leave-to[data-v-2f2861f9]{opacity:0}@media(max-width:768px){.article-reactions[data-v-2f2861f9]{padding:20px}.article-reactions .reactions-title[data-v-2f2861f9]{font-size:1.1rem}.article-reactions .reactions-container[data-v-2f2861f9]{gap:12px}.article-reactions .reaction-button[data-v-2f2861f9]{min-width:80px;padding:12px 16px}.article-reactions .reaction-button .reaction-emoji[data-v-2f2861f9]{font-size:1.5rem}.article-reactions .reaction-button .reaction-label[data-v-2f2861f9]{font-size:.8rem}}.article-layout[data-v-2c620cde]{display:grid;grid-template-columns:1fr;gap:0;max-width:1400px;margin:0 auto;padding:0 20px}@media(min-width:1024px){.article-layout[data-v-2c620cde]:has(.article-toc-sidebar){grid-template-columns:280px minmax(600px,800px);gap:3rem;justify-content:start}.article-layout:has(.article-toc-sidebar) .article-toc-sidebar[data-v-2c620cde]{order:-1}}@media(min-width:1280px){.article-layout[data-v-2c620cde]:has(.article-toc-sidebar){grid-template-columns:280px minmax(700px,900px);gap:4rem}}@media(min-width:1024px){.article-layout[data-v-2c620cde]:not(:has(.article-toc-sidebar)){justify-content:center}.article-layout:not(:has(.article-toc-sidebar)) .article-content[data-v-2c620cde]{max-width:900px}}@media(min-width:1280px){.article-layout[data-v-2c620cde]{padding:0 40px}}.article-content[data-v-2c620cde]{min-width:0}
