:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}@media(prefers-color-scheme:dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;font-family:Arial,sans-serif}#app{width:100%;margin:0;padding:0}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media(hover:hover){a:hover{background-color:#00bd7e33}}.toast-container[data-v-075c5e6e]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast[data-v-075c5e6e]{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:12px;background:#fff;box-shadow:0 10px 40px #00000026;min-width:300px;max-width:400px;animation:toastIn-075c5e6e .3s ease-out}.toast-success[data-v-075c5e6e]{border-left:4px solid #22c55e}.toast-error[data-v-075c5e6e]{border-left:4px solid #ef4444}.toast-info[data-v-075c5e6e]{border-left:4px solid #3b82f6}.toast-icon[data-v-075c5e6e]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;flex-shrink:0}.toast-success .toast-icon[data-v-075c5e6e]{background:#f0fdf4;color:#22c55e}.toast-error .toast-icon[data-v-075c5e6e]{background:#fef2f2;color:#ef4444}.toast-info .toast-icon[data-v-075c5e6e]{background:#eff6ff;color:#3b82f6}.toast-message[data-v-075c5e6e]{flex:1;font-size:.9375rem;color:#1f2937;line-height:1.4}.toast-close[data-v-075c5e6e]{background:transparent;border:none;color:#9ca3af;font-size:1.5rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;line-height:1;transition:color .2s}.toast-close[data-v-075c5e6e]:hover{color:#374151}@keyframes toastIn-075c5e6e{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-enter-active[data-v-075c5e6e],.toast-leave-active[data-v-075c5e6e]{transition:all .3s ease}.toast-enter-from[data-v-075c5e6e],.toast-leave-to[data-v-075c5e6e]{opacity:0;transform:translate(100%)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;margin:0;padding:0}#app,.app-container{width:100%;min-height:100vh}.category-manager[data-v-872ba297]{display:inline-block}.btn-manage-categories[data-v-872ba297]{background:#fff;color:#667eea;border:2px solid #667eea;padding:.75rem 1.25rem;border-radius:12px;cursor:pointer;font-size:.9375rem;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .2s;white-space:nowrap}.btn-manage-categories[data-v-872ba297]:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.manager-overlay[data-v-872ba297]{position:fixed;inset:0;width:100vw;height:100vh;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem;margin:0;box-sizing:border-box}.manager-overlay[data-v-872ba297]::-webkit-scrollbar{width:0}.manager-panel[data-v-872ba297]{background:#fff;border-radius:20px;padding:2rem;width:100%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:0 25px 80px #0006;animation:slideUp-872ba297 .3s ease;position:relative}.manager-panel[data-v-872ba297]::-webkit-scrollbar{width:8px}.manager-panel[data-v-872ba297]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.manager-panel[data-v-872ba297]::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.manager-panel[data-v-872ba297]::-webkit-scrollbar-thumb:hover{background:#a1a1a1}@keyframes slideUp-872ba297{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.manager-header[data-v-872ba297]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.manager-header h2[data-v-872ba297]{margin:0;font-size:1.5rem;color:#1f2937}.btn-close[data-v-872ba297]{background:transparent;border:none;font-size:2rem;color:#9ca3af;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;line-height:1}.btn-close[data-v-872ba297]:hover{background:#f3f4f6;color:#1f2937}.add-form-section h3[data-v-872ba297]{margin:0 0 1.5rem;font-size:1.25rem;color:#1f2937}.form-group[data-v-872ba297]{margin-bottom:1.5rem}.form-group label[data-v-872ba297]{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.input-text[data-v-872ba297]{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .2s}.input-text[data-v-872ba297]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.color-picker[data-v-872ba297]{display:grid;grid-template-columns:repeat(8,1fr);gap:.5rem;margin-bottom:1rem}.color-btn[data-v-872ba297]{width:36px;height:36px;border-radius:8px;border:3px solid transparent;cursor:pointer;transition:all .2s}.color-btn[data-v-872ba297]:hover{transform:scale(1.1)}.color-btn.active[data-v-872ba297]{border-color:#1f2937;box-shadow:0 0 0 2px #fff,0 0 0 4px #1f2937}.color-input[data-v-872ba297]{width:100%;height:40px;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer}.icon-picker[data-v-872ba297]{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}.icon-btn[data-v-872ba297]{width:50px;height:50px;background:#f9fafb;border:2px solid transparent;border-radius:10px;font-size:1.5rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.icon-btn[data-v-872ba297]:hover{background:#f3f4f6;transform:scale(1.1)}.icon-btn.active[data-v-872ba297]{background:#667eea;border-color:#667eea;box-shadow:0 0 0 2px #fff,0 0 0 4px #667eea}.form-preview[data-v-872ba297]{background:#f9fafb;padding:1rem;border-radius:10px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#6b7280}.preview-badge[data-v-872ba297]{font-size:1.125rem;font-weight:600}.form-actions[data-v-872ba297]{display:flex;gap:1rem}.btn-save[data-v-872ba297]{flex:1;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-save[data-v-872ba297]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-cancel[data-v-872ba297]{padding:.875rem 1.5rem;background:#f3f4f6;color:#6b7280;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-cancel[data-v-872ba297]:hover{background:#e5e7eb}.list-header[data-v-872ba297]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.list-header h3[data-v-872ba297]{margin:0;font-size:1.25rem;color:#1f2937}.btn-add-new[data-v-872ba297]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-add-new[data-v-872ba297]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.empty-categories[data-v-872ba297]{text-align:center;padding:3rem 1rem}.empty-icon[data-v-872ba297]{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-categories p[data-v-872ba297]{margin:.5rem 0;color:#9ca3af}.category-items[data-v-872ba297]{display:flex;flex-direction:column;gap:.75rem}.category-item[data-v-872ba297]{background:#f9fafb;border-radius:12px;padding:1rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s;border-left:4px solid}.category-item[data-v-872ba297]:hover{background:#f3f4f6;transform:translate(4px)}.category-info[data-v-872ba297]{display:flex;align-items:center;gap:.75rem}.category-icon[data-v-872ba297]{font-size:1.5rem;line-height:1}.category-name[data-v-872ba297]{font-size:1rem;font-weight:600;color:#1f2937}.category-actions[data-v-872ba297]{display:flex;gap:.5rem}.btn-edit[data-v-872ba297],.btn-delete[data-v-872ba297]{background:transparent;border:none;padding:.5rem;cursor:pointer;font-size:1.125rem;border-radius:6px;transition:all .2s;opacity:0}.category-item:hover .btn-edit[data-v-872ba297],.category-item:hover .btn-delete[data-v-872ba297]{opacity:1}.btn-edit[data-v-872ba297]:hover{background:#dbeafe}.btn-delete[data-v-872ba297]:hover{background:#fef2f2}.dark{background:#1f2937}.dark{background:#374151;color:#d1d5db}.dark{background:#4b5563}.backend-indicator[data-v-a739f676]{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:16px 20px;box-shadow:0 4px 12px #0000001a;margin-bottom:24px;animation:slideIn-a739f676 .3s ease-out}@keyframes slideIn-a739f676{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.indicator-content[data-v-a739f676]{display:flex;align-items:center;gap:16px}.backend-icon[data-v-a739f676]{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 2px 8px #0003;flex-shrink:0}.backend-details[data-v-a739f676]{flex:1;color:#fff}.backend-title[data-v-a739f676]{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;opacity:.9;margin-bottom:4px}.backend-info[data-v-a739f676]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;margin-bottom:2px}.backend-language[data-v-a739f676]{color:gold}.backend-framework[data-v-a739f676]{color:#fff}.backend-port[data-v-a739f676]{background:#fff3;padding:2px 8px;border-radius:4px;font-size:14px;font-weight:600}.separator[data-v-a739f676]{opacity:.6}.backend-description[data-v-a739f676]{font-size:12px;opacity:.8;margin-top:2px}.connection-status[data-v-a739f676]{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff26;border-radius:20px}.status-dot[data-v-a739f676]{width:8px;height:8px;background:#4ade80;border-radius:50%;animation:pulse-a739f676 2s infinite}@keyframes pulse-a739f676{0%,to{opacity:1}50%{opacity:.5}}.status-text[data-v-a739f676]{font-size:12px;font-weight:600;color:#fff}@media(max-width:768px){.backend-indicator[data-v-a739f676]{padding:12px 16px;margin-bottom:16px}.indicator-content[data-v-a739f676]{gap:12px}.backend-icon[data-v-a739f676]{width:48px;height:48px;font-size:24px}.backend-info[data-v-a739f676]{font-size:14px}.backend-port[data-v-a739f676]{font-size:12px}}.todo-page[data-v-a7e4af0f]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:0}.page-header[data-v-a7e4af0f]{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem 0;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}.header-content[data-v-a7e4af0f]{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.header-actions[data-v-a7e4af0f]{display:flex;gap:1rem;align-items:center}.user-info[data-v-a7e4af0f]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:#f3f4f6;border-radius:12px}.user-name[data-v-a7e4af0f]{font-size:.875rem;font-weight:600;color:#374151}.btn-logout[data-v-a7e4af0f]{background:transparent;border:1px solid #d1d5db;padding:.375rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s}.btn-logout[data-v-a7e4af0f]:hover{background:#e5e7eb;color:#374151;border-color:#9ca3af}.page-title[data-v-a7e4af0f]{margin:0;font-size:2rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;gap:.5rem}.title-icon[data-v-a7e4af0f]{font-size:2.5rem}.btn-add[data-v-a7e4af0f]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .3s;box-shadow:0 4px 12px #667eea4d}.btn-add[data-v-a7e4af0f]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-add.active[data-v-a7e4af0f]{background:linear-gradient(135deg,#764ba2,#667eea)}.btn-icon[data-v-a7e4af0f]{font-size:1.25rem;font-weight:300}.main-content[data-v-a7e4af0f]{max-width:1200px;margin:0 auto;padding:2rem}.stats-cards[data-v-a7e4af0f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card[data-v-a7e4af0f]{background:#fff;border-radius:16px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 4px 12px #00000014;transition:all .3s}.stat-card[data-v-a7e4af0f]:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.stat-icon[data-v-a7e4af0f]{font-size:2.5rem;line-height:1}.stat-number[data-v-a7e4af0f]{font-size:2rem;font-weight:700;color:#1f2937;line-height:1}.stat-label[data-v-a7e4af0f]{font-size:.875rem;color:#6b7280;margin-top:.25rem}.add-todo-card[data-v-a7e4af0f]{background:#fff;border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 12px #00000014}.form-header[data-v-a7e4af0f]{margin-bottom:1rem}.form-header h3[data-v-a7e4af0f]{margin:0;font-size:1.25rem;color:#1f2937}.form-content[data-v-a7e4af0f]{display:flex;flex-direction:column;gap:1rem}.input-primary[data-v-a7e4af0f]{width:100%;padding:1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .2s}.input-primary[data-v-a7e4af0f]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-description[data-v-a7e4af0f]{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:.9375rem;font-family:inherit;resize:vertical;transition:all .2s}.input-description[data-v-a7e4af0f]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-description[data-v-a7e4af0f]::placeholder{color:#9ca3af}.form-actions[data-v-a7e4af0f]{display:flex;gap:1rem}.btn-primary[data-v-a7e4af0f]{flex:1;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.btn-primary[data-v-a7e4af0f]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary[data-v-a7e4af0f]{padding:.875rem 1.5rem;background:#f3f4f6;color:#6b7280;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-secondary[data-v-a7e4af0f]:hover{background:#e5e7eb}.form-group-inline[data-v-a7e4af0f]{display:flex;align-items:center;gap:1rem}.form-label[data-v-a7e4af0f]{font-size:.875rem;font-weight:600;color:#374151;white-space:nowrap;min-width:80px}.priority-selector[data-v-a7e4af0f]{display:flex;gap:.5rem;flex:1}.priority-option[data-v-a7e4af0f]{flex:1;padding:.5rem 1rem;border:2px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.priority-option[data-v-a7e4af0f]:hover{border-color:#667eea;background:#f9fafb}.priority-option.low.active[data-v-a7e4af0f]{background:#f0fdf4;border-color:#22c55e;color:#22c55e}.priority-option.medium.active[data-v-a7e4af0f]{background:#fffbeb;border-color:#f59e0b;color:#f59e0b}.priority-option.high.active[data-v-a7e4af0f]{background:#fef2f2;border-color:#ef4444;color:#ef4444}.select-input[data-v-a7e4af0f],.date-input[data-v-a7e4af0f]{flex:1;padding:.5rem .75rem;border:2px solid #e5e7eb;border-radius:10px;font-size:.875rem;background:#fff;cursor:pointer;transition:all .2s}.select-input[data-v-a7e4af0f]:focus,.date-input[data-v-a7e4af0f]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.select-input[data-v-a7e4af0f]{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.subtasks-add-section[data-v-a7e4af0f]{display:flex;flex-direction:column;gap:.75rem}.subtask-input-row[data-v-a7e4af0f]{display:flex;gap:.5rem;align-items:center}.input-subtask[data-v-a7e4af0f]{flex:1;padding:.5rem .75rem;border:2px solid #e5e7eb;border-radius:10px;font-size:.875rem;transition:all .2s}.input-subtask[data-v-a7e4af0f]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-add-subtask[data-v-a7e4af0f]{background:#22c55e;color:#fff;border:none;padding:.5rem 1rem;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:.25rem;transition:all .2s;white-space:nowrap}.btn-add-subtask[data-v-a7e4af0f]:hover{background:#16a34a;transform:translateY(-1px)}.btn-add-subtask span[data-v-a7e4af0f]:first-child{font-size:1.25rem;font-weight:300;line-height:1}.new-subtasks-list[data-v-a7e4af0f]{display:flex;flex-direction:column;gap:.5rem;padding-left:0}.new-subtask-item[data-v-a7e4af0f]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f9fafb;border-radius:8px;transition:all .2s}.new-subtask-item[data-v-a7e4af0f]:hover{background:#f3f4f6}.subtask-bullet[data-v-a7e4af0f]{color:#667eea;font-size:1.25rem;font-weight:700;line-height:1}.subtask-text[data-v-a7e4af0f]{flex:1;font-size:.9375rem;color:#374151}.btn-remove-subtask[data-v-a7e4af0f]{background:transparent;border:none;color:#ef4444;font-size:1.5rem;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;line-height:1;opacity:.6}.btn-remove-subtask[data-v-a7e4af0f]:hover{background:#fef2f2;opacity:1}.filter-section[data-v-a7e4af0f]{background:#fff;border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 12px #00000014}.search-box[data-v-a7e4af0f]{display:flex;gap:.75rem;margin-bottom:1rem}.search-input[data-v-a7e4af0f]{flex:1;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .2s}.search-input[data-v-a7e4af0f]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-search[data-v-a7e4af0f]{background:#667eea;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:10px;cursor:pointer;font-size:1.25rem;transition:all .2s}.btn-search[data-v-a7e4af0f]:hover{background:#5a67d8}.filter-tags[data-v-a7e4af0f]{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.filter-tag[data-v-a7e4af0f]{padding:.5rem 1rem;background:#f3f4f6;border:2px solid transparent;border-radius:20px;cursor:pointer;font-size:.875rem;font-weight:600;color:#6b7280;transition:all .2s}.filter-tag[data-v-a7e4af0f]:hover{background:#e5e7eb}.filter-tag.active[data-v-a7e4af0f]{background:#667eea;color:#fff;border-color:#667eea}.priority-filters[data-v-a7e4af0f]{display:flex;gap:.5rem}.priority-btn[data-v-a7e4af0f]{padding:.5rem 1rem;border-radius:20px;cursor:pointer;font-size:.875rem;font-weight:600;border:2px solid transparent;transition:all .2s;background:#f3f4f6}.priority-btn.high.active[data-v-a7e4af0f]{background:#fef2f2;border-color:#ef4444;color:#ef4444}.priority-btn.medium.active[data-v-a7e4af0f]{background:#fffbeb;border-color:#f59e0b;color:#f59e0b}.priority-btn.low.active[data-v-a7e4af0f]{background:#f0fdf4;border-color:#22c55e;color:#22c55e}.loading-state[data-v-a7e4af0f]{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014}.loading-spinner[data-v-a7e4af0f]{width:50px;height:50px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin-a7e4af0f .8s linear infinite;margin:0 auto 1rem}@keyframes spin-a7e4af0f{to{transform:rotate(360deg)}}.error-banner[data-v-a7e4af0f]{background:#fef2f2;border:2px solid #fecaca;border-radius:12px;padding:1rem 1.5rem;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem;color:#dc2626}.todo-sections[data-v-a7e4af0f]{display:flex;flex-direction:column;gap:2rem}.todo-section[data-v-a7e4af0f]{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 12px #00000014}.section-title[data-v-a7e4af0f]{margin:0 0 1.5rem;font-size:1.5rem;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:.75rem}.title-dot[data-v-a7e4af0f]{width:4px;height:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.section-title.completed .title-dot[data-v-a7e4af0f]{background:#d1d5db}.count[data-v-a7e4af0f]{background:#f3f4f6;color:#6b7280;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.todo-list[data-v-a7e4af0f]{display:flex;flex-direction:column;gap:1rem}.todo-card[data-v-a7e4af0f]{background:#f9fafb;border-radius:12px;padding:1.25rem;transition:all .2s;border-left:4px solid #667eea}.todo-card[data-v-a7e4af0f]:hover{background:#f3f4f6;transform:translate(4px)}.todo-card.overdue[data-v-a7e4af0f]{border-left-color:#ef4444;background:#fef2f2}.todo-card.completed[data-v-a7e4af0f]{opacity:.6}.todo-main[data-v-a7e4af0f]{display:flex;align-items:flex-start;gap:1rem}.checkbox-btn[data-v-a7e4af0f]{width:24px;height:24px;border:2px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;margin-top:.25rem}.checkbox-btn[data-v-a7e4af0f]:hover{border-color:#667eea}.checkbox-btn.checked[data-v-a7e4af0f]{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent}.checkbox-icon[data-v-a7e4af0f]{color:#fff;font-size:.875rem;font-weight:700}.todo-content[data-v-a7e4af0f]{flex:1;min-width:0}.todo-title[data-v-a7e4af0f]{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#1f2937;line-height:1.4}.todo-card.completed .todo-title[data-v-a7e4af0f]{text-decoration:line-through;color:#9ca3af}.todo-description[data-v-a7e4af0f]{margin:.5rem 0;color:#6b7280;font-size:.9375rem;line-height:1.5}.todo-meta[data-v-a7e4af0f]{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:.75rem}.priority-badge[data-v-a7e4af0f]{padding:.25rem .75rem;border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;text-transform:uppercase}.due-date[data-v-a7e4af0f]{font-size:.875rem;color:#6b7280;display:flex;align-items:center;gap:.25rem;font-weight:500}.due-date.overdue[data-v-a7e4af0f]{color:#ef4444}.overdue-text[data-v-a7e4af0f]{font-weight:700;margin-left:.25rem}.category-badge[data-v-a7e4af0f]{font-size:.875rem;font-weight:600}.btn-delete[data-v-a7e4af0f]{background:transparent;border:none;padding:.5rem;cursor:pointer;font-size:1.25rem;opacity:0;transition:all .2s;border-radius:6px}.todo-card:hover .btn-delete[data-v-a7e4af0f]{opacity:1}.btn-delete[data-v-a7e4af0f]:hover{background:#fef2f2}.subtasks-section[data-v-a7e4af0f]{margin-top:1rem;padding-top:1rem;border-top:2px solid #e5e7eb}.subtasks-header[data-v-a7e4af0f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.subtasks-label[data-v-a7e4af0f]{font-size:.875rem;font-weight:600;color:#6b7280}.subtasks-count[data-v-a7e4af0f]{font-size:.75rem;color:#9ca3af;background:#f3f4f6;padding:.125rem .5rem;border-radius:10px}.subtasks-list[data-v-a7e4af0f]{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.subtask-item[data-v-a7e4af0f]{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#fff;border-radius:8px;transition:all .2s}.subtask-item[data-v-a7e4af0f]:hover{background:#f9fafb}.checkbox-small[data-v-a7e4af0f]{width:18px;height:18px;border:2px solid #d1d5db;border-radius:4px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.checkbox-small[data-v-a7e4af0f]:hover{border-color:#667eea}.checkbox-small.checked[data-v-a7e4af0f]{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent}.checkbox-icon-small[data-v-a7e4af0f]{color:#fff;font-size:.75rem;font-weight:700}.subtask-title[data-v-a7e4af0f]{flex:1;font-size:.9375rem;color:#374151}.subtask-title.completed[data-v-a7e4af0f]{text-decoration:line-through;color:#9ca3af}.btn-delete-small[data-v-a7e4af0f]{background:transparent;border:none;color:#ef4444;font-size:1.5rem;cursor:pointer;opacity:0;transition:opacity .2s;line-height:1;padding:0 .25rem}.subtask-item:hover .btn-delete-small[data-v-a7e4af0f]{opacity:1}.progress-section[data-v-a7e4af0f]{display:flex;align-items:center;gap:.75rem}.progress-bar[data-v-a7e4af0f]{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill[data-v-a7e4af0f]{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s}.progress-text[data-v-a7e4af0f]{font-size:.75rem;font-weight:700;color:#6b7280;min-width:40px;text-align:right}.empty-state[data-v-a7e4af0f]{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014}.empty-icon[data-v-a7e4af0f]{font-size:5rem;margin-bottom:1rem;opacity:.5}.empty-state h3[data-v-a7e4af0f]{margin:0 0 .5rem;font-size:1.5rem;color:#374151}.empty-state p[data-v-a7e4af0f]{margin:0;color:#9ca3af;font-size:1rem}.completed-section[data-v-a7e4af0f]{opacity:.8}.completed-section .todo-card[data-v-a7e4af0f]{border-left-color:#d1d5db}@media(max-width:768px){.header-content[data-v-a7e4af0f]{padding:0 1rem;flex-wrap:wrap;gap:1rem}.header-actions[data-v-a7e4af0f]{width:100%;justify-content:space-between}.main-content[data-v-a7e4af0f]{padding:1rem}.page-title[data-v-a7e4af0f]{font-size:1.5rem}.title-icon[data-v-a7e4af0f]{font-size:2rem}.stats-cards[data-v-a7e4af0f]{grid-template-columns:repeat(2,1fr)}.btn-add span[data-v-a7e4af0f]:last-child{display:none}.form-actions[data-v-a7e4af0f]{flex-direction:column}}@media(max-width:480px){.stats-cards[data-v-a7e4af0f]{grid-template-columns:1fr}}.dark{background:linear-gradient(135deg,#1f2937,#111827)}.dark{background:#1f2937f2}.dark{color:#f9fafb}.dark{background:#374151;border-color:#4b5563;color:#f9fafb}.dark{background:#374151;border-color:#4b5563;color:#d1d5db}.dark{border-color:#667eea;background:#4b5563}.dark{color:#d1d5db}.dark{background:#451a1a}.dark{background:#374151;border-color:#4b5563}.dark{background:#374151}.auth-page[data-v-7dbf4480]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:2rem}.auth-container[data-v-7dbf4480]{width:100%;max-width:420px}.auth-card[data-v-7dbf4480]{background:#fff;border-radius:24px;padding:3rem 2rem;box-shadow:0 20px 60px #0000004d}.auth-header[data-v-7dbf4480]{text-align:center;margin-bottom:2rem}.auth-title[data-v-7dbf4480]{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-subtitle[data-v-7dbf4480]{color:#6b7280;font-size:1rem;margin:0}.auth-form[data-v-7dbf4480]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-7dbf4480]{display:flex;flex-direction:column;gap:.5rem}.form-label[data-v-7dbf4480]{font-size:.875rem;font-weight:600;color:#374151}.form-input[data-v-7dbf4480]{padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .2s}.form-input[data-v-7dbf4480]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-primary[data-v-7dbf4480]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-primary[data-v-7dbf4480]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.btn-primary[data-v-7dbf4480]:disabled{opacity:.6;cursor:not-allowed}.auth-footer[data-v-7dbf4480]{text-align:center;padding-top:1rem}.auth-text[data-v-7dbf4480]{color:#6b7280;font-size:.875rem}.btn-link[data-v-7dbf4480]{background:none;border:none;color:#667eea;font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;padding:0;margin-left:.25rem}.btn-link[data-v-7dbf4480]:hover{text-decoration:underline}
