._3_ygE{border-top:1px solid #e6e4e4;border-bottom:1px solid #e6e4e4;border-left:1px solid #e6e4e4;display:table}._1nBOt{list-style:none;display:table-row}._2eZzQ{opacity:1;border-right:1px solid #c4c4c4;margin-left:-2px}._WuQ0f{vertical-align:-webkit-baseline-middle;vertical-align:middle;display:table-cell}._3ZbQT{border-bottom:1px solid #e6e4e4;border-left:1px solid #e6e4e4;display:table}._34SS0{text-overflow:ellipsis;display:table-row}._34SS0:nth-of-type(2n){background-color:#f5f5f5}._3lLk3{vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;display:table-cell;overflow:hidden}._nI1Xw{display:flex}._2QjE6{color:#565656;-webkit-user-select:none;user-select:none;cursor:pointer;padding:.15rem .2rem 0;font-size:.6rem}._2TfEi{-webkit-user-select:none;user-select:none;padding-left:1rem;font-size:.6rem}._3T42e{background:#fff;padding:12px;box-shadow:0 3px 6px #00000029,0 3px 6px #0000003b}._29NTg{color:#666;margin-bottom:6px;font-size:12px}._25P-K{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;flex-shrink:0;display:flex;position:absolute}._3gVAq{visibility:hidden;pointer-events:none;display:flex;position:absolute}._1eT-t{scrollbar-width:thin;flex-shrink:0;width:1rem;overflow:hidden auto}._1eT-t::-webkit-scrollbar{width:1.1rem;height:1.1rem}._1eT-t::-webkit-scrollbar-corner{background:0 0}._1eT-t::-webkit-scrollbar-thumb{background:#0003;background:var(--palette-black-alpha-20,#0003);background-clip:padding-box;border:6px solid #0000;border-radius:10px}._1eT-t::-webkit-scrollbar-thumb:hover{background:#0000004d;background:var(--palette-black-alpha-30,#0000004d);background-clip:padding-box;border:4px solid #0000}._2dZTy{fill:#fff}._2dZTy:nth-child(2n){fill:#f5f5f5}._3rUKi{stroke:#ebeff2}._RuwuK{stroke:#e6e4e4}._9w8d5{text-anchor:middle;fill:#333;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:none}._1rLuZ{stroke:#e6e4e4}._2q1Kt{text-anchor:middle;fill:#555;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:none}._35nLX{fill:#fff;stroke:#e0e0e0;stroke-width:1.4px}._KxSXS{cursor:pointer;outline:none}._KxSXS:hover ._3w_5u{visibility:visible;opacity:1}._3w_5u{fill:#ddd;cursor:ew-resize;opacity:0;visibility:hidden}._31ERP{-webkit-user-select:none;user-select:none;stroke-width:0}._RRr13{cursor:pointer;outline:none}._2P2B1{-webkit-user-select:none;user-select:none}._1KJ6x{cursor:pointer;outline:none}._2RbVy{-webkit-user-select:none;user-select:none;opacity:.6}._2pZMF{-webkit-user-select:none;user-select:none}._3zRJQ{fill:#fff;text-anchor:middle;dominant-baseline:central;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:none;font-weight:lighter}._3KcaM{fill:#555;text-anchor:start;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:none}._CZjuD{margin:0;padding:0;font-size:0;overflow:hidden}._2B2zv{margin:0;padding:0;overflow:hidden}._3eULf{outline:none;margin:0;padding:0;list-style:none;display:flex;position:relative}._2k9Ys{scrollbar-width:thin;max-width:100%;height:1.2rem;overflow:auto}._2k9Ys::-webkit-scrollbar{width:1.1rem;height:1.1rem}._2k9Ys::-webkit-scrollbar-corner{background:0 0}._2k9Ys::-webkit-scrollbar-thumb{background:#0003;background:var(--palette-black-alpha-20,#0003);background-clip:padding-box;border:6px solid #0000;border-radius:10px}._2k9Ys::-webkit-scrollbar-thumb:hover{background:#0000004d;background:var(--palette-black-alpha-30,#0000004d);background-clip:padding-box;border:4px solid #0000}._19jgW{height:1px}:root{--color-primary:#1677ff;--color-accent:#fa8c16;--sidebar-bg:#001529;--text-primary:#262626;--bg-page:#f5f5f5;--color-success:#52c41a;--color-warning:#faad14;--color-error:#ff4d4f;--border-color:#f0f0f0;--card-bg:#fff;--sidebar-width:260px;--sidebar-collapsed-width:80px;--header-height:56px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.app-shell{min-height:100%}.app-content{min-height:calc(100vh - var(--header-height));background:var(--bg-page);padding:16px 20px}.sidebar-new-project-btn.ant-btn{color:#ffffffe6!important;background:0 0!important;border-color:#ffffff59!important}.sidebar-new-project-btn.ant-btn:hover,.sidebar-new-project-btn.ant-btn:focus{color:#fff!important;border-color:var(--color-primary)!important;background:#1677ff26!important}.page-card{background:var(--card-bg);border-radius:12px;padding:20px;box-shadow:0 1px 2px #0000000a}.kanban-board{align-items:flex-start;gap:12px;min-height:calc(100vh - 180px);padding-bottom:12px;display:flex;overflow-x:auto}.kanban-column{border:1px solid var(--border-color);background:#fafafa;border-radius:10px;flex-direction:column;flex:0 0 300px;width:300px;max-height:calc(100vh - 200px);display:flex}.kanban-column-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;font-weight:600;display:flex}.kanban-column-body{flex-direction:column;flex:1;gap:8px;min-height:80px;padding:10px;display:flex;overflow-y:auto}.task-card{border:1px solid #e8e8e8;border-left:3px solid var(--color-primary);cursor:grab;background:#fff;border-radius:10px;padding:12px 12px 10px;transition:box-shadow .15s,border-color .15s,transform .15s;box-shadow:0 1px 2px #0000000a}.task-card-title{letter-spacing:-.01em;display:block;color:#141414!important;font-size:14px!important;font-weight:600!important;line-height:1.35!important}.task-card:hover{border-top-color:#d0d0d0;border-bottom-color:#d0d0d0;border-right-color:#d0d0d0;transform:translateY(-1px);box-shadow:0 4px 14px #0000001a}.task-card:active{cursor:grabbing}.task-card.dragging{opacity:.7;box-shadow:0 10px 24px #00000029}.auth-page{background:radial-gradient(circle at 10% 20%, #1677ff1f, transparent 40%), radial-gradient(circle at 90% 80%, #fa8c1624, transparent 40%), var(--bg-page);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:#fff;border-radius:16px;width:100%;max-width:420px;padding:32px 28px;box-shadow:0 12px 40px #00000014}.auth-brand{text-align:center;margin-bottom:24px}.auth-brand h1{color:var(--color-primary);letter-spacing:-.02em;margin:0;font-size:28px}.auth-brand p{color:#8c8c8c;margin:6px 0 0}.demo-hint{color:#389e0d;background:#f6ffed;border:1px solid #b7eb8f;border-radius:8px;margin-top:16px;padding:10px 12px;font-size:12px}.rich-editor{border:1px solid var(--border-color);background:#fff;border-radius:8px;min-height:120px;padding:10px 12px}.rich-editor--readonly{background:#fafafa;border-style:dashed}.rich-editor-toolbar{border-bottom:1px solid var(--border-color);background:#fafafa;border-radius:8px 8px 0 0;margin:-10px -12px 10px;padding:6px 8px}.rich-editor .ProseMirror{outline:none;min-height:90px}.rich-editor .ProseMirror p.is-editor-empty:first-child:before{color:#bfbfbf;content:attr(data-placeholder);float:left;pointer-events:none;height:0}.rich-editor .ProseMirror img.rich-editor-img,.rich-editor .ProseMirror img{border-radius:8px;max-width:100%;height:auto;margin:8px 0;display:block}.rich-editor-hint{color:#8c8c8c;margin-left:8px;font-size:11px}.comment-html img{border:1px solid #f0f0f0;border-radius:8px;max-width:100%;height:auto;margin:8px 0;display:block}.roadmap-ficha-empty{text-align:center;background:#fafafa;border:1px dashed #d9d9d9;border-radius:8px;padding:24px 16px}.gantt-fallback{padding:12px}.status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}@media (width<=768px){.kanban-column{flex:0 0 280px;width:280px}.app-content{padding:12px}}
