.form-group[data-v-96539aaa]{margin-bottom:16px}.form-group label[data-v-96539aaa]{display:block;font-size:14px;font-weight:500;margin-bottom:4px;color:var(--color-text)}.form-group input[data-v-96539aaa]{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:16px;outline:none;transition:border-color .15s;letter-spacing:normal;text-align:left}.form-group input[data-v-96539aaa]:focus{border-color:var(--color-primary)}.btn-link[data-v-96539aaa]{display:block;width:100%;margin-top:12px;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:13px;text-align:center;padding:8px}.btn-link[data-v-96539aaa]:hover{color:var(--color-primary)}.btn-link[data-v-96539aaa]:disabled{opacity:.5;cursor:not-allowed}.fallback-code-box[data-v-96539aaa]{background:#fffbeb;border:1px solid #f59e0b;border-radius:10px;padding:14px;margin-bottom:16px;text-align:center}.fallback-code-box p[data-v-96539aaa]{font-size:13px;color:#92400e;margin-bottom:8px}.code-display[data-v-96539aaa]{font-size:32px;font-weight:800;letter-spacing:8px;color:#1f2937;background:#fff;border-radius:8px;padding:8px 16px;display:inline-block;margin-bottom:6px;-webkit-user-select:all;user-select:all;cursor:text}.theme-btn[data-v-1ff38670]{background:transparent;border:1px solid var(--color-border);padding:4px 10px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .15s;margin-right:4px}.theme-btn[data-v-1ff38670]:hover{background:var(--color-border)}.task-link[data-v-0c810a93]{color:var(--color-accent, #6366f1);text-decoration:none;font-weight:600}.task-link[data-v-0c810a93]:hover{text-decoration:underline}.creator[data-v-0c810a93],.time[data-v-0c810a93]{font-size:11px;color:var(--color-text-secondary, #6b7280)}.task-card-meta[data-v-0c810a93]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;margin-top:6px}.task-card-chat[data-v-0c810a93]{font-size:11px;color:#6b7280;margin-bottom:6px}.task-card-comments[data-v-0c810a93]{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border, #e5e7eb)}.comment-item[data-v-0c810a93]{font-size:12px;margin-bottom:4px;display:flex;gap:6px;flex-wrap:wrap}.comment-author[data-v-0c810a93]{font-weight:600;color:var(--color-accent, #6366f1)}.comment-text[data-v-0c810a93]{color:var(--color-text, #1f2937);word-break:break-word}.comment-time[data-v-0c810a93]{font-size:10px;color:var(--color-text-secondary, #6b7280);margin-left:auto}.comment-form[data-v-0c810a93]{margin-top:10px}.comment-toggle-btn[data-v-0c810a93]{padding:4px 12px;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;background:transparent;color:var(--color-text-secondary, #6b7280);cursor:pointer;font-size:12px;width:100%}.comment-toggle-btn[data-v-0c810a93]:hover{background:var(--color-surface-alt, #f3f4f6)}.comment-input-row[data-v-0c810a93]{display:flex;gap:6px;align-items:center}.comment-input[data-v-0c810a93]{flex:1;padding:6px 10px;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:13px;background:var(--color-bg, #fff);color:var(--color-text, #1f2937);outline:none}.comment-input[data-v-0c810a93]:focus{border-color:var(--color-accent, #6366f1)}.comment-send-btn[data-v-0c810a93]{padding:6px 12px;border:none;border-radius:6px;background:var(--color-accent, #6366f1);color:#fff;cursor:pointer;font-size:12px;white-space:nowrap}.comment-send-btn[data-v-0c810a93]:disabled{opacity:.5;cursor:not-allowed}.comment-cancel-btn[data-v-0c810a93]{padding:6px 8px;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary, #6b7280);cursor:pointer;font-size:14px}.delete-btn[data-v-0c810a93]{color:#ef4444;border-color:#ef4444}.delete-btn[data-v-0c810a93]:hover{background:#fef2f2;color:#dc2626;border-color:#dc2626}.task-card.etp[data-v-0c810a93]{border-left:4px solid #d97706;background:#fef3c7}.etp-badge[data-v-0c810a93]{background:#d97706;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;margin-right:6px;text-transform:uppercase}.admin-section[data-v-6b331d56]{background:var(--color-surface);border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid var(--color-border)}.admin-section h3[data-v-6b331d56]{margin-bottom:12px;font-size:16px}.admin-table[data-v-6b331d56]{width:100%;border-collapse:collapse;font-size:13px}.admin-table th[data-v-6b331d56],.admin-table td[data-v-6b331d56]{padding:8px 12px;text-align:left;border-bottom:1px solid var(--color-border)}.admin-table th[data-v-6b331d56]{font-weight:600;color:var(--color-text-secondary)}.admin-table select[data-v-6b331d56]{padding:4px 8px;border:1px solid var(--color-border);border-radius:4px;font-size:13px}.phone-form[data-v-6b331d56]{display:flex;gap:10px;margin-bottom:16px}.phone-form input[data-v-6b331d56]{flex:1;padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px}.btn-danger[data-v-6b331d56]{padding:4px 10px;border:1px solid #ef4444;border-radius:6px;background:transparent;color:#ef4444;cursor:pointer;font-size:12px}.btn-danger[data-v-6b331d56]:hover{background:#ef4444;color:#fff}.btn-danger[data-v-6b331d56]:disabled{opacity:.4;cursor:not-allowed}.btn-sm[data-v-6b331d56]{padding:2px 8px;font-size:11px}.btn-primary[data-v-6b331d56]{padding:8px 16px;background:var(--color-accent, #6366f1);color:#fff;border:none;border-radius:8px;cursor:pointer}.btn-primary[data-v-6b331d56]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-6b331d56]{padding:8px 16px;background:var(--color-surface-alt, #374151);color:#fff;border:1px solid var(--color-border);border-radius:8px;cursor:pointer}.filters[data-v-6b331d56]{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.filter-input[data-v-6b331d56]{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-bg);color:var(--color-text)}.filter-select[data-v-6b331d56]{padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-bg);color:var(--color-text)}.desc-cell[data-v-6b331d56]{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-cell[data-v-6b331d56]{white-space:nowrap;font-size:12px;color:var(--color-text-secondary)}.task-link[data-v-6b331d56]{color:var(--color-accent, #6366f1);text-decoration:none}.task-link[data-v-6b331d56]:hover{text-decoration:underline}.row-urgent[data-v-6b331d56]{border-left:3px solid #ef4444}.loading-text[data-v-6b331d56]{text-align:center;color:var(--color-text-secondary);padding:20px}*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #f4f6f9;--color-surface: #ffffff;--color-border: #e2e5ea;--color-text: #1f2937;--color-text-secondary: #6b7280;--color-primary: #4f46e5;--color-primary-light: #e0e7ff;--color-urgent: #ef4444;--color-urgent-bg: #fef2f2;--color-new: #f0fdf4;--color-progress: #fef9c3;--color-done: #f3f4f6;--color-sidebar-bg: #1e1e2f;--color-sidebar-text: #c4c4d4;--color-sidebar-hover: rgba(255, 255, 255, .06);--color-sidebar-divider: rgba(255, 255, 255, .06);--sidebar-width: 240px;--sidebar-collapsed: 64px;--header-height: 56px}body.dark{--color-bg: #0f1117;--color-surface: #1a1d27;--color-border: #2d3140;--color-text: #e4e6eb;--color-text-secondary: #9ca3af;--color-primary: #6366f1;--color-primary-light: #1e1b4b;--color-urgent: #f87171;--color-urgent-bg: #1f1315;--color-new: #0d1b14;--color-progress: #1e1806;--color-done: #111318;--color-sidebar-bg: #0d0e14;--color-sidebar-text: #9ca3af;--color-sidebar-hover: rgba(255, 255, 255, .05);--color-sidebar-divider: rgba(255, 255, 255, .04)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.5}#app{min-height:100vh}.app-layout{display:flex;min-height:100vh}.app-main{flex:1;display:flex;flex-direction:column;min-width:0}.app-header{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.app-header h1{font-size:18px;font-weight:600}.app-content{flex:1;overflow-x:auto;padding:20px 24px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg)}.login-card{background:var(--color-surface);border-radius:12px;padding:40px;width:100%;max-width:400px;box-shadow:0 1px 3px #00000014}.login-card h1{font-size:24px;margin-bottom:8px}.login-card p{color:var(--color-text-secondary);margin-bottom:24px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:4px;color:var(--color-text)}.form-group input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;outline:none;transition:border-color .15s}.form-group input:focus{border-color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.btn-primary{background:var(--color-primary);color:#fff;width:100%}.btn-primary:hover{background:#4338ca}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error-msg{background:var(--color-urgent-bg);color:var(--color-urgent);padding:10px 14px;border-radius:8px;font-size:14px;margin-bottom:16px}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;flex-shrink:0;transition:width .25s ease;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-header{height:var(--header-height);display:flex;align-items:center;padding:0 16px;gap:12px;border-bottom:1px solid var(--color-sidebar-divider);flex-shrink:0}.sidebar-logo{font-size:20px;flex-shrink:0}.sidebar-title{font-size:16px;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden}.sidebar-nav{flex:1;padding:12px 8px;display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;text-decoration:none;color:var(--color-sidebar-text);font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;transition:background .15s}.nav-item:hover{background:var(--color-sidebar-hover)}.nav-item.active{background:var(--color-primary);color:#fff}.nav-item .icon{font-size:18px;flex-shrink:0;width:20px;text-align:center}.nav-item .label{overflow:hidden;text-overflow:ellipsis}.nav-divider{height:1px;background:var(--color-sidebar-divider);margin:8px 0}.sidebar-footer{padding:12px 8px;border-top:1px solid var(--color-sidebar-divider)}.toggle-btn{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;border:none;background:transparent;color:var(--color-sidebar-text);cursor:pointer;font-size:14px;white-space:nowrap;overflow:hidden;transition:background .15s}.toggle-btn:hover{background:var(--color-sidebar-hover)}.toggle-btn .icon{font-size:16px;flex-shrink:0;width:20px;text-align:center}.userinfo{display:flex;align-items:center;gap:8px;font-size:13px}.logout-btn{background:transparent;border:1px solid var(--color-border);padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--color-text-secondary);transition:all .15s}.logout-btn:hover{border-color:var(--color-urgent);color:var(--color-urgent)}.kanban-board{display:flex;gap:20px;height:100%;min-height:calc(100vh - var(--header-height) - 40px)}.column{flex:1;min-width:280px;max-width:400px;background:var(--color-surface);border-radius:12px;display:flex;flex-direction:column;border:1px solid var(--color-border)}.column-header{padding:14px 16px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.column-header h3{font-size:15px;font-weight:600}.column-count{background:var(--color-border);color:var(--color-text-secondary);font-size:12px;font-weight:600;padding:2px 10px;border-radius:12px}.column-body{flex:1;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;min-height:120px;transition:background .15s}.column-body.drag-over{background:var(--color-primary-light)}.column-empty{color:var(--color-text-secondary);font-size:13px;text-align:center;padding:24px 0}.task-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:14px;cursor:grab;transition:box-shadow .15s,transform .15s;position:relative}.task-card:hover{box-shadow:0 2px 8px #00000014}.task-card.dragging{opacity:.5;transform:rotate(2deg)}.task-card.urgent{border-left:4px solid var(--color-urgent);background:var(--color-urgent-bg)}.task-card-title{font-size:14px;font-weight:600;margin-bottom:6px;display:flex;align-items:flex-start;gap:6px}.task-card-title .urgent-icon{font-size:16px;flex-shrink:0}.task-card-desc{font-size:12px;color:var(--color-text-secondary);margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--color-text-secondary)}.task-card-meta .assignee{background:var(--color-primary-light);color:var(--color-primary);padding:2px 8px;border-radius:6px;font-weight:500}.task-card-meta .deadline{font-weight:500}.task-card-meta .deadline.overdue{color:var(--color-urgent)}.task-card-actions{margin-top:8px;display:flex;gap:6px;justify-content:flex-end}.task-card-actions button{font-size:11px;padding:4px 10px;border-radius:6px;border:1px solid var(--color-border);background:transparent;cursor:pointer;color:var(--color-text-secondary);transition:all .15s}.task-card-actions button:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.placeholder-page{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary);text-align:center;padding:40px}.placeholder-page .icon{font-size:48px;margin-bottom:16px}.placeholder-page h2{font-size:18px;margin-bottom:8px;color:var(--color-text)}.placeholder-page p{font-size:14px}
