#root,body,html{height:100%;margin:0;padding:0}.navbar{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--surface);border-bottom:none;display:flex;flex-shrink:0;gap:0;height:52px;padding:0 20px;position:relative}.navbar:after{background:linear-gradient(90deg,#0000,var(--accent),#0000);bottom:0;content:"";height:1px;left:0;opacity:.3;position:absolute;right:0}.nav-brand{flex-shrink:0;gap:10px;margin-right:16px}.nav-brand,.nav-logo{align-items:center;display:flex}.nav-logo{border-radius:8px;height:32px;justify-content:center;overflow:hidden;transition:transform .3s,box-shadow .3s;width:32px}.nav-logo:hover{box-shadow:0 0 16px #3ecf8e59;transform:rotate(-6deg) scale(1.08)}.nav-logo img{height:100%;object-fit:cover;width:100%}.nav-title{color:var(--text-primary);font-size:15px;font-weight:700;letter-spacing:-.3px;white-space:nowrap}.nav-title span{color:var(--accent);font-weight:400}.nav-actions{align-items:center;display:flex;flex:1 1;gap:6px;justify-content:flex-end;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.nav-actions::-webkit-scrollbar{display:none}.nav-group{align-items:center;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;display:flex;gap:2px;padding:3px}.nav-sep{flex-shrink:0;width:4px}.nav-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:var(--font-ui);gap:3px;height:26px;justify-content:center;min-width:26px;padding:5px;position:relative;transition:all .15s}.nav-btn:hover{background:#ffffff14;color:var(--text-primary)}.nav-btn:active{transform:scale(.92)}.nav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-btn svg{flex-shrink:0}.nav-btn-accent{color:var(--accent)}.nav-btn-accent:hover{background:#3ecf8e26;box-shadow:0 0 12px #3ecf8e33;color:var(--accent)}.nav-save-btn{color:var(--accent)!important}.nav-save-btn:hover{background:#3ecf8e26!important}.theme-popover-wrapper{flex-shrink:0;margin-left:6px;position:relative}.theme-popover{background:var(--surface-elevated);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000004d;margin-top:6px;min-width:160px;padding:8px;position:absolute;right:0;top:100%;z-index:1000}.theme-popover-toggle{background:#0000;border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;font-family:var(--font-ui);font-size:12px;padding:6px 10px;text-align:left;transition:background .15s;width:100%}.theme-popover-toggle:hover{background:#ffffff14}.light .theme-popover-toggle:hover{background:#0000000f}.theme-popover-divider{background:var(--border);height:1px;margin:6px 0}.theme-popover-label{color:var(--text-tertiary);font-family:var(--font-ui);font-size:10px;letter-spacing:.5px;padding:2px 10px 4px;text-transform:uppercase}.theme-popover-colors{display:flex;flex-wrap:wrap;gap:6px;padding:4px 6px}.accent-dot{border:2px solid #0000;border-radius:50%;cursor:pointer;height:18px;padding:0;transition:all .15s;width:18px}.accent-dot:hover{transform:scale(1.2)}.accent-dot.active{border-color:var(--text-primary);box-shadow:0 0 6px currentColor}.nav-btn-share{border-radius:6px;padding:5px 8px}.nav-btn-share,.nav-btn-share:hover{background:var(--accent);color:#1c1c1c}.nav-btn-share:hover{box-shadow:0 0 12px var(--accent-dim);filter:brightness(1.1)}.nav-btn-share svg{stroke:#1c1c1c}.nav-btn-skill{border-radius:6px;font-family:var(--font-mono);font-size:9px;font-weight:800;padding:5px 8px}.nav-btn-skill,.nav-btn-skill:hover{background:var(--accent);color:#1c1c1c}.nav-btn-skill:hover{box-shadow:0 0 12px var(--accent-dim);filter:brightness(1.1)}.nav-btn-skill svg{stroke:#1c1c1c}.nav-copy{font-family:var(--font-mono);font-size:9px;font-weight:800;letter-spacing:-.3px}.user-badge{align-items:center;background:var(--accent-dim);border:1px solid #3ecf8e33;border-radius:12px;color:var(--accent);cursor:pointer;display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:3px 8px;transition:all .15s;white-space:nowrap}.user-badge:hover{background:var(--accent);color:#1c1c1c}.user-badge-role{color:var(--text-tertiary);font-size:10px;letter-spacing:.3px;text-transform:uppercase}.light .nav-btn:hover{background:#0000000f}.light .nav-group{background:#00000008;border-color:#0000001a}.light .navbar:after{opacity:.4}.tab-bar{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:none;flex-shrink:0;min-height:0;overflow-x:auto}.tab-bar.has-tabs,.tab-item{display:flex}.tab-item{align-items:center;border-right:1px solid var(--border);color:var(--text-secondary);cursor:pointer;flex-shrink:0;font-family:var(--font-mono);font-size:12px;gap:6px;padding:6px 10px;transition:all .15s;white-space:nowrap}.tab-item:hover{background:var(--surface-hover);color:var(--text-primary)}.tab-item.active{background:var(--surface-elevated);box-shadow:inset 0 -2px 0 var(--accent);color:var(--accent)}.tab-close{align-items:center;background:none;border:none;border-radius:3px;color:var(--text-tertiary);cursor:pointer;display:inline-flex;font-size:14px;height:16px;justify-content:center;width:16px}.tab-close:hover{background:#f8717126;color:var(--danger)}.tab-rename-input{background:var(--code-bg);border:1px solid var(--accent);border-radius:3px;color:var(--text-primary);font-family:var(--font-mono);font-size:12px;outline:none;padding:1px 4px;width:140px}.rich-editor{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.rich-toolbar{align-items:center;background:var(--surface-elevated);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;flex-wrap:wrap;gap:2px;padding:6px 12px}.rich-toolbar-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-family:var(--font-ui);font-size:13px;font-weight:600;height:28px;justify-content:center;min-width:28px;padding:0 6px;transition:all .15s}.rich-toolbar-btn:hover{background:#ffffff14;color:var(--text-primary)}.rich-toolbar-btn:active{background:var(--accent-dim);color:var(--accent)}.rich-save-btn{color:var(--accent)!important;font-weight:700;gap:4px}.rich-save-btn:hover{background:var(--accent-dim)!important}.rich-download-btn{color:var(--text-secondary)!important;gap:4px}.rich-download-btn:hover{color:var(--text-primary)!important}.rich-toolbar-sep{background:var(--border);height:20px;margin:0 4px;width:1px}.rich-editor-body{cursor:text;flex:1 1;font-size:15px;outline:none;overflow-y:auto;padding:24px 32px}.rich-editor-body:focus{outline:none}.mermaid-edit-block{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;border-radius:var(--radius,8px);margin:12px 0;padding:16px;position:relative;-webkit-user-select:none;user-select:none}.mermaid-edit-label{color:var(--text-tertiary);font-family:var(--font-mono);font-size:11px;letter-spacing:.5px;position:absolute;right:10px;text-transform:uppercase;top:8px}.mermaid-edit-code{background:#0000;border:none;color:var(--text-secondary);font-family:var(--font-mono);font-size:12px;line-height:1.5;margin:0;max-height:120px;overflow:hidden;padding:0;white-space:pre-wrap}.mermaid-preview{margin-bottom:12px;text-align:center}.mermaid-preview svg{max-width:100%}.mermaid-edit-btn{align-items:center;background:var(--accent-dim);border:1px solid var(--accent);border-radius:4px;color:var(--accent);cursor:pointer;display:inline-flex;font-family:var(--font-ui);font-size:12px;font-weight:600;gap:4px;margin-top:10px;padding:5px 14px;transition:all .15s}.mermaid-edit-btn:hover{background:var(--accent);color:#000}.diagram-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:300}.diagram-modal{background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:700px;width:90%}.diagram-modal-header{align-items:center;border-bottom:1px solid var(--border);color:var(--text-primary);display:flex;font-size:15px;font-weight:700;justify-content:space-between;padding:14px 20px}.diagram-modal-textarea{background:var(--code-bg);border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-mono);font-size:13px;line-height:1.6;margin:0;min-height:300px;outline:none;padding:16px 20px;resize:none;tab-size:2}.diagram-modal-footer{border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding:12px 20px}.viewer-container{display:flex;flex-direction:column;height:100%}.content-bar{background:var(--surface-elevated);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;padding:8px 14px}.content-bar,.content-bar-left{align-items:center;display:flex}.content-bar-left{gap:8px}.content-bar-right{align-items:center;display:flex;gap:4px}.sub-tabs{display:flex;gap:2px}.sub-tab{background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;font-family:var(--font-ui);font-size:12px;font-weight:500;padding:3px 10px;transition:all .15s}.sub-tab:hover{background:#ffffff0f;color:var(--text-primary)}.sub-tab.active{background:var(--accent-dim);color:var(--accent)}.filename-label{color:var(--text-secondary);cursor:pointer;font-family:var(--font-mono);font-size:13px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filename-input,.filename-label:hover{color:var(--text-primary)}.filename-input{background:var(--code-bg);border:1px solid var(--accent);border-radius:4px;font-family:var(--font-mono);font-size:13px;max-width:300px;outline:none;padding:2px 6px}.zoom-level-label{color:var(--text-tertiary);font-size:12px;font-weight:500;min-width:36px;text-align:center}.zoom-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:600;height:26px;justify-content:center;transition:all .15s;width:26px}.zoom-btn:hover{background:#ffffff0f;color:var(--text-primary)}.preview-output{flex:1 1;font-family:var(--font-ui);font-size:15px;overflow:auto;padding:24px 32px}.code-view{display:flex;font-family:var(--font-mono);font-size:13px;line-height:1.7}.line-numbers{border-right:1px solid var(--border);color:var(--text-tertiary);flex-shrink:0;margin-right:16px;padding:0 12px 0 0;text-align:right;-webkit-user-select:none;user-select:none;white-space:pre}.code-content{background:#0000;flex:1 1;margin:0;overflow-x:auto}.code-content code{font-family:inherit}.md-body{word-wrap:break-word;color:var(--text-primary);font-family:var(--font-ui);font-size:15px;line-height:1.7}.md-body h1{font-size:1.8em;margin-top:1.5em;padding-bottom:.3em}.md-body h1,.md-body h2{border-bottom:1px solid var(--border);margin-bottom:.5em}.md-body h2{font-size:1.45em;margin-top:1.3em;padding-bottom:.25em}.md-body h3{font-size:1.2em;margin-bottom:.4em;margin-top:1.2em}.md-body h4,.md-body h5,.md-body h6{margin-bottom:.4em;margin-top:1em}.md-body code{background:var(--accent-dim);border:1px solid #3ecf8e33;border-radius:4px;color:var(--accent);font-family:var(--font-mono);font-size:.88em;padding:.2em .5em}.md-body pre,.md-body pre.hljs{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius);margin:1em 0;overflow-x:auto;padding:16px}.md-body pre code,.md-body pre code.hljs{background:none!important;border:none;color:var(--text-primary);font-size:.88em;line-height:1.6;padding:0}.md-body blockquote{background:var(--accent-dim);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;color:var(--text-secondary);margin:.8em 0;padding:.5em 1em}.md-body table{border-collapse:collapse;margin:1em 0;width:100%}.md-body td,.md-body th{border:1px solid var(--border);padding:8px 12px;text-align:left}.md-body th{background:var(--surface-elevated);font-weight:600}.md-body tr:nth-child(2n){background:var(--accent-dim)}.md-body a{color:var(--accent);text-decoration:none}.md-body a:hover{text-decoration:underline}.md-body img{border-radius:var(--radius);max-width:100%}.md-body hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}.md-body ol,.md-body ul{margin:.5em 0 1em 1.5em}.md-body p{margin:.6em 0}.json-tree{font-family:var(--font-mono);font-size:13px;line-height:1.6}.json-tree details{display:inline}.json-tree summary{cursor:pointer;display:inline;list-style:none}.json-tree summary::-webkit-details-marker{display:none}.json-tree summary:before{color:var(--text-tertiary);content:"\25BC ";font-size:10px;margin-right:2px}.json-tree details:not([open])>summary:before{content:"\25B6 "}.json-tree .json-item{display:block}.json-tree .json-bracket{color:var(--text-secondary)}.json-tree .json-count{color:var(--text-tertiary);font-size:11px;font-style:italic}.json-tree .json-key{color:var(--accent)}.json-tree .json-string{color:#e9967a}.json-tree .json-number{color:#b5cea8}.json-tree .json-boolean{color:#569cd6}.json-tree .json-null{color:var(--text-tertiary);font-style:italic}html.light .json-tree .json-string{color:#a31515}html.light .json-tree .json-number{color:#098658}html.light .json-tree .json-boolean{color:#00f}html.light .json-tree .json-null{color:grey}html.light .json-tree .json-key{color:#0451a5}.json-tree .json-error{color:var(--danger);font-weight:600}.md-body pre.mermaid-wrapper{background:#0000;border:none;padding:0;text-align:center}.plantuml-block{padding:16px 0;text-align:center}.plantuml-block img{max-width:100%}.html-preview-iframe{background:#fff;border:none;border-radius:var(--radius);height:100%;width:100%}.editor-textarea{background:var(--code-bg);border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-mono);font-size:13px;line-height:1.7;outline:none;padding:16px;resize:none;tab-size:4}.md-body .task-list-item{list-style:none;margin-left:-1.5em}.md-body .task-list-item input[type=checkbox]{accent-color:var(--accent);margin-right:6px}.welcome-state{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:16px;justify-content:center;padding:60px}.welcome-icon{font-size:48px;opacity:.4}.welcome-title{color:var(--text-secondary);font-size:18px;font-weight:600}.welcome-sub{color:var(--text-tertiary);font-size:13px;line-height:1.6;text-align:center}.welcome-actions{display:flex;gap:8px;margin-top:8px}.welcome-mydocs{margin-top:24px;max-width:480px;width:100%}.welcome-mydocs-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.welcome-mydocs-header h3{color:var(--text-secondary);font-size:14px;font-weight:600}.welcome-mydocs-search{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:var(--font-ui);font-size:12px;outline:none;padding:5px 10px;width:180px}.welcome-mydocs-search:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.welcome-mydocs-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.welcome-doc-item{align-items:center;background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:8px 12px;transition:all .15s}.welcome-doc-item:hover{background:var(--surface-hover);border-color:var(--accent)}.welcome-doc-meta{color:var(--text-tertiary);font-size:11px}.welcome-mydocs-empty,.welcome-mydocs-loading{color:var(--text-tertiary);font-size:12px;padding:16px;text-align:center}.status-bar{background:var(--surface-elevated);font-size:12px;padding:4px 16px}.status-left,.status-right{align-items:center;display:flex;gap:16px}.status-local-badge{color:var(--warning);font-weight:600}.status-cloud-badge{color:var(--accent);font-weight:600}.search-bar{align-items:center;background:var(--surface-elevated);border-bottom:1px solid var(--border);display:none;flex-shrink:0;gap:6px;padding:8px 16px}.search-bar.active{display:flex}.search-input-wrapper{flex:1 1;max-width:480px;position:relative}.search-input-wrapper input{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:var(--font-ui);font-size:14px;outline:none;padding:7px 12px;width:100%}.search-input-wrapper input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.search-input-wrapper .search-count{color:var(--text-tertiary);font-size:12px;pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.search-nav-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;height:30px;justify-content:center;transition:all .15s;width:30px}.search-nav-btn:hover:not(:disabled){background:var(--surface-elevated);border-color:var(--text-tertiary);color:var(--text-primary)}.search-nav-btn:disabled{cursor:default;opacity:.4}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:200}.modal-content{background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;max-height:70vh;max-width:560px;width:90%}.modal-header h2{color:var(--text-primary);font-size:16px;font-weight:700}.modal-close{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;width:28px}.modal-close:hover{background:var(--border)}.mydocs-tabs{border-bottom:1px solid var(--border);display:flex;padding:0 20px}.mydocs-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-family:var(--font-ui);font-size:13px;font-weight:600;padding:8px 16px;transition:all .15s}.mydocs-tab:hover{color:var(--text-primary)}.mydocs-tab.active{border-bottom-color:var(--accent);color:var(--accent)}.modal-body{overflow-y:auto;padding:8px 0}.modal-empty,.modal-loading{color:var(--text-secondary);font-size:14px;padding:40px 20px;text-align:center}.doc-list{display:flex;flex-direction:column}.doc-item{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:12px 20px;transition:background .15s}.doc-item:hover{background:var(--surface-elevated)}.doc-info{display:flex;flex-direction:column;gap:2px;min-width:0}.doc-title{color:var(--text-primary);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-meta{font-size:12px}.doc-arrow,.doc-meta{color:var(--text-tertiary)}.doc-arrow{flex-shrink:0;font-size:20px}.doc-add-badge{background:var(--accent-dim);border-radius:4px;color:var(--accent);flex-shrink:0;font-size:11px;font-weight:600;padding:3px 10px}.open-url-body{display:flex;flex-direction:column;gap:12px;padding:20px}.open-url-input{background:var(--code-bg);border:1px solid var(--border);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-family:var(--font-mono);font-size:14px;outline:none;padding:10px 12px;width:100%}.open-url-input:focus{border-color:var(--accent)}.open-url-input::placeholder,.open-url-note{color:var(--text-tertiary)}.open-url-note{font-size:12px}.open-url-error{color:var(--danger);font-size:13px}.open-url-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.open-url-actions button{border:1px solid var(--border);border-radius:6px;cursor:pointer;font-family:var(--font-ui);font-size:13px;font-weight:600;padding:8px 18px;transition:all .15s}.open-url-cancel{background:#0000;color:var(--text-secondary)}.open-url-cancel:hover{background:var(--surface-elevated);color:var(--text-primary)}.open-url-load{background:var(--accent);border-color:var(--accent);color:#000}.open-url-load:hover{opacity:.9}.open-url-load:disabled{cursor:not-allowed;opacity:.5}.toc-sidebar{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:240px;width:var(--sidebar-width,240px)}.toc-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 16px}.toc-title{color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.toc-close{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;width:24px}.toc-close:hover{background:var(--border)}.toc-body{flex:1 1;overflow-y:auto;padding:8px 0}.toc-item{border-left:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:13px;overflow:hidden;padding:5px 16px;text-overflow:ellipsis;transition:all .15s;white-space:nowrap}.toc-item:hover{background:var(--accent-dim);border-left-color:var(--accent);color:var(--accent)}.toc-level-1{color:var(--text-primary);font-weight:600;padding-left:14px}.toc-level-2{padding-left:28px}.toc-level-3{padding-left:40px}.toc-level-4{padding-left:52px}.toc-level-5{padding-left:64px}.toc-level-6{padding-left:76px}.toc-empty{color:var(--text-tertiary);font-size:13px;padding:24px 16px;text-align:center}.comments-sidebar{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;max-width:360px;min-width:280px;overflow:hidden;width:240px;width:var(--sidebar-width,240px)}.comments-header{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 14px}.comments-header-title{color:var(--text-tertiary);font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.comments-close{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;transition:background .15s;width:24px}.comments-close:hover{background:var(--border)}.comments-body{flex:1 1;overflow-y:auto;padding:0;scrollbar-color:var(--border) #0000;scrollbar-width:thin}.comments-body::-webkit-scrollbar{width:4px}.comments-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.comments-empty{color:var(--text-tertiary);font-size:12px;line-height:1.5;padding:24px 14px;text-align:center}.cs-activity-item{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;font-size:12px;gap:8px;padding:8px 14px}.cs-activity-icon{align-items:center;background:var(--surface-hover);border-radius:50%;color:var(--text-tertiary);display:flex;flex-shrink:0;font-size:12px;height:24px;justify-content:center;width:24px}.cs-activity-body{flex:1 1;min-width:0}.cs-activity-text{color:var(--text-secondary);font-size:12px;line-height:1.4}.cs-activity-text strong{color:var(--text-primary);font-weight:600}.cs-activity-time{color:var(--text-tertiary);font-size:10px;margin-top:2px}.cs-comment-item{border-bottom:1px solid var(--border);padding:10px 14px;transition:background .15s}.cs-comment-item:hover{background:var(--surface-hover)}.cs-comment-item.cs-resolved{opacity:.5}.cs-comment-item.cs-resolved .cs-comment-text{text-decoration:line-through}.cs-comment-header{align-items:center;display:flex;gap:8px;margin-bottom:4px}.cs-comment-avatar{align-items:center;background:var(--accent-dim);border-radius:50%;color:var(--accent);display:flex;flex-shrink:0;font-size:11px;font-weight:600;height:24px;justify-content:center;width:24px}.cs-comment-author{color:var(--text-primary);font-size:12px;font-weight:600}.cs-comment-time{color:var(--text-tertiary);font-size:11px;margin-left:auto;white-space:nowrap}.cs-comment-selection{background:var(--accent-dim);border-left:2px solid var(--accent);border-radius:4px;color:var(--text-secondary);font-size:11px;font-style:italic;margin-bottom:6px;overflow:hidden;padding:4px 8px;text-overflow:ellipsis;white-space:nowrap}.cs-comment-text{color:var(--text-primary);font-size:13px;line-height:1.5;word-break:break-word}.cs-comment-actions{display:flex;gap:8px;margin-top:6px}.cs-action-btn{background:none;border:none;border-radius:3px;color:var(--text-tertiary);cursor:pointer;font-family:var(--font-ui);font-size:11px;padding:2px 4px;transition:all .15s}.cs-action-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.cs-action-btn.cs-resolve-btn:hover{background:var(--accent-dim);color:var(--accent)}.cs-action-btn.cs-unresolve-btn:hover{background:#fbbf241a;color:var(--warning)}.cs-action-btn.cs-delete-btn:hover{background:#f871711a;color:var(--danger)}.cs-replies{border-top:1px solid var(--border);margin-left:32px}.cs-reply{padding:6px 0}.cs-reply .cs-comment-header{margin-bottom:2px}.cs-reply .cs-comment-text{font-size:12px}.cs-reply-input-wrap{display:flex;gap:6px;margin-left:32px;padding:6px 0}.cs-reply-input-wrap input{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);flex:1 1;font-family:var(--font-ui);font-size:12px;outline:none;padding:4px 8px}.cs-reply-input-wrap input:focus{border-color:var(--accent)}.cs-edit-wrap{margin-top:4px}.cs-edit-wrap textarea{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:var(--font-ui);font-size:13px;min-height:48px;outline:none;padding:6px 8px;resize:vertical;width:100%}.cs-edit-wrap textarea:focus{border-color:var(--accent)}.cs-edit-actions{display:flex;gap:6px;margin-top:4px}.comments-add-section{border-top:1px solid var(--border);flex-shrink:0;padding:10px 14px}.comments-add-section textarea{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:var(--font-ui);font-size:13px;max-height:120px;min-height:56px;outline:none;padding:8px 10px;resize:vertical;width:100%}.comments-add-section textarea:focus{border-color:var(--accent)}.comments-add-section textarea::placeholder{color:var(--text-tertiary)}.comments-add-actions{display:flex;justify-content:flex-end;margin-top:8px}.cs-confirm-delete{background:#f8717114;border-radius:4px;color:var(--text-secondary);font-size:11px;margin-top:6px;padding:6px 8px}.cs-confirm-delete-actions{display:flex;gap:6px;margin-top:4px}.cs-loading{color:var(--text-tertiary);font-size:12px;padding:24px 14px;text-align:center}.version-sidebar{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:240px;width:var(--sidebar-width,240px)}.version-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 16px}.version-header-title{color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.version-close{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;width:24px}.version-close:hover{background:var(--border)}.version-actions{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:8px;padding:8px 14px}.version-compare-btn{background:#0000;border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);cursor:pointer;display:none;font-family:var(--font-ui);font-size:11px;padding:4px 10px;transition:all .15s}.version-compare-btn.visible{display:inline-block}.version-compare-btn:hover{background:var(--accent);color:#1c1c1c}.version-body{flex:1 1;overflow-y:auto;padding:4px 0}.version-body::-webkit-scrollbar{width:4px}.version-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.version-empty,.version-loading{color:var(--text-tertiary);font-size:13px;padding:24px 16px;text-align:center}.version-item{align-items:flex-start;border-left:3px solid #0000;cursor:pointer;display:flex;gap:10px;padding:10px 14px;transition:background .15s}.version-item.active,.version-item:hover{background:var(--surface-elevated)}.version-item.active,.version-item.selected{border-left-color:var(--accent)}.version-item.selected{background:var(--accent-dim)}.version-item-dot{background:var(--accent);border-radius:50%;flex-shrink:0;height:10px;margin-top:4px;width:10px}.version-item-dot.head{box-shadow:0 0 0 3px var(--accent-dim);height:12px;margin-top:3px;width:12px}.version-item-info{flex:1 1;min-width:0}.version-item-author{color:var(--text-primary);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-item-time{color:var(--text-tertiary);font-size:11px;margin-top:2px}.version-item-badges{align-items:center;display:flex;gap:4px;margin-top:4px}.version-badge-head{background:var(--accent-dim);border:1px solid var(--accent);border-radius:4px;color:var(--accent);font-weight:700;text-transform:uppercase}.version-badge-branch,.version-badge-head{display:inline-block;font-family:var(--font-mono);font-size:9px;padding:1px 6px}.version-badge-branch{background:var(--surface-elevated);border:1px solid var(--border);border-radius:4px;color:var(--text-secondary)}.version-item-actions{align-items:center;display:flex;flex-shrink:0;gap:4px;opacity:0;transition:opacity .15s}.version-item:hover .version-item-actions{opacity:1}.version-restore-btn{background:#0000;border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-family:var(--font-ui);font-size:11px;padding:2px 8px;transition:all .15s}.version-restore-btn:hover{border-color:var(--accent);color:var(--accent)}.version-load-more{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:block;font-family:var(--font-ui);font-size:12px;margin:8px 14px;padding:6px;text-align:center;transition:all .15s;width:calc(100% - 28px)}.version-load-more:hover{background:var(--accent-dim)}.diff-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;display:flex;flex-direction:column;inset:0;position:fixed;z-index:9500}.diff-bar{background:var(--surface-elevated);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;padding:10px 16px}.diff-bar,.diff-bar-left{align-items:center;display:flex}.diff-bar-left{flex:1 1;gap:12px;min-width:0}.diff-bar-right{align-items:center;display:flex;gap:6px}.diff-label{color:var(--text-secondary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-label strong{color:var(--text-primary)}.diff-arrow{color:var(--text-tertiary);flex-shrink:0;font-size:14px}.diff-body{background:var(--bg);flex:1 1;font-family:var(--font-mono);font-size:13px;overflow:auto;padding:0}.diff-body::-webkit-scrollbar{height:6px;width:6px}.diff-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.diff-table{border-collapse:collapse;width:100%}.diff-table td{padding:0 12px;vertical-align:top;white-space:pre-wrap;word-break:break-all}.diff-line-num{color:var(--text-tertiary);font-size:11px;min-width:40px;opacity:.6;text-align:right;width:40px}.diff-gutter,.diff-line-num{-webkit-user-select:none;user-select:none}.diff-gutter{font-weight:700;min-width:16px;text-align:center;width:16px}.diff-line-add{background:#3ecf8e1a}.diff-line-add .diff-gutter,.diff-line-add .diff-line-num{color:var(--accent)}.diff-line-del{background:#f871711a}.diff-line-del .diff-gutter,.diff-line-del .diff-line-num{color:var(--danger)}.diff-line-ctx{background:#0000}.restore-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:9600}.restore-panel{background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-width:400px;padding:24px;text-align:center;width:90vw}.restore-panel-title{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:8px}.restore-panel-desc{color:var(--text-secondary);font-size:13px;line-height:1.5;margin-bottom:16px}.restore-panel-actions{display:flex;gap:8px;justify-content:center}.books-library{background:var(--bg);flex:1 1;overflow-y:auto;padding:32px 40px}.books-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.books-title{color:var(--text-primary);font-size:22px;font-weight:700}.books-create-btn{background:var(--accent);border:none;border-radius:8px;color:#1c1c1c;cursor:pointer;font-family:var(--font-ui);font-size:13px;font-weight:600;padding:8px 18px;transition:filter .15s}.books-create-btn:hover{filter:brightness(1.1)}.books-empty{padding:80px 20px;text-align:center}.books-empty-icon{color:var(--text-tertiary);margin-bottom:16px}.books-empty-text{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:6px}.books-empty-sub{color:var(--text-tertiary);font-size:13px}.books-shelf{perspective:1200px}.shelf-row{display:flex;flex-wrap:wrap;gap:36px 28px;padding-bottom:32px}.book-slot{cursor:pointer;transition:transform .25s,box-shadow .25s}.book-slot:hover{transform:translateY(-4px)}.book-cover-title{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#ffffffeb;display:-webkit-box;font-size:14px;font-weight:700;line-height:1.3;max-height:54px;overflow:hidden;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 3px #0006}.book-cover-pages{color:#ffffff8c;font-size:10px;letter-spacing:.5px;margin-top:auto;padding-top:8px;text-transform:uppercase}.book-create-form{align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;gap:28px;margin-bottom:28px;padding:24px}.book-create-preview{flex-shrink:0}.book-3d-flat{height:190px;width:140px}.book-cover-flat{align-items:center;background:#2d5a3d;background:var(--book-color,#2d5a3d);background-image:linear-gradient(135deg,#ffffff14,#0000 50%,#00000014);border-left:4px solid #00000026;border-radius:4px 8px 8px 4px;box-shadow:0 2px 8px #00000026,0 4px 12px #0000001a;display:flex;flex-direction:column;height:100%;justify-content:center;padding:16px 12px;width:100%}html.light .book-cover-flat{filter:brightness(1.2) saturate(1.15)}.book-create-fields{display:flex;flex:1 1;flex-direction:column;gap:10px}.book-create-fields input{background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-family:var(--font-ui);font-size:15px;outline:none;padding:10px 14px}.book-create-fields input:focus{border-color:var(--accent)}.book-create-label{color:var(--text-tertiary);font-size:11px;font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.book-create-colors{display:flex;flex-wrap:wrap;gap:8px}.book-color-dot{border:2px solid #0000;border-radius:50%;cursor:pointer;height:26px;transition:all .15s;width:26px}.book-color-dot:hover{transform:scale(1.15)}.book-color-dot.active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--text-secondary)}.book-create-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.book-context-menu{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);min-width:140px;padding:4px;position:fixed;z-index:3000}.book-context-menu button{background:#0000;border:none;border-radius:4px;color:#f87171;color:var(--danger,#f87171);cursor:pointer;display:block;font-family:var(--font-ui);font-size:13px;padding:8px 12px;text-align:left;width:100%}.book-context-menu button:hover{background:#f871711f}.book-view{background:var(--bg);flex:1 1;margin:0 auto;max-width:720px;overflow-y:auto;padding:32px 40px}.book-view-header{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;gap:20px;margin-bottom:32px;padding-bottom:24px}.book-back-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-family:var(--font-ui);font-size:13px;gap:6px;padding:4px 8px;transition:all .15s}.book-back-btn:hover{background:var(--border);background:var(--surface-hover,var(--border));color:var(--text-primary)}.book-view-cover-mini{flex-shrink:0;height:72px;position:relative;transform:perspective(300px) rotateY(-8deg);transform-style:preserve-3d;width:56px}.book-mini-spine{background:#2d5a3d;background:var(--book-color,#2d5a3d);background-image:linear-gradient(90deg,#00000026,#ffffff0d 50%,#00000014);border-radius:2px 0 0 2px;left:0;width:10px}.book-mini-front,.book-mini-spine{height:100%;position:absolute;top:0}.book-mini-front{align-items:center;background:#2d5a3d;background:var(--book-color,#2d5a3d);background-image:linear-gradient(135deg,#ffffff14,#0000 50%,#00000014);border-radius:0 4px 4px 0;box-shadow:0 2px 6px #0000001f;display:flex;justify-content:center;left:8px;right:0}.book-mini-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));font-size:22px}html.light .book-mini-front,html.light .book-mini-spine{filter:brightness(1.2) saturate(1.15)}.book-view-info{flex:1 1;min-width:0}.book-view-title{color:var(--text-primary);cursor:pointer;font-size:24px;font-weight:700;line-height:1.2;margin:0 0 4px}.book-view-title:hover{color:var(--accent)}.book-view-title-input{background:var(--surface);border:1px solid var(--accent);border-radius:6px;color:var(--text-primary);font-family:var(--font-ui);font-size:24px;font-weight:700;outline:none;padding:4px 8px;width:100%}.book-view-desc{color:var(--text-secondary);cursor:pointer;font-size:14px;line-height:1.4;margin:0 0 8px}.book-view-desc-input,.book-view-desc:hover{color:var(--text-primary)}.book-view-desc-input{background:var(--surface);border:1px solid var(--accent);border-radius:6px;font-family:var(--font-ui);font-size:14px;outline:none;padding:4px 8px;width:100%}.book-view-meta{color:var(--text-tertiary);font-size:12px}.book-toc{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.book-toc-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:14px 20px}.book-toc-label{color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:.3px;margin-right:16px}.book-toc-header-actions{display:flex;gap:8px}.book-add-page-btn{background:var(--accent);border:none;border-radius:6px;color:#1c1c1c;cursor:pointer;font-family:var(--font-ui);font-size:12px;font-weight:600;padding:6px 14px;transition:filter .15s}.book-add-page-btn:hover{filter:brightness(1.1)}.book-add-page-btn.secondary{background:var(--border);background:var(--surface-hover,var(--border));color:var(--text-primary)}.book-add-page-btn.secondary:hover{filter:brightness(1.2)}.book-toc-empty{color:var(--text-tertiary);font-size:13px;line-height:1.6;padding:40px 20px;text-align:center}.book-toc-list{padding:4px 0}.book-toc-item{align-items:center;border-bottom:1px solid #0000;cursor:default;display:flex;font-family:var(--font-ui);gap:10px;padding:12px 20px;position:relative;transition:background .15s}.book-toc-item:hover{background:var(--accent-dim);background:var(--surface-hover,var(--accent-dim))}.book-toc-item:last-child{border-bottom:none}.book-toc-drag-handle{color:var(--text-tertiary);cursor:grab;flex-shrink:0;opacity:.4;transition:opacity .15s}.book-toc-item:hover .book-toc-drag-handle{opacity:1}.book-toc-drag-handle:active{cursor:grabbing}.book-toc-number{color:var(--accent);flex-shrink:0;font-size:13px;font-weight:700;text-align:right;width:24px}.book-toc-format-label{background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--text-tertiary);flex-shrink:0;font-family:var(--font-ui);font-size:10px;font-weight:600;letter-spacing:.3px;padding:2px 6px}.book-toc-page-title{color:var(--text-primary);cursor:pointer;flex:1 1;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;transition:color .15s;white-space:nowrap}.book-toc-page-title:hover{color:var(--accent)}.book-toc-page-format{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text-tertiary);flex-shrink:0;font-size:11px;padding:2px 8px}.book-toc-actions{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-left:auto;opacity:0;transition:opacity .15s}.book-toc-item:hover .book-toc-actions{opacity:1}.book-toc-action-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;display:flex;height:24px;justify-content:center;transition:all .15s;width:24px}.book-toc-action-btn:hover{background:var(--accent-dim);color:var(--accent)}.book-toc-remove{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;transition:all .15s;width:24px}.book-toc-remove:hover{background:#f871711f;color:#f87171;color:var(--danger,#f87171)}.book-toc-move-menu{background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:4px;min-width:180px;padding:4px 0;position:absolute;right:20px;z-index:100}.book-toc-move-header{color:var(--text-tertiary);font-size:11px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.book-toc-move-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 12px;text-align:left;width:100%}.book-toc-move-item:hover{background:var(--accent-dim);background:var(--surface-hover,var(--accent-dim))}.book-toc-move-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.book-toc-item[draggable=true]{-webkit-user-select:none;user-select:none}.book-toc-item:active{background:var(--accent-dim)}.toast-container{bottom:48px;display:flex;flex-direction:column;gap:8px;position:fixed;right:24px;z-index:10000}.toast{align-items:center;animation:toastIn .25s ease,toastOut .25s ease 2.5s forwards;display:flex;gap:8px;padding:10px 18px}.toast-accent{border-left:3px solid var(--accent)}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}:root{--bg:#1c1c1c;--bg-subtle:#171717;--surface:#1c1c1c;--surface-elevated:#242424;--surface-hover:#2a2a2a;--border:#2e2e2e;--border-hover:#3e3e3e;--text-primary:#ededed;--text-secondary:#8f8f8f;--text-tertiary:#666;--accent:#3ecf8e;--accent-hover:#2da872;--accent-dim:#3ecf8e1f;--code-bg:#0d0d0d;--danger:#f87171;--warning:#fbbf24;--shadow:0 2px 8px #0000004d;--radius:8px;--font-ui:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",sans-serif;--font-mono:"SF Mono","Fira Code","Consolas","Monaco",monospace;--sidebar-width:240px;--search-highlight:#3ecf8e59;--search-active:#3ecf8eb3}html.light{--bg:#fafafa;--bg-subtle:#f5f5f5;--surface:#fff;--surface-elevated:#fff;--surface-hover:#f0f0f0;--border:#e5e5e5;--border-hover:#d4d4d4;--text-primary:#171717;--text-secondary:#737373;--text-tertiary:#a3a3a3;--accent:#3ecf8e;--accent-hover:#2da872;--accent-dim:#3ecf8e1a;--code-bg:#f5f5f5;--danger:#ef4444;--warning:#f59e0b;--shadow:0 2px 8px #00000014;--search-highlight:#3ecf8e40;--search-active:#3ecf8e8c}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1c1c1c;background:var(--bg);color:#ededed;color:var(--text-primary);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-family:var(--font-ui);height:100vh;overflow:hidden}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#2e2e2e;background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3e3e3e;background:var(--border-hover)}.btn{align-items:center;background:#242424;background:var(--surface-elevated);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius);color:#ededed;color:var(--text-primary);cursor:pointer;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-family:var(--font-ui);font-size:13px;gap:6px;padding:6px 12px;transition:all .15s ease;white-space:nowrap}.btn:hover{background:#2a2a2a;background:var(--surface-hover);border-color:#3e3e3e;border-color:var(--border-hover)}.btn-accent{background:#3ecf8e;background:var(--accent);border-color:#3ecf8e;border-color:var(--accent);color:#000}.btn-accent:hover{background:#2da872;background:var(--accent-hover);border-color:#2da872;border-color:var(--accent-hover)}.btn-danger{background:#0000;border-color:#f87171;border-color:var(--danger);color:#f87171;color:var(--danger)}.btn-danger:hover{background:#f871711a}.btn-sm{font-size:12px;padding:4px 8px}.btn-icon{align-items:center;background:#0000;border:none;border-radius:8px;border-radius:var(--radius);color:#8f8f8f;color:var(--text-secondary);cursor:pointer;display:inline-flex;justify-content:center;padding:6px;transition:all .15s ease}.btn-icon:hover{background:#2a2a2a;background:var(--surface-hover)}.btn-icon:hover,.toast{color:#ededed;color:var(--text-primary)}.toast{animation:toast-in .2s ease;background:#242424;background:var(--surface-elevated);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius);bottom:24px;box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow);font-size:13px;padding:10px 16px;position:fixed;right:24px;z-index:10000}.toast-success{border-color:#3ecf8e;border-color:var(--accent)}.toast-error{border-color:#f87171;border-color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.drop-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.drop-overlay-content{background:#242424;background:var(--surface-elevated);border:2px dashed #3ecf8e;border:2px dashed var(--accent);border-radius:16px;color:#ededed;color:var(--text-primary);font-size:18px;padding:40px 60px;text-align:center}.status-bar{align-items:center;background:#171717;background:var(--bg-subtle);border-top:1px solid #2e2e2e;border-top:1px solid var(--border);color:#666;color:var(--text-tertiary);display:flex;flex-shrink:0;font-size:11px;height:24px;justify-content:space-between;padding:0 12px}.status-bar-left,.status-bar-right{align-items:center;display:flex;gap:12px}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:9000}.modal{background:#242424;background:var(--surface-elevated);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow);max-height:85vh;max-width:90vw;min-width:320px;overflow:auto}.modal-header{align-items:center;border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 20px}.modal-header h2{font-size:15px;font-weight:600}.modal-body{padding:20px}.modal-footer{align-items:center;border-top:1px solid #2e2e2e;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding:12px 20px}mark.search-hl{background:#ffd5004d;border-radius:2px;padding:0 1px}mark.search-hl.active{background:#ffd50099;outline:2px solid #3ecf8e;outline:2px solid var(--accent)}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.content-area,.main-wrapper{display:flex;flex:1 1;overflow:hidden}.content-area{flex-direction:column}.app-main{display:flex;flex:1 1;overflow:hidden}mark.comment-highlight{background:#ffdc3240;border-radius:2px;cursor:pointer;transition:background .15s}mark.comment-highlight:hover{background:#ffdc3259}mark.comment-highlight.active{background:#ffdc3273;outline:1px solid #ffdc32b3}.comment-popover{display:none;z-index:1500}.comment-popover.active{align-items:flex-start;display:flex;flex-direction:column;gap:4px}.comment-popover-btn{align-items:center;background:var(--accent);border:none;border-radius:6px;box-shadow:0 2px 8px #0000004d;color:#1c1c1c;cursor:pointer;display:flex;font-family:var(--font-ui);font-size:12px;font-weight:600;gap:6px;padding:6px 12px;transition:all .15s;white-space:nowrap}.comment-popover-btn:hover{filter:brightness(1.1)}.comment-popover-input{background:var(--surface);background:var(--surface-elevated,var(--surface));border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000004d;display:none;flex-direction:column;gap:8px;min-width:260px;padding:10px}.comment-popover-input.active{display:flex}.comment-popover-input textarea{background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:var(--font-ui);font-size:13px;min-height:56px;outline:none;padding:8px 10px;resize:vertical;width:100%}.comment-popover-input textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.comment-popover-actions{display:flex;gap:6px;justify-content:flex-end}.comment-inline-popup{background:linear-gradient(135deg,#d4f5e2,#c8eeda);border:1px solid #8fd4ad;border-radius:10px;box-shadow:0 4px 16px #0000002e;color:#1a3a2a;display:none;font-size:13px;max-width:340px;min-width:220px;padding:12px 14px}.comment-inline-popup.active{display:block}.comment-inline-popup-close{background:none;border:none;color:#5a9a7a;cursor:pointer;font-size:16px;padding:0 4px;position:absolute;right:8px;top:6px}.comment-inline-popup-close:hover{color:#1a3a2a}.comment-inline-popup-body{margin-top:2px}.comment-inline-popup-item{margin-bottom:8px}.comment-inline-popup-item:last-child{margin-bottom:0}.comment-inline-popup-author{color:#1a3a2a;font-weight:600}.comment-inline-popup-time{color:#4a7a5a;font-size:11px;margin-left:6px}.comment-inline-popup-text{color:#2a4a3a;line-height:1.4;margin-top:3px}.comment-inline-popup-sep{border:none;border-top:1px solid #8fd4ad;margin:8px 0}.comment-inline-popup-reply{display:flex;gap:6px;margin-top:8px}.comment-inline-popup-reply textarea{background:#ffffffb3;border:1px solid #8fd4ad;border-radius:6px;color:#1a3a2a;flex:1 1;font-family:var(--font-ui);font-size:12px;outline:none;padding:6px 8px;resize:none}.comment-inline-popup-reply textarea:focus{border-color:#3ec28e}.comment-inline-popup-reply button{background:#3ecf8e;border:none;border-radius:6px;color:#1a3a2a;cursor:pointer;font-size:12px;font-weight:600;padding:4px 10px}.comment-inline-popup-reply button:hover{background:#2eaa76}
/*# sourceMappingURL=main.c0cd45a2.css.map*/