*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#f4a6428f transparent}html,body,#app{width:100%;min-width:0;min-height:100%;margin:0}body{color:#182033;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}::-webkit-scrollbar{width:2px;height:2px}::-webkit-scrollbar-track{background:0 0;border-radius:999px}::-webkit-scrollbar-thumb{background-color:#f4a6428f;background-clip:content-box;border:1px solid #0000;border-radius:999px;transition:background-color .2s,opacity .2s}::-webkit-scrollbar-thumb:hover{background-color:#f4a642c7}::-webkit-scrollbar-thumb:active{background-color:#f4a642eb}::-webkit-scrollbar-button{background:0 0!important;width:0!important;height:0!important;display:none!important}::-webkit-scrollbar-button:vertical:start:decrement{background:0 0!important;width:0!important;height:0!important;display:none!important}::-webkit-scrollbar-button:vertical:end:increment{background:0 0!important;width:0!important;height:0!important;display:none!important}::-webkit-scrollbar-button:horizontal:start:decrement{background:0 0!important;width:0!important;height:0!important;display:none!important}::-webkit-scrollbar-button:horizontal:end:increment{background:0 0!important;width:0!important;height:0!important;display:none!important}::-webkit-scrollbar-button:single-button{width:0;height:0;display:none!important}::-webkit-scrollbar-button:single-button:vertical:decrement{width:0;height:0;display:none!important}::-webkit-scrollbar-button:single-button:vertical:increment{width:0;height:0;display:none!important}::-webkit-scrollbar-button:single-button:horizontal:decrement{width:0;height:0;display:none!important}::-webkit-scrollbar-button:single-button:horizontal:increment{width:0;height:0;display:none!important}::-webkit-scrollbar-corner{background:0 0}.app-header[data-v-8d8cf22f]{justify-content:space-between;align-items:center;width:100%;height:100%;padding:0 20px;display:flex}.header-left[data-v-8d8cf22f]{align-items:center;display:flex}.logo[data-v-8d8cf22f]{color:#18a058;letter-spacing:1px;margin-left:8px;font-size:20px;font-weight:700}.header-right[data-v-8d8cf22f]{align-items:center;gap:8px;display:flex}.fullscreen-btn[data-v-8d8cf22f]{color:#666;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .15s;display:flex}.fullscreen-btn[data-v-8d8cf22f]:hover{color:#18a058;background:#f0faf5}.notification-wrapper[data-v-8d8cf22f]{position:relative}.notification-btn[data-v-8d8cf22f]{color:#666;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .15s;display:flex;position:relative}.notification-btn[data-v-8d8cf22f]:hover{color:#18a058;background:#f0faf5}.notification-badge[data-v-8d8cf22f]{color:#fff;text-align:center;white-space:nowrap;background:#e04040;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;line-height:16px;position:absolute;top:2px;right:2px}.notification-panel[data-v-8d8cf22f]{z-index:100;background:#fff;border-radius:10px;flex-direction:column;width:340px;max-height:420px;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 4px 20px #0000001f}.notification-header[data-v-8d8cf22f]{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;padding:12px 14px 8px;display:flex}.notification-title[data-v-8d8cf22f]{color:#333;font-size:14px;font-weight:600}.notification-count[data-v-8d8cf22f]{color:#e04040;font-size:12px;font-weight:500}.notification-body[data-v-8d8cf22f]{flex:1;min-height:0;overflow-y:auto}.notification-body[data-v-8d8cf22f]::-webkit-scrollbar{width:4px}.notification-body[data-v-8d8cf22f]::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.notification-loading[data-v-8d8cf22f]{color:#999;justify-content:center;align-items:center;padding:32px 0;font-size:13px;display:flex}.notification-empty[data-v-8d8cf22f]{color:#b0b0b0;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 0;font-size:13px;display:flex}.notification-list[data-v-8d8cf22f]{padding:4px 0}.project-group[data-v-8d8cf22f]:not(:last-child){border-bottom:1px solid #f0f0f0}.project-group-header[data-v-8d8cf22f]{z-index:1;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border-radius:4px;justify-content:space-between;align-items:center;padding:8px 14px 4px;display:flex;position:sticky;top:0}.project-group-header[data-v-8d8cf22f]:hover{background:#f9f9f9}.project-group-left[data-v-8d8cf22f]{align-items:center;gap:4px;display:flex;overflow:hidden}.collapse-arrow[data-v-8d8cf22f]{color:#999;flex-shrink:0;transition:transform .2s}.collapse-arrow.collapsed[data-v-8d8cf22f]{transform:rotate(-90deg)}.project-group-name[data-v-8d8cf22f]{color:#333;white-space:nowrap;text-overflow:ellipsis;max-width:240px;font-size:13px;font-weight:600;overflow:hidden}.project-group-count[data-v-8d8cf22f]{color:#999;background:#f5f5f5;border-radius:8px;flex-shrink:0;padding:1px 6px;font-size:11px}.notification-item[data-v-8d8cf22f]{cursor:pointer;border-bottom:1px solid #f8f8f8;padding:10px 14px;transition:background .12s}.notification-item[data-v-8d8cf22f]:last-child{border-bottom:none}.notification-item[data-v-8d8cf22f]:hover{background:#fafafa}.item-top[data-v-8d8cf22f]{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.item-overdue-tag[data-v-8d8cf22f]{color:#e04040;white-space:nowrap;background:#fff1f0;border-radius:4px;flex-shrink:0;margin-left:auto;padding:1px 6px;font-size:11px}.item-status-tag[data-v-8d8cf22f]{white-space:nowrap;border-radius:12px;flex-shrink:0;align-items:center;gap:3px;padding:2px 8px;font-size:11px;display:inline-flex}.item-status-icon[data-v-8d8cf22f]{flex-shrink:0;width:14px;height:14px;display:inline-flex}.item-status-icon[data-v-8d8cf22f] svg{width:14px;height:14px}.status--done[data-v-8d8cf22f]{color:#52c41a;background:#f0faf4}.status--progress[data-v-8d8cf22f]{color:#18a058;background:#f0faf5}.status--pending[data-v-8d8cf22f]{color:#999;background:#f5f5f5}.status--paused[data-v-8d8cf22f]{color:#faad14;background:#fffbe6}.status--na[data-v-8d8cf22f]{color:#999;background:#fafafa}.status--undone[data-v-8d8cf22f]{color:#e04040;background:#fff1f0}.status--normal[data-v-8d8cf22f]{color:#1890ff;background:#e6f7ff}.status--important[data-v-8d8cf22f]{color:#fa8c16;background:#fff7e6}.status--urgent[data-v-8d8cf22f]{color:#cf1322;background:#fff1f0}.status--default[data-v-8d8cf22f]{color:#666;background:#f5f5f5}.item-detail[data-v-8d8cf22f]{align-items:center;gap:6px;display:flex}.item-group[data-v-8d8cf22f]{color:#18a058;white-space:nowrap;text-overflow:ellipsis;background:#f0faf5;border-radius:3px;max-width:120px;padding:0 5px;font-size:11px;overflow:hidden}.item-label[data-v-8d8cf22f]{color:#666;white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:12px;overflow:hidden}.item-date-row[data-v-8d8cf22f]{margin-top:2px}.item-date[data-v-8d8cf22f]{color:#999;white-space:nowrap;font-size:11px}.user-info[data-v-8d8cf22f]{cursor:pointer;border-radius:20px;align-items:center;gap:8px;padding:4px 12px;transition:background .15s;display:flex;position:relative}.user-info[data-v-8d8cf22f]:hover{background:#f0faf5}.user-avatar[data-v-8d8cf22f]{color:#fff;background:#18a058;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;font-weight:600;display:flex}.user-name[data-v-8d8cf22f]{color:#333;font-size:14px;font-weight:500}.user-menu[data-v-8d8cf22f]{z-index:100;background:#fff;border-radius:10px;width:236px;padding:6px 0;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 4px 20px #0000001a}.menu-header[data-v-8d8cf22f]{padding:10px 14px 6px}.menu-account[data-v-8d8cf22f]{color:#999;font-size:12px}.menu-item[data-v-8d8cf22f]{color:#333;cursor:pointer;padding:9px 14px;font-size:13px;transition:background .12s}.menu-item[data-v-8d8cf22f]:hover{background:#f5f7f5}.menu-item.danger[data-v-8d8cf22f]{color:#e04040}.form-edit[data-v-8d8cf22f]{cursor:default;flex-direction:column;gap:8px;padding:8px 14px;display:flex}.form-edit[data-v-8d8cf22f]:hover{background:0 0}.form-edit input[data-v-8d8cf22f]{box-sizing:border-box;border:1px solid #d9e0dc;border-radius:6px;outline:none;width:100%;height:30px;padding:0 8px;font-size:13px}.form-edit input[data-v-8d8cf22f]:focus{border-color:#18a058}.password-edit input[data-v-8d8cf22f]{height:32px}.form-actions[data-v-8d8cf22f]{grid-template-columns:1fr 1fr;gap:8px;display:grid}.save-btn[data-v-8d8cf22f],.ghost-btn[data-v-8d8cf22f]{cursor:pointer;border-radius:6px;width:100%;height:28px;font-size:12px}.save-btn[data-v-8d8cf22f]:disabled,.ghost-btn[data-v-8d8cf22f]:disabled{opacity:.6;cursor:not-allowed}.save-btn[data-v-8d8cf22f]{color:#fff;background:#18a058;border:none}.save-btn[data-v-8d8cf22f]:hover:not(:disabled){background:#128a48}.ghost-btn[data-v-8d8cf22f]{color:#666;background:#fff;border:1px solid #d9e0dc}.ghost-btn[data-v-8d8cf22f]:hover:not(:disabled){color:#18a058;border-color:#18a058}.menu-divider[data-v-8d8cf22f]{background:#eee;height:1px;margin:4px 0}.fade-enter-active[data-v-8d8cf22f],.fade-leave-active[data-v-8d8cf22f]{transition:opacity .15s}.fade-enter-from[data-v-8d8cf22f],.fade-leave-to[data-v-8d8cf22f]{opacity:0}.sider-menu[data-v-d6b8502a]{-webkit-user-select:none;user-select:none;flex-direction:column;height:100%;padding:8px 0;display:flex}.nav-section[data-v-d6b8502a]{padding:0 8px}.nav-item[data-v-d6b8502a]{cursor:pointer;color:#333;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;transition:all .15s;display:flex}.nav-item[data-v-d6b8502a]:hover{background:#f0faf5}.nav-item-active[data-v-d6b8502a]{color:#18a058;background:#e8f5e9;font-weight:500}.nav-item-active .nav-icon svg[data-v-d6b8502a]{fill:#18a058}.nav-icon[data-v-d6b8502a]{justify-content:center;align-items:center;font-size:16px;display:inline-flex}.nav-name[data-v-d6b8502a]{flex:1}.section-divider[data-v-d6b8502a]{background:#e8e8e8;height:1px;margin:8px 16px}.folder-section[data-v-d6b8502a]{flex:1;padding:0 8px;overflow-y:auto}.folder-section-title[data-v-d6b8502a]{color:#999;letter-spacing:.5px;justify-content:space-between;align-items:center;padding:8px 12px 4px;font-size:12px;font-weight:500;display:flex}.folder-add-btn[data-v-d6b8502a]{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;transition:all .15s;display:inline-flex}.folder-add-btn[data-v-d6b8502a]:hover{background:#e8f5e9}.folder-add-btn:hover svg path[data-v-d6b8502a]{fill:#18a058}.folder-list[data-v-d6b8502a]{min-height:20px}.folder-group[data-v-d6b8502a]{margin-bottom:2px}.folder-item[data-v-d6b8502a]{cursor:pointer;color:#333;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;transition:all .15s;display:flex}.folder-item[data-v-d6b8502a]:hover{background:#f5f5f5}.folder-item-active[data-v-d6b8502a]{color:#18a058;background:#e8f5e9;font-weight:500}.folder-expand-btn[data-v-d6b8502a]{color:#999;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:14px;transition:transform .2s;display:inline-flex}.folder-expand-btn[data-v-d6b8502a]:hover{color:#18a058;background:#e8f5e9}.folder-expand-btn--expanded[data-v-d6b8502a]{transform:rotate(90deg)}.folder-drag-handle[data-v-d6b8502a]{cursor:grab;color:#ccc;font-size:12px;transition:color .15s}.folder-drag-handle[data-v-d6b8502a]:hover{color:#18a058}.folder-drag-handle[data-v-d6b8502a]:active{cursor:grabbing}.folder-icon[data-v-d6b8502a]{flex-shrink:0;align-items:center;width:18px;height:18px;display:inline-flex}.folder-custom-icon[data-v-d6b8502a]{object-fit:contain;width:18px;height:18px}.folder-name[data-v-d6b8502a]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.folder-edit-input[data-v-d6b8502a]{color:#333;min-width:0;font-family:inherit;font-size:14px;line-height:inherit;background:0 0;border:none;outline:none;flex:1;margin:0;padding:0}.folder-empty[data-v-d6b8502a]{text-align:center;color:#bbb;padding:20px 12px;font-size:13px}.folder-children[data-v-d6b8502a]{padding-left:42px}.project-list[data-v-d6b8502a]{min-height:24px}.folder-child-item[data-v-d6b8502a]{color:#555;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:all .12s;display:flex}.folder-child-item[data-v-d6b8502a]:hover{color:#18a058;background:#f5f5f5}.folder-child-item-active[data-v-d6b8502a]{color:#18a058;background:#e8f5e9;font-weight:500}.project-icon[data-v-d6b8502a]{flex-shrink:0;align-items:center;width:16px;height:16px;display:inline-flex}.project-edit-input[data-v-d6b8502a]{color:#333;min-width:0;font-family:inherit;font-size:13px;line-height:inherit;background:0 0;border:none;outline:none;flex:1;margin:0;padding:0}.folder-child-name[data-v-d6b8502a]{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ctx-menu[data-v-d6b8502a]{z-index:9999;background:#fff;border:1px solid #e8e8e8;border-radius:8px;min-width:130px;padding:6px 0;position:fixed;box-shadow:0 4px 16px #0000001a}.ctx-menu-item[data-v-d6b8502a]{color:#333;cursor:pointer;padding:8px 16px;font-size:13px;transition:background .1s}.ctx-menu-item[data-v-d6b8502a]:hover{color:#18a058;background:#f0faf5}.ctx-menu-item--danger[data-v-d6b8502a]{color:#d03050}.ctx-menu-item--danger[data-v-d6b8502a]:hover{color:#c0392b;background:#fef0f0}.trash-section[data-v-d6b8502a]{border-top:1px solid #e8e8e8;margin-top:8px;padding:8px 8px 0}.trash-header[data-v-d6b8502a]{cursor:pointer;color:#666;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;transition:all .15s;display:flex}.trash-header[data-v-d6b8502a]:hover{background:#f5f5f5}.trash-icon[data-v-d6b8502a]{color:#999;align-items:center;display:inline-flex}.trash-name[data-v-d6b8502a]{flex:1}.trash-count[data-v-d6b8502a]{color:#888;text-align:center;background:#eee;border-radius:10px;min-width:18px;padding:1px 6px;font-size:11px}.trash-children[data-v-d6b8502a]{padding-left:38px}.trash-empty[data-v-d6b8502a]{color:#bbb;padding:8px 12px;font-size:12px}.trash-item[data-v-d6b8502a]{color:#999;cursor:default;border-radius:6px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;transition:all .12s;display:flex}.trash-item[data-v-d6b8502a]:hover{background:#f5f5f5}.trash-item-icon[data-v-d6b8502a]{flex-shrink:0;align-items:center;display:inline-flex}.trash-item-name[data-v-d6b8502a]{text-overflow:ellipsis;white-space:nowrap;flex:1;text-decoration:line-through;overflow:hidden}.layout[data-v-ef5d1e1a]{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.layout-header[data-v-ef5d1e1a]{background:#fff;border-bottom:1px solid #e8e8e8;flex-shrink:0;align-items:center;height:56px;display:flex;position:relative}.sider-toggle-btn[data-v-ef5d1e1a]{color:#666;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-left:12px;margin-right:4px;transition:all .15s;display:flex}.sider-toggle-btn[data-v-ef5d1e1a]:hover{color:#18a058;background:#f0faf5}.layout-body[data-v-ef5d1e1a]{flex:1;display:flex;overflow:hidden}.layout-sider[data-v-ef5d1e1a]{background:#fff;border-right:1px solid #e8e8e8;flex-shrink:0;width:220px;transition:width .25s;overflow:hidden}.layout-sider.sider-collapsed[data-v-ef5d1e1a]{border-right:none;width:0}.sider-inner[data-v-ef5d1e1a]{width:220px;height:100%;overflow-y:auto}.layout-main[data-v-ef5d1e1a]{background:#fff;flex:1;padding:20px;overflow-y:auto}
