.comment-section[data-v-39f7cb40]{margin-top:30px;padding-top:20px;border-top:1px solid #eee}.comment-title[data-v-39f7cb40]{font-size:16px;font-weight:600;color:#333;margin-bottom:15px}.comment-title .comment-count[data-v-39f7cb40]{font-size:13px;color:#999;font-weight:400}.comment-form-wrapper[data-v-39f7cb40]{background:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:20px}.form-title[data-v-39f7cb40]{font-size:14px;font-weight:600;color:#333;margin-bottom:10px}.comment-form .form-row[data-v-39f7cb40]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px}@media(max-width:768px){.comment-form .form-row[data-v-39f7cb40]{grid-template-columns:1fr}}.comment-form .form-group input[data-v-39f7cb40],.comment-form .form-group textarea[data-v-39f7cb40]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;transition:all .3s;background:#fff}.comment-form .form-group input[data-v-39f7cb40]:focus,.comment-form .form-group textarea[data-v-39f7cb40]:focus{outline:none;border-color:#4370f5}.comment-form .form-group input[data-v-39f7cb40]::-moz-placeholder,.comment-form .form-group textarea[data-v-39f7cb40]::-moz-placeholder{color:#aaa;font-size:12px}.comment-form .form-group input[data-v-39f7cb40]::placeholder,.comment-form .form-group textarea[data-v-39f7cb40]::placeholder{color:#aaa;font-size:12px}.comment-form .form-group textarea[data-v-39f7cb40]{resize:vertical;min-height:80px}.comment-form .form-actions[data-v-39f7cb40]{display:flex;gap:8px;justify-content:flex-end}.comment-form .form-actions .cancel-btn[data-v-39f7cb40]{padding:8px 16px;border:1px solid #ddd;background:#fff;color:#666;border-radius:4px;cursor:pointer;font-size:13px;transition:all .3s}.comment-form .form-actions .cancel-btn[data-v-39f7cb40]:hover{background:#f0f0f0}.comment-form .form-actions .submit-btn[data-v-39f7cb40]{padding:8px 18px;border:none;background:#4370f5;color:#fff;border-radius:4px;cursor:pointer;font-size:13px;transition:all .3s}.comment-form .form-actions .submit-btn[data-v-39f7cb40]:hover:not(:disabled){background:#3560d8}.comment-form .form-actions .submit-btn[data-v-39f7cb40]:disabled{opacity:.7;cursor:not-allowed}.comment-list .loading[data-v-39f7cb40],.comment-list .no-comments[data-v-39f7cb40]{text-align:center;padding:25px;color:#999;font-size:13px}.comment-item[data-v-39f7cb40]{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #f0f0f0}.comment-item.is-admin .comment-content[data-v-39f7cb40]{background:rgba(67,112,245,.05);padding:10px;border-radius:6px}.comment-item .comment-avatar[data-v-39f7cb40]{flex-shrink:0}.comment-item .comment-avatar img[data-v-39f7cb40]{width:36px;height:36px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.comment-item .comment-content[data-v-39f7cb40]{flex:1}.comment-item .comment-header[data-v-39f7cb40]{display:flex;align-items:center;gap:6px;margin-bottom:6px}.comment-item .comment-header .author-name[data-v-39f7cb40]{font-weight:600;color:#333;font-size:13px}.comment-item .comment-header .author-name .admin-badge[data-v-39f7cb40]{display:inline-block;background:#4370f5;color:#fff;font-size:10px;padding:1px 6px;border-radius:8px;margin-left:4px;font-weight:400}.comment-item .comment-header .author-url[data-v-39f7cb40]{color:#999;display:flex;align-items:center}.comment-item .comment-header .author-url[data-v-39f7cb40]:hover{color:#4370f5}.comment-item .comment-header .comment-time[data-v-39f7cb40]{color:#999;font-size:13px}.comment-item .comment-body[data-v-39f7cb40]{color:#555;line-height:1.6;font-size:13px;white-space:pre-wrap}.comment-item .comment-actions[data-v-39f7cb40]{margin-top:6px}.comment-item .comment-actions .reply-btn[data-v-39f7cb40]{background:none;border:none;color:#4370f5;font-size:12px;cursor:pointer;padding:0}.comment-item .comment-actions .reply-btn[data-v-39f7cb40]:hover{text-decoration:underline}.comment-replies[data-v-39f7cb40]{margin-top:10px;padding-left:15px;border-left:2px solid #eee}.comment-replies .reply-item[data-v-39f7cb40]{padding:10px 0;border-bottom:none}.comment-replies .reply-item[data-v-39f7cb40]:last-child{padding-bottom:0}.comment-replies .reply-item .comment-avatar img[data-v-39f7cb40]{width:28px;height:28px}.pagination[data-v-39f7cb40]{display:flex;justify-content:center;gap:6px;margin-top:20px}.pagination .page-btn[data-v-39f7cb40]{min-width:30px;height:30px;padding:0 10px;border:1px solid #ddd;background:#fff;color:#666;border-radius:4px;cursor:pointer;font-size:13px;transition:all .3s}.pagination .page-btn[data-v-39f7cb40]:hover{border-color:#4370f5;color:#4370f5}.pagination .page-btn.active[data-v-39f7cb40]{background:#4370f5;border-color:#4370f5;color:#fff}.article-page[data-v-3c9096f8]{padding:30px 0}.article-page .content-wrapper[data-v-3c9096f8]{display:grid;grid-template-columns:1fr;gap:30px}.article-page .content-wrapper.has-sidebar[data-v-3c9096f8]{grid-template-columns:1fr 300px}.article-page .article-main[data-v-3c9096f8]{background:#fff;border-radius:0;padding:40px;box-shadow:0 2px 8px rgba(0,0,0,.06)}.article-page .article-header[data-v-3c9096f8]{margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid #eee}.article-page .article-meta-top[data-v-3c9096f8]{display:flex;align-items:center;gap:10px;margin-bottom:15px;font-size:14px}.article-page .article-meta-top .category-link[data-v-3c9096f8]{color:#4370f5;font-weight:500}.article-page .article-meta-top .category-link[data-v-3c9096f8]:hover{text-decoration:underline}.article-page .article-meta-top .meta-divider[data-v-3c9096f8]{color:#ccc}.article-page .article-meta-top .publish-time[data-v-3c9096f8]{color:#999}.article-page .article-title[data-v-3c9096f8]{font-size:32px;font-weight:700;line-height:1.4;color:#333;margin-bottom:20px}.article-page .article-meta[data-v-3c9096f8]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 20px;background:#f8f9fa;border-radius:25px;margin-top:15px}.article-page .author-info[data-v-3c9096f8]{display:flex;align-items:center;gap:8px}.article-page .author-info .author-avatar[data-v-3c9096f8]{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.1)}.article-page .author-info .author-name[data-v-3c9096f8]{font-size:14px;color:#333;font-weight:500}.article-page .category-link[data-v-3c9096f8]{color:#4370f5;font-size:13px;font-weight:500;padding:4px 12px;background:rgba(67,112,245,.1);border-radius:15px;transition:all .3s;position:relative}.article-page .category-link[data-v-3c9096f8]:hover{background:rgba(67,112,245,.2);text-decoration:none}.article-page .category-link[data-v-3c9096f8]:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#d0d0d0;border-radius:50%}.article-page .publish-time[data-v-3c9096f8]{color:#888;font-size:13px;position:relative;padding-left:12px}.article-page .publish-time[data-v-3c9096f8]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#d0d0d0;border-radius:50%}.article-page .stat-item[data-v-3c9096f8]{display:flex;align-items:center;gap:5px;color:#999;font-size:13px;position:relative;padding-left:12px}.article-page .stat-item[data-v-3c9096f8]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#d0d0d0;border-radius:50%}.article-page .stat-item svg[data-v-3c9096f8]{color:#bbb}.article-page .article-author[data-v-3c9096f8]{color:#666;font-size:13px;position:relative;padding-left:12px}.article-page .article-author[data-v-3c9096f8]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#d0d0d0;border-radius:50%}.article-page .article-tags[data-v-3c9096f8]{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.article-page .article-tags .tag-link[data-v-3c9096f8]{padding:5px 15px;border-radius:20px;font-size:13px;transition:all .3s}.article-page .article-tags .tag-link[data-v-3c9096f8]:hover{opacity:.8}.article-page .article-stats[data-v-3c9096f8]{display:flex;justify-content:center;align-items:center;gap:60px;margin:40px 0;padding:30px 0}.article-page .article-stats .stat-box[data-v-3c9096f8]{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:120px}.article-page .article-stats .stat-box .stat-label[data-v-3c9096f8]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 20px;font-size:13px;font-weight:500;letter-spacing:1px;border-radius:20px;margin-bottom:15px;box-shadow:0 4px 15px rgba(102,126,234,.3)}.article-page .article-stats .stat-box .stat-value[data-v-3c9096f8]{font-size:56px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;margin:5px 0}.article-page .article-stats .stat-box .stat-unit[data-v-3c9096f8]{font-size:13px;color:#999;margin-top:8px;font-weight:400}.article-page .article-stats .stat-divider[data-v-3c9096f8]{width:1px;height:100px;background:linear-gradient(180deg,transparent,#ddd,transparent)}.article-page .article-content[data-v-3c9096f8]{font-size:16px;line-height:1.8;color:#333}.article-page .article-content[data-v-3c9096f8] h1,.article-page .article-content[data-v-3c9096f8] h2,.article-page .article-content[data-v-3c9096f8] h3,.article-page .article-content[data-v-3c9096f8] h4,.article-page .article-content[data-v-3c9096f8] h5,.article-page .article-content[data-v-3c9096f8] h6{margin:30px 0 15px;font-weight:600;line-height:1.4}.article-page .article-content[data-v-3c9096f8] h1{font-size:28px;position:relative;padding-left:28px}.article-page .article-content[data-v-3c9096f8] h1:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:18.141px;height:12.932px;background-image:url(/img/h1.bcde80c6.svg);background-repeat:no-repeat;background-size:contain;background-position:50%}.article-page .article-content[data-v-3c9096f8] h2{font-size:24px;position:relative;padding-left:24px}.article-page .article-content[data-v-3c9096f8] h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:10.141px;height:12.932px;background-image:url(/img/h2.a236c666.svg);background-repeat:no-repeat;background-size:contain;background-position:50%}.article-page .article-content[data-v-3c9096f8] h3{font-size:20px}.article-page .article-content[data-v-3c9096f8] h4{font-size:18px}.article-page .article-content[data-v-3c9096f8] p{margin-bottom:20px}.article-page .article-content[data-v-3c9096f8] img{max-width:100%;height:auto;border-radius:4px;margin:20px 0}.article-page .article-content[data-v-3c9096f8] code{background:#f4f4f4;padding:2px 6px;border-radius:3px;font-family:monospace;font-size:14px}.article-page .article-content[data-v-3c9096f8] pre{background:#f8f8f8;padding:20px;border-radius:8px;overflow-x:auto;margin:20px 0}.article-page .article-content[data-v-3c9096f8] pre code{background:none;padding:0}.article-page .article-content[data-v-3c9096f8] blockquote{position:relative;background:#f7f8fa;border-radius:12px;padding:24px 24px 24px 56px;margin:20px 0;color:#555;border-left:none}.article-page .article-content[data-v-3c9096f8] blockquote:before{content:"";position:absolute;left:18px;top:12px;width:22.576px;height:13.413px;background-image:url(/img/b.267c7b00.svg);background-repeat:no-repeat;background-size:contain;background-position:50%}.article-page .article-content[data-v-3c9096f8] blockquote p{margin-bottom:0;line-height:1.8}.article-page .article-content[data-v-3c9096f8] ol,.article-page .article-content[data-v-3c9096f8] ul{margin:20px 0;padding-left:8px;list-style:none}.article-page .article-content[data-v-3c9096f8] ul li{position:relative;padding-left:20px;margin-bottom:12px;line-height:1.7}.article-page .article-content[data-v-3c9096f8] ul li:before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:#4370f5}.article-page .article-content[data-v-3c9096f8] ul li b,.article-page .article-content[data-v-3c9096f8] ul li strong{color:#4370f5;font-weight:600}.article-page .article-content[data-v-3c9096f8] ol{padding-left:24px;list-style:decimal}.article-page .article-content[data-v-3c9096f8] ol li{margin-bottom:10px}.article-page .article-content[data-v-3c9096f8] a{color:#4370f5}.article-page .article-content[data-v-3c9096f8] a:hover{text-decoration:underline}.article-page .article-content[data-v-3c9096f8] table{width:100%;border-collapse:collapse;margin:20px 0}.article-page .article-content[data-v-3c9096f8] table td,.article-page .article-content[data-v-3c9096f8] table th{border:1px solid #ddd;padding:12px;text-align:left}.article-page .article-content[data-v-3c9096f8] table th{background:#f8f8f8;font-weight:600}.article-page .article-footer[data-v-3c9096f8]{margin-top:40px;padding-top:30px;border-top:1px solid #eee}.article-page .share-section[data-v-3c9096f8]{display:flex;align-items:center;gap:15px}.article-page .share-section span[data-v-3c9096f8]{color:#666}.article-page .share-section .share-btn[data-v-3c9096f8]{width:40px;height:40px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .3s}.article-page .share-section .share-btn.weibo[data-v-3c9096f8]{background:#e6162d}.article-page .share-section .share-btn.wechat[data-v-3c9096f8]{background:#07c160}.article-page .share-section .share-btn[data-v-3c9096f8]:hover{transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.article-page .article-sidebar .toc-card[data-v-3c9096f8]{background:#fff;border-radius:0;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,.06);position:sticky;top:84px}.article-page .article-sidebar .toc-title[data-v-3c9096f8]{font-size:16px;font-weight:600;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #4370f5}.article-page .article-sidebar .toc-list[data-v-3c9096f8]{list-style:none;padding:0}.article-page .article-sidebar .toc-list .toc-item[data-v-3c9096f8]{padding:8px 0;cursor:pointer;color:#666;font-size:14px;border-left:2px solid transparent;padding-left:10px;transition:all .3s}.article-page .article-sidebar .toc-list .toc-item[data-v-3c9096f8]:hover{color:#4370f5}.article-page .article-sidebar .toc-list .toc-item.active[data-v-3c9096f8]{color:#4370f5;border-left-color:#4370f5;background:#f0f4ff}.article-page .article-sidebar .toc-list .toc-item.toc-level-2[data-v-3c9096f8]{padding-left:20px}.article-page .article-sidebar .toc-list .toc-item.toc-level-3[data-v-3c9096f8]{padding-left:30px}@media(max-width:1024px){.article-page .content-wrapper[data-v-3c9096f8]{grid-template-columns:1fr!important}.article-page .article-sidebar[data-v-3c9096f8]{display:none}}@media(max-width:768px){.article-page .article-main[data-v-3c9096f8]{padding:20px 15px;border-radius:0;box-shadow:none;margin:0 -15px}.article-page .article-title[data-v-3c9096f8]{font-size:24px}.article-page .article-stats[data-v-3c9096f8]{gap:20px;margin:20px 0;padding:20px 0}.article-page .article-stats .stat-box[data-v-3c9096f8]{min-width:auto;flex:1}.article-page .article-stats .stat-box .stat-label[data-v-3c9096f8]{padding:6px 12px;font-size:11px}.article-page .article-stats .stat-box .stat-value[data-v-3c9096f8]{font-size:36px}.article-page .article-stats .stat-box .stat-unit[data-v-3c9096f8]{font-size:12px}.article-page .article-stats .stat-divider[data-v-3c9096f8]{height:60px}.article-page .article-footer[data-v-3c9096f8]{margin-top:30px;padding-top:20px}.article-page .article-footer .share-section[data-v-3c9096f8]{justify-content:center;gap:20px}.article-page .article-footer .share-section span[data-v-3c9096f8]{display:none}.article-page .article-footer .share-section .share-btn[data-v-3c9096f8]{width:48px;height:48px}.article-page .article-footer .share-section .share-btn svg[data-v-3c9096f8]{width:22px;height:22px}}.image-preview-overlay[data-v-3c9096f8]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);z-index:9999;display:flex;align-items:center;justify-content:center;cursor:zoom-out}.image-preview-container[data-v-3c9096f8]{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;cursor:default;overflow:hidden}.image-preview-container img[data-v-3c9096f8]{max-width:100%;max-height:80vh;-o-object-fit:contain;object-fit:contain;transition:transform .1s ease-out;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.image-preview-toolbar[data-v-3c9096f8]{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:15px;background:rgba(0,0,0,.7);padding:10px 20px;border-radius:30px;backdrop-filter:blur(10px);z-index:10000}.image-preview-toolbar .toolbar-btn[data-v-3c9096f8]{width:36px;height:36px;border-radius:50%;border:none;background:hsla(0,0%,100%,.2);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.image-preview-toolbar .toolbar-btn[data-v-3c9096f8]:hover{background:hsla(0,0%,100%,.3);transform:scale(1.1)}.image-preview-toolbar .toolbar-btn svg[data-v-3c9096f8]{width:20px;height:20px}.image-preview-toolbar .zoom-level[data-v-3c9096f8]{color:#fff;font-size:14px;min-width:50px;text-align:center;font-weight:500}.image-preview-toolbar .close-btn[data-v-3c9096f8]{background:hsla(0,100%,70%,.3)}.image-preview-toolbar .close-btn[data-v-3c9096f8]:hover{background:hsla(0,100%,70%,.5)}.image-preview-hint[data-v-3c9096f8]{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);color:hsla(0,0%,100%,.6);font-size:13px;text-align:center;z-index:10000}.wechat-share-overlay[data-v-3c9096f8]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);z-index:9999;display:flex;align-items:center;justify-content:center}.wechat-share-dialog[data-v-3c9096f8]{background:#fff;border-radius:12px;padding:30px;text-align:center;max-width:320px;width:90%}.wechat-share-dialog h3[data-v-3c9096f8]{font-size:18px;margin-bottom:20px;color:#333}.wechat-share-dialog .qr-code[data-v-3c9096f8]{width:200px;height:200px;margin:0 auto 20px;padding:10px;border:1px solid #eee;border-radius:8px}.wechat-share-dialog .qr-code img[data-v-3c9096f8]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.wechat-share-dialog p[data-v-3c9096f8]{color:#666;font-size:14px;margin-bottom:20px}.wechat-share-dialog .close-dialog-btn[data-v-3c9096f8]{background:#4370f5;color:#fff;border:none;padding:10px 30px;border-radius:20px;cursor:pointer;font-size:14px;transition:background .3s}.wechat-share-dialog .close-dialog-btn[data-v-3c9096f8]:hover{background:#3560d8}.share-btn.copy-link[data-v-3c9096f8]{background:#4370f5;color:#fff}.share-btn.copy-link[data-v-3c9096f8]:hover{background:#3560d8}.copy-success-toast[data-v-3c9096f8]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.8);color:#fff;padding:12px 24px;border-radius:8px;font-size:14px;z-index:10001;animation:fadeInOut-3c9096f8 2s ease}@keyframes fadeInOut-3c9096f8{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}20%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.8)}}@media(max-width:768px){.image-preview-toolbar[data-v-3c9096f8]{bottom:-50px;padding:8px 15px;gap:10px}.image-preview-toolbar .toolbar-btn[data-v-3c9096f8]{width:32px;height:32px}.image-preview-toolbar .toolbar-btn svg[data-v-3c9096f8]{width:16px;height:16px}.image-preview-hint[data-v-3c9096f8]{bottom:-80px;font-size:12px}}