*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-tertiary: #f8f9fa;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--border-color: #e0e0e0;--border-light: #eee;--accent: #667eea;--accent-light: #e8f0fe;--shadow: 0 10px 40px rgba(0, 0, 0, .1);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .12);--paper-bg: #ffffff;--paper-shadow: 0 1px 4px rgba(0, 0, 0, .12), 0 2px 12px rgba(0, 0, 0, .06);--toolbar-bg: #f8f9fa;--toolbar-border: #e0e0e0;--search-bar-bg: #fffde7;--error-bg: #fff0f0;--error-border: #ffcccc;--error-text: #d63031;--highlight: #ffeb3b;--highlight-current: #f44336}.dark{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-tertiary: #1e2a4a;--text-primary: #e0e0e0;--text-secondary: #b0b0b0;--text-muted: #888888;--border-color: #2a3a5c;--border-light: #1e2e4e;--accent: #7c8cf0;--accent-light: #1a2a4a;--shadow: 0 10px 40px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .3);--paper-bg: #1e2a4a;--paper-shadow: 0 1px 4px rgba(0, 0, 0, .3), 0 2px 12px rgba(0, 0, 0, .2);--toolbar-bg: #16213e;--toolbar-border: #2a3a5c;--search-bar-bg: #2a2a1e;--error-bg: #2a1a1a;--error-border: #4a2a2a;--error-text: #e06060;--highlight: #8a7a20;--highlight-current: #a03030}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color .3s,color .3s}#app{width:100%;min-height:100vh}.doc-preview[data-v-fe126704]{background:var(--bg-primary);border-radius:0 0 16px 16px;box-shadow:var(--shadow);min-height:500px;outline:none}.skip-link[data-v-fe126704]{position:absolute;top:-40px;left:8px;background:var(--accent);color:#fff;padding:6px 12px;border-radius:4px;z-index:100;text-decoration:none;font-size:.85rem;transition:top .2s}.skip-link[data-v-fe126704]:focus{top:8px}.loading-container[data-v-fe126704]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 20px;background:var(--bg-secondary);border-radius:0 0 16px 16px}.loading-spinner[data-v-fe126704]{width:50px;height:50px;border:4px solid var(--border-color);border-top:4px solid var(--accent);border-radius:50%;animation:spin-fe126704 1s linear infinite;margin-bottom:20px}@keyframes spin-fe126704{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container p[data-v-fe126704]{color:var(--text-secondary);font-size:1.1rem}.loading-filename[data-v-fe126704]{color:var(--text-muted);font-size:.85rem;margin-top:8px}.loading-meta[data-v-fe126704]{color:var(--text-muted);font-size:.8rem;margin-top:4px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.worker-badge[data-v-fe126704]{background:var(--accent-light);color:var(--accent);padding:2px 8px;border-radius:10px;font-weight:500;font-size:.75rem}.error-container[data-v-fe126704]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 20px;background:var(--bg-secondary);border-radius:0 0 16px 16px}.error-icon[data-v-fe126704]{font-size:4rem;margin-bottom:20px}.error-message[data-v-fe126704]{color:var(--error-text);font-size:1.1rem;text-align:center;white-space:pre-line;max-width:480px;line-height:1.6}.toolbar[data-v-fe126704]{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--toolbar-bg);border-bottom:1px solid var(--toolbar-border);gap:8px;flex-wrap:wrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.toolbar-left[data-v-fe126704]{display:flex;align-items:center;gap:4px}.toolbar-right[data-v-fe126704]{display:flex;align-items:center}.toolbar-btn[data-v-fe126704]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.toolbar-btn[data-v-fe126704]:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-color)}.toolbar-btn[data-v-fe126704]:disabled{opacity:.35;cursor:default}.toolbar-btn.active[data-v-fe126704]{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.zoom-label[data-v-fe126704]{font-variant-numeric:tabular-nums;min-width:44px;font-weight:600;cursor:pointer!important}.toolbar-sep[data-v-fe126704]{width:1px;height:20px;background:var(--border-color);margin:0 4px}.doc-stats[data-v-fe126704]{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.search-bar[data-v-fe126704]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--search-bar-bg);border-bottom:1px solid var(--border-color)}.search-input[data-v-fe126704]{flex:1;max-width:300px;padding:6px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:.85rem;outline:none;background:var(--bg-secondary);color:var(--text-primary);transition:border-color .15s}.search-input[data-v-fe126704]:focus{border-color:var(--accent)}.search-status[data-v-fe126704]{font-size:.8rem;color:var(--text-muted);min-width:50px;text-align:center}.doc-info[data-v-fe126704]{display:flex;justify-content:space-between;align-items:center;padding:10px 24px;font-size:.82rem;color:var(--text-muted);background:var(--bg-secondary);border-bottom:1px solid var(--border-light)}.doc-name[data-v-fe126704]{font-weight:600;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.doc-status[data-v-fe126704]{color:#27ae60;flex-shrink:0}.paper-page[data-v-fe126704]{background:var(--paper-bg);width:100%;max-width:800px;margin:24px auto;padding:48px 56px;box-shadow:var(--paper-shadow);min-height:400px;border-radius:2px;transform:scale(var(--zoom, 1));transform-origin:top center;transition:transform .2s ease,background .3s}.document-content[data-v-fe126704]{line-height:1.8;color:var(--text-primary);font-size:14px;transition:color .3s}.document-content h1[data-v-fe126704]{font-size:2.2rem;font-weight:700;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid var(--accent);color:var(--text-primary);font-family:华文中宋,SimHei,serif;text-align:center}.document-content h2[data-v-fe126704]{font-size:1.6rem;font-weight:700;margin-top:28px;margin-bottom:14px;color:var(--text-primary);font-family:华文中宋,SimHei,serif}.document-content h3[data-v-fe126704]{font-size:1.2rem;margin-top:24px;margin-bottom:12px;color:var(--text-secondary)}.document-content p[data-v-fe126704]{margin-bottom:12px;text-align:justify}.document-content ul[data-v-fe126704],.document-content ol[data-v-fe126704]{margin-bottom:12px;padding-left:28px}.document-content li[data-v-fe126704]{margin-bottom:6px}.document-content strong[data-v-fe126704]{font-weight:600;color:var(--text-primary)}.document-content em[data-v-fe126704]{font-style:italic}.document-content table[data-v-fe126704]{width:100%;border-collapse:collapse;margin-bottom:20px}.document-content th[data-v-fe126704],.document-content td[data-v-fe126704]{border:1px solid var(--border-color);padding:8px 10px;text-align:left}.document-content th[data-v-fe126704]{background-color:var(--bg-tertiary);font-weight:600}.document-content hr[data-v-fe126704]{border:none;border-top:1px solid var(--border-color);margin:24px 0}.document-content blockquote[data-v-fe126704]{border-left:4px solid var(--accent);padding-left:14px;margin:16px 0;color:var(--text-secondary);font-style:italic}[data-v-fe126704] .search-highlight{background:var(--highlight);border-radius:2px;padding:0 1px}[data-v-fe126704] .search-highlight-current{background:var(--highlight-current);color:#fff;border-radius:2px;padding:0 1px}.outline-sidebar[data-v-fe126704]{float:left;width:220px;margin:24px 0 24px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:.82rem;max-height:400px;overflow-y:auto;position:sticky;top:16px}.outline-header[data-v-fe126704]{padding:10px 14px;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color);font-size:.85rem}.outline-list[data-v-fe126704]{padding:6px 0}.outline-item[data-v-fe126704]{padding:5px 14px 5px calc(14px + 12px * (var(--level, 1) - 1));cursor:pointer;color:var(--text-secondary);line-height:1.4;transition:background .1s,color .1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.outline-item[data-v-fe126704]:hover{background:var(--bg-tertiary);color:var(--accent)}.outline-level-1[data-v-fe126704]{--level: 1;font-weight:600}.outline-level-2[data-v-fe126704]{--level: 2}.outline-level-3[data-v-fe126704]{--level: 3;font-size:.8rem}[data-v-fe126704] .outline-highlight{animation:outlineFlash-fe126704 2s ease-out}@keyframes outlineFlash-fe126704{0%{background:var(--accent-light)}to{background:transparent}}@media print{.doc-preview[data-v-fe126704]{background:none!important;box-shadow:none!important;border-radius:0!important;min-height:auto!important}.toolbar[data-v-fe126704],.search-bar[data-v-fe126704],.doc-info[data-v-fe126704]{display:none!important}.paper-page[data-v-fe126704]{box-shadow:none!important;padding:0!important;margin:0!important;max-width:none!important;transform:none!important}.document-content[data-v-fe126704]{color:#000!important}}@media (max-width: 768px){.paper-page[data-v-fe126704]{padding:28px 20px;margin:12px auto}.doc-info[data-v-fe126704]{padding:8px 14px}.toolbar[data-v-fe126704]{padding:6px 10px}.toolbar-right .doc-stats[data-v-fe126704]{font-size:.7rem}}@media (max-width: 640px){.doc-preview[data-v-fe126704]{min-height:300px}.paper-page[data-v-fe126704]{padding:20px 14px;margin:8px auto}.loading-container[data-v-fe126704],.error-container[data-v-fe126704]{padding:60px 20px}.doc-stats[data-v-fe126704]{display:none}}.app-container[data-v-f5f47129]{width:100%;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.header[data-v-f5f47129]{text-align:center;padding:40px 20px;color:#fff}.header-top[data-v-f5f47129]{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:10px}.header-top h1[data-v-f5f47129]{margin-bottom:0}.theme-btn[data-v-f5f47129]{background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:50%;width:40px;height:40px;font-size:1.2rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s}.theme-btn[data-v-f5f47129]:hover{background:#ffffff4d}.header h1[data-v-f5f47129]{font-size:2.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.header p[data-v-f5f47129]{font-size:1.1rem;opacity:.9}.main-content[data-v-f5f47129]{max-width:900px;margin:0 auto;padding:0 20px 40px}.upload-area[data-v-f5f47129]{background:#fff;border-radius:16px;padding:60px 40px;text-align:center;box-shadow:0 20px 60px #00000026;border:3px dashed #ddd;transition:all .3s ease}.upload-area[data-v-f5f47129]:hover{border-color:#667eea;box-shadow:0 25px 70px #0003}.upload-area.drag-over[data-v-f5f47129]{border-color:#667eea;background:#f0f4ff;box-shadow:0 25px 70px #667eea4d;transform:scale(1.02)}.error-banner[data-v-f5f47129]{background:#fff0f0;color:#d63031;border:1px solid #ffcccc;border-radius:8px;padding:10px 16px;margin:16px auto;max-width:480px;font-size:.9rem;line-height:1.5}.upload-icon[data-v-f5f47129]{font-size:6rem;margin-bottom:20px}.upload-area h2[data-v-f5f47129]{font-size:1.8rem;color:#333;margin-bottom:10px}.upload-area p[data-v-f5f47129]{color:#666;margin-bottom:10px}.format-tips[data-v-f5f47129]{margin-bottom:30px}.tip[data-v-f5f47129]{font-size:.9rem;color:#888;background:#f8f9fa;padding:8px 16px;border-radius:20px}.upload-btn[data-v-f5f47129]{display:inline-block;padding:14px 40px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:30px;font-size:1.1rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 15px #667eea66}.upload-btn[data-v-f5f47129]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.file-input[data-v-f5f47129]{display:none}.url-section[data-v-f5f47129]{margin-top:30px}.divider[data-v-f5f47129]{display:flex;align-items:center;margin-bottom:16px;color:#999;font-size:.85rem}.divider[data-v-f5f47129]:before,.divider[data-v-f5f47129]:after{content:"";flex:1;border-top:1px solid #e0e0e0}.divider span[data-v-f5f47129]{padding:0 16px}.url-input-row[data-v-f5f47129]{display:flex;gap:8px}.url-input[data-v-f5f47129]{flex:1;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .2s}.url-input[data-v-f5f47129]:focus{border-color:#667eea}.url-btn[data-v-f5f47129]{padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:.95rem;cursor:pointer;transition:background .2s;white-space:nowrap}.url-btn[data-v-f5f47129]:hover{background:#5a6fd6}.preview-header[data-v-f5f47129]{background:#fff;border-radius:16px 16px 0 0;padding:20px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 15px #0000001a}.file-name[data-v-f5f47129]{font-size:1.1rem;font-weight:600;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.back-btn[data-v-f5f47129]{padding:8px 20px;background:#f0f0f0;border:none;border-radius:8px;font-size:.95rem;cursor:pointer;transition:all .2s ease}.back-btn[data-v-f5f47129]:hover{background:#e0e0e0}.header-actions[data-v-f5f47129]{display:flex;align-items:center;gap:8px}.header-btn[data-v-f5f47129]{padding:8px 14px;background:#f0f0f0;border:none;border-radius:8px;font-size:1.1rem;cursor:pointer;transition:all .2s ease;line-height:1}.header-btn[data-v-f5f47129]:hover{background:#e0e0e0}.reader-mode .header[data-v-f5f47129],.reader-mode .main-content[data-v-f5f47129]{max-width:none;padding-left:0;padding-right:0;margin:0}.reader-mode .header[data-v-f5f47129]{padding:16px 20px}.reader-mode .header h1[data-v-f5f47129]{font-size:1.6rem}.reader-mode .header p[data-v-f5f47129]{display:none}.reader-mode .preview-header[data-v-f5f47129]{border-radius:0}.reader-mode .doc-preview[data-v-f5f47129]{border-radius:0;min-height:100vh}@media (max-width: 640px){.header[data-v-f5f47129]{padding:28px 16px}.header h1[data-v-f5f47129]{font-size:1.6rem}.header p[data-v-f5f47129]{font-size:.9rem}.upload-area[data-v-f5f47129]{padding:40px 20px;border-radius:12px}.upload-area h2[data-v-f5f47129]{font-size:1.3rem}.upload-icon[data-v-f5f47129]{font-size:4rem}.upload-btn[data-v-f5f47129]{padding:12px 32px;font-size:1rem}.url-input-row[data-v-f5f47129]{flex-direction:column;gap:8px}.url-btn[data-v-f5f47129]{width:100%;padding:12px}.preview-header[data-v-f5f47129]{padding:14px 16px;flex-wrap:wrap;gap:8px}.file-name[data-v-f5f47129]{font-size:.9rem;max-width:60%}.main-content[data-v-f5f47129]{padding:0 12px 24px}}
