.toast-wrap[data-v-8c4ec13e]{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:2000;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast-item[data-v-8c4ec13e]{display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:8px;background:#1d2129eb;color:#fff;font-size:14px;box-shadow:0 6px 24px #0000002e;pointer-events:auto;max-width:80vw}.toast-item.success[data-v-8c4ec13e]{background:#2ba471f2}.toast-item.error[data-v-8c4ec13e]{background:#e34d59f2}.toast-icon[data-v-8c4ec13e]{width:18px;height:18px;border-radius:50%;background:#ffffff40;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.toast-enter-from[data-v-8c4ec13e],.toast-leave-to[data-v-8c4ec13e]{opacity:0;transform:translateY(-8px)}.toast-enter-active[data-v-8c4ec13e],.toast-leave-active[data-v-8c4ec13e]{transition:all .2s ease}.confirm-dialog[data-v-aaaa34c7]{width:360px}.confirm-dialog .dialog-body[data-v-aaaa34c7]{color:var(--text-2);line-height:1.6}.input-dialog[data-v-e531aa3e]{width:380px}:root{--primary: #0052d9;--primary-hover: #0045b8;--primary-light: #e8f0ff;--primary-deep: #d7e6f7;--danger: #e34d59;--danger-hover: #c9353f;--warn: #ed7b2f;--success: #2ba471;--p-urgent: #e34d59;--p-important: #ed7b2f;--p-normal: #3a7afe;--bg: #f5f6f8;--bg-elev: #ffffff;--bg-soft: #f0f2f5;--border: #e8eaed;--border-light: #f0f2f5;--text: #1d2129;--text-2: #4e5969;--text-3: #86909c;--text-4: #c9cdd4;--radius: 8px;--radius-sm: 6px;--radius-lg: 12px;--shadow: 0 2px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-drag: 0 12px 28px rgba(0, 0, 0, .18);--sidebar-w: 72px;--transition: .2s cubic-bezier(.2, 0, 0, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.5}#app{display:flex}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit;font-size:inherit;color:inherit;outline:none;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d4d7dd;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b9bdc4}::-webkit-scrollbar-track{background:transparent}.scrollbar-none::-webkit-scrollbar{display:none}.scrollbar-none{scrollbar-width:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;color:var(--text-2);background:var(--bg-soft);transition:var(--transition);white-space:nowrap}.btn:hover{background:#e3e6ea}.btn.primary{color:#fff;background:var(--primary)}.btn.primary:hover{background:var(--primary-hover)}.btn.danger{color:var(--danger);background:var(--danger);color:#fff}.btn.danger:hover{background:var(--danger-hover)}.btn.ghost{background:transparent;color:var(--text-2)}.btn.ghost:hover{background:var(--bg-soft)}.btn.sm{padding:5px 12px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.input{width:100%;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elev);transition:var(--transition)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}textarea.input{resize:vertical;min-height:72px;line-height:1.6}.check{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid var(--border);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);color:#fff;font-size:11px}.check:hover{border-color:var(--primary)}.check.checked{background:var(--primary);border-color:var(--primary)}.check.sm{width:15px;height:15px;font-size:9px}.tag-label{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:12px;line-height:18px}.avatar{flex:none;width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;overflow:hidden;object-fit:cover}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.sm{width:24px;height:24px;font-size:11px}.avatar.lg{width:32px;height:32px;font-size:15px}.avatar-group{display:inline-flex}.avatar-group .avatar{margin-left:-6px;border:2px solid var(--bg-elev)}.avatar-group .avatar:first-child{margin-left:0}.dot{width:8px;height:8px;border-radius:50%;flex:none}.dot.urgent{background:var(--p-urgent)}.dot.important{background:var(--p-important)}.dot.normal{background:var(--p-normal)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 16px;color:var(--text-3)}.empty-state .emoji{font-size:40px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in .16s ease}.dialog{background:var(--bg-elev);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:88vh;overflow:hidden;animation:pop-in .2s cubic-bezier(.2,0,0,1)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border-light)}.dialog-title{font-size:16px;font-weight:600}.dialog-close{color:var(--text-3);font-size:16px;line-height:1;padding:4px}.dialog-close:hover{color:var(--text)}.dialog-body{padding:22px;overflow:auto}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--border-light)}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}.flex{display:flex}.flex-1{flex:1}.flex-center{display:flex;align-items:center;justify-content:center}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-12{gap:12px}.text-2{color:var(--text-2)}.text-3{color:var(--text-3)}.muted{color:var(--text-3);font-size:12px}.done-text{text-decoration:line-through;color:var(--text-3)}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sortable-ghost{opacity:.4}.sortable-chosen{cursor:grabbing}.sortable-drag{box-shadow:var(--shadow-drag);opacity:.95}
