.file-attachment-list{display:flex;flex-direction:column;gap:4px}.attachment-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#fafafa;border:1px solid #f0f0f0;border-radius:4px;transition:all .2s}.attachment-item:hover{background:#f5f5f5;border-color:#d9d9d9}.attachment-info{flex:1;min-width:0;overflow:hidden}.attachment-name{max-width:200px;font-size:13px}.attachment-name:hover{color:#1890ff;cursor:pointer}.attachment-size{font-size:11px;flex-shrink:0}.attachment-actions{flex-shrink:0;opacity:0;transition:opacity .2s}.attachment-item:hover .attachment-actions{opacity:1}.attachment-btn{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center}.attachment-btn:hover{background:#e6f7ff!important}.attachment-btn-delete:hover{background:#fff1f0!important}.file-attachment-inline{display:inline-flex;align-items:center;padding:2px 8px;background:#f6ffed;border:1px solid #b7eb8f;border-radius:4px;font-size:13px}.attachment-link{color:#1890ff;text-decoration:none}.attachment-link:hover{text-decoration:underline}.rich-text-editor{border:1px solid #d9d9d9;border-radius:8px;background:#fff;overflow:hidden}.rich-text-editor:focus-within{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff1a}.editor-toolbar{padding:8px 12px;border-bottom:1px solid #f0f0f0;background:#fafafa}.toolbar-btn{min-width:28px;height:28px;padding:0 6px}.toolbar-btn:hover{background:#e6f7ff}.toolbar-divider{margin:0 4px;height:20px}.editor-content{padding:12px 16px;min-height:200px}.editor-content .tiptap{outline:none;min-height:inherit}.editor-content .tiptap:focus{outline:none}.editor-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:#bfbfbf;pointer-events:none;height:0}.editor-content .tiptap>*+*{margin-top:.75em}.editor-content .tiptap h1{font-size:1.75em;font-weight:600;margin-top:1em;margin-bottom:.5em}.editor-content .tiptap h2{font-size:1.5em;font-weight:600;margin-top:.8em;margin-bottom:.4em}.editor-content .tiptap h3{font-size:1.25em;font-weight:600;margin-top:.6em;margin-bottom:.3em}.editor-content .tiptap p{margin:0;line-height:1.6}.editor-content .tiptap strong{font-weight:600}.editor-content .tiptap em{font-style:italic}.editor-content .tiptap u{text-decoration:underline}.editor-content .tiptap s{text-decoration:line-through}.editor-content .tiptap ul,.editor-content .tiptap ol{padding-left:1.5em;margin:.5em 0}.editor-content .tiptap li{margin:.25em 0}.editor-content .tiptap li p{margin:0}.editor-content .tiptap blockquote{border-left:3px solid #1890ff;margin:.5em 0;padding-left:1em;color:#595959;font-style:italic}.editor-content .tiptap code{background:#f5f5f5;border-radius:4px;padding:.15em .4em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.9em;color:#d4380d}.editor-content .tiptap pre{background:#282c34;border-radius:6px;margin:.5em 0;padding:1em;overflow-x:auto}.editor-content .tiptap pre code{background:transparent;color:#abb2bf;padding:0;font-size:.875em}.editor-content .tiptap hr{border:none;border-top:2px solid #f0f0f0;margin:1em 0}.editor-content .tiptap a,.editor-content .tiptap .editor-link{color:#1890ff;text-decoration:none;cursor:pointer}.editor-content .tiptap a:hover,.editor-content .tiptap .editor-link:hover{text-decoration:underline}.editor-content .tiptap img{max-width:100%;height:auto;border-radius:4px;margin:.5em 0}.editor-content .tiptap ::selection{background:#bae7ff}.editor-content .tiptap table{border-collapse:collapse;margin:1em 0;overflow:hidden;table-layout:fixed;width:100%}.editor-content .tiptap table td,.editor-content .tiptap table th{border:1px solid #d9d9d9;box-sizing:border-box;min-width:1em;padding:8px 12px;position:relative;vertical-align:top}.editor-content .tiptap table th{background-color:#fafafa;font-weight:600;text-align:left}.editor-content .tiptap table .selectedCell:after{background:#1890ff1a;content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.editor-content .tiptap table .column-resize-handle{background-color:#1890ff;bottom:-2px;pointer-events:none;position:absolute;right:-2px;top:0;width:4px}.editor-content .tiptap .tableWrapper{margin:1em 0;overflow-x:auto}.editor-content .tiptap.resize-cursor{cursor:col-resize}.editor-content .tiptap .mention{background-color:#e6f7ff;border-radius:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone;color:#1890ff;padding:2px 4px;font-weight:500}.mention-list{background:#fff;border:1px solid #d9d9d9;border-radius:6px;box-shadow:0 2px 8px #00000026;overflow:hidden;max-height:200px;overflow-y:auto}.mention-item{display:flex;align-items:center;width:100%;padding:8px 12px;border:none;background:transparent;text-align:left;cursor:pointer;font-size:14px;color:#262626}.mention-item:hover,.mention-item.is-selected{background:#e6f7ff}.upload-indicator{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#e6f7ff;border-bottom:1px solid #91caff;color:#1890ff;font-size:13px}.editor-footer{padding:6px 12px;background:#fafafa;border-top:1px solid #f0f0f0;font-size:12px;color:#8c8c8c}*{margin:0;padding:0}:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100svh}#root{margin:0 auto}.ant-table-wrapper{flex:1;min-height:0}.ant-table-wrapper .ant-spin-nested-loading{height:100%}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container{height:100%;display:flex;flex-flow:column nowrap}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container .ant-table{flex:auto;overflow:hidden;display:flex;flex-direction:column}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container .ant-table .ant-table-container{height:100%;display:flex;flex-flow:column nowrap;max-height:100%;overflow:hidden}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container .ant-table .ant-table-container .ant-table-header{flex:none}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container .ant-table .ant-table-container .ant-table-body{flex:auto;overflow:scroll}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container .ant-table .ant-table-footer{border-top:1px solid var(--ant-table-border-color)}.ant-table-wrapper .ant-spin-nested-loading .ant-spin-container .ant-table-pagination{flex:none}.finance-table .ant-table-cell{border-inline-start:1px solid #f0f0f0}.finance-table .ant-table-thead>tr>th:first-child,.finance-table .ant-table-tbody>tr>td:first-child{border-inline-start:none}
