@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap);:root,[data-theme=dark]{--bg-primary:#0d0d14;--bg-secondary:#12121c;--bg-card:#181826;--bg-hover:#1f1f30;--bg-input:#12121c;--border:#252538;--border-light:#30304a;--accent:#6c63ff;--accent-hover:#8178ff;--accent-dim:#6c63ff24;--accent-glow:#6c63ff40;--success:#34d399;--success-dim:#34d3991f;--warning:#fbbf24;--warning-dim:#fbbf241f;--danger:#f87171;--danger-dim:#f871711f;--info:#60a5fa;--info-dim:#60a5fa1f;--text-primary:#e8e8f4;--text-secondary:#9090b8;--text-muted:#50507a;--shadow-sm:0 2px 8px #0000004d;--shadow:0 4px 20px #00000073;--shadow-lg:0 8px 40px #000000a6;--sidebar-width:260px;--radius:12px;--radius-sm:8px;--radius-xs:6px;--font:"Inter",sans-serif;--font-mono:"JetBrains Mono",monospace;--transition:0.18s ease}[data-theme=light]{--bg-primary:#f4f4f8;--bg-secondary:#fff;--bg-card:#fff;--bg-hover:#f0f0f6;--bg-input:#f4f4f8;--border:#e2e2ee;--border-light:#d0d0e0;--accent:#6c63ff;--accent-hover:#5a52e0;--accent-dim:#6c63ff1a;--accent-glow:#6c63ff2e;--success:#059669;--success-dim:#0596691a;--warning:#d97706;--warning-dim:#d977061a;--danger:#dc2626;--danger-dim:#dc26261a;--info:#2563eb;--info-dim:#2563eb1a;--text-primary:#1a1a2e;--text-secondary:#4a4a6a;--text-muted:#9090b0;--shadow-sm:0 1px 4px #00000014;--shadow:0 4px 16px #0000001a;--shadow-lg:0 8px 32px #00000024}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:#0d0d14;background:var(--bg-primary);color:#e8e8f4;color:var(--text-primary);font-family:Inter,sans-serif;font-family:var(--font);min-height:100vh;overflow-x:hidden;transition:background .18s ease,color .18s ease;transition:background var(--transition),color var(--transition)}a{color:inherit;text-decoration:none}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#30304a;background:var(--border-light);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#6c63ff;background:var(--accent)}.app-loader{align-items:center;background:#0d0d14;background:var(--bg-primary);display:flex;height:100vh;justify-content:center}.loader-ring{animation:spin .75s linear infinite;border:3px solid #252538;border-top-color:#6c63ff;border:3px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:38px;width:38px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.toast-container{bottom:1.5rem;flex-direction:column;pointer-events:none;position:fixed;right:1.5rem;z-index:9999}.toast,.toast-container{display:flex;gap:.625rem}.toast{align-items:center;animation:slideIn .25s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 4px 20px #00000073;box-shadow:var(--shadow);color:#e8e8f4;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;max-width:340px;padding:.75rem 1.125rem;pointer-events:all}.toast-success{border-color:#34d3994d}.toast-error{border-color:#f871714d}.toast-warning{border-color:#fbbf244d}.toast-info{border-color:#60a5fa4d}.toast-icon{flex-shrink:0;font-size:1rem}.auth-page{align-items:center;background:#0d0d14;background:var(--bg-primary);display:flex;justify-content:center;min-height:100vh;padding:2rem;position:relative}.auth-grid-bg{background-image:linear-gradient(#252538 1px,#0000 0),linear-gradient(90deg,#252538 1px,#0000 0);background-image:linear-gradient(var(--border) 1px,#0000 1px),linear-gradient(90deg,var(--border) 1px,#0000 1px);background-size:48px 48px;inset:0;-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 30%,#0000 100%);mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 30%,#0000 100%);opacity:.35}.auth-glow,.auth-grid-bg{pointer-events:none;position:fixed;z-index:0}.auth-glow{background:radial-gradient(circle,#6c63ff24 0,#0000 65%);background:radial-gradient(circle,var(--accent-dim) 0,#0000 65%);border-radius:50%;height:500px;right:-120px;top:-160px;width:500px}.auth-card{animation:scaleIn .35s ease;background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:18px;box-shadow:0 8px 40px #000000a6;box-shadow:var(--shadow-lg);max-width:450px;padding:2.75rem;position:relative;width:100%;z-index:1}.auth-logo{gap:.75rem;margin-bottom:2rem}.auth-logo,.auth-logo-icon{align-items:center;display:flex}.auth-logo-icon{background:linear-gradient(135deg,#6c63ff,#8178ff);background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:10px;font-size:1.2rem;height:42px;justify-content:center;width:42px}.auth-logo-text{font-size:1.4rem;font-weight:800;letter-spacing:-.03em}.auth-title{font-size:1.65rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.4rem}.auth-subtitle{color:#9090b8;color:var(--text-secondary);font-size:.875rem;margin-bottom:1.75rem}.form-group{margin-bottom:1.125rem}.form-label{color:#9090b8;color:var(--text-secondary);display:block;font-size:.75rem;font-weight:600;letter-spacing:.06em;margin-bottom:.4rem;text-transform:uppercase}.form-input{background:#12121c;background:var(--bg-input);border:1px solid #252538;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#e8e8f4;color:var(--text-primary);font-family:Inter,sans-serif;font-family:var(--font);font-size:.9rem;outline:none;padding:.75rem 1rem;transition:border-color .18s ease,box-shadow .18s ease;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.form-input:focus{border-color:#6c63ff;border-color:var(--accent);box-shadow:0 0 0 3px #6c63ff24;box-shadow:0 0 0 3px var(--accent-dim)}.form-input::placeholder{color:#50507a;color:var(--text-muted)}textarea.form-input{min-height:80px;resize:vertical}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:Inter,sans-serif;font-family:var(--font);font-size:.875rem;font-weight:600;gap:.45rem;justify-content:center;padding:.75rem 1.375rem;transition:all .18s ease;transition:all var(--transition);white-space:nowrap}.btn-primary{background:#6c63ff;background:var(--accent);color:#fff;width:100%}.btn-primary:hover{background:#8178ff;background:var(--accent-hover);box-shadow:0 4px 16px #6c63ff40;box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.55;transform:none}.btn-secondary{border:1px solid #252538;border:1px solid var(--border);color:#e8e8f4;color:var(--text-primary)}.btn-secondary,.btn-secondary:hover{background:#1f1f30;background:var(--bg-hover)}.btn-secondary:hover{border-color:#30304a;border-color:var(--border-light)}.btn-ghost{background:#0000;border:1px solid #252538;border:1px solid var(--border);color:#9090b8;color:var(--text-secondary)}.btn-ghost:hover{background:#1f1f30;background:var(--bg-hover);color:#e8e8f4;color:var(--text-primary)}.btn-danger-outline{background:#0000;border:1px solid #f871714d;color:#f87171;color:var(--danger)}.btn-danger-outline:hover{background:#f871711f;background:var(--danger-dim)}.btn-sm{font-size:.8rem;padding:.5rem .875rem}.btn-xs{font-size:.75rem;padding:.3rem .625rem}.btn-icon{background:#0000;border:1px solid #0000;border-radius:6px;border-radius:var(--radius-xs);color:#50507a;color:var(--text-muted);height:34px;padding:0;width:34px}.btn-icon:hover{background:#1f1f30;background:var(--bg-hover);border-color:#252538;border-color:var(--border);color:#e8e8f4;color:var(--text-primary)}.alert{border-radius:6px;border-radius:var(--radius-xs);font-size:.85rem;margin-bottom:1.125rem;padding:.75rem 1rem}.alert-error{background:#f871711f;background:var(--danger-dim);border:1px solid #f8717140;color:#f87171;color:var(--danger)}.alert-success{background:#34d3991f;background:var(--success-dim);border:1px solid #34d39940;color:#34d399;color:var(--success)}.auth-footer{color:#9090b8;color:var(--text-secondary);font-size:.85rem;margin-top:1.5rem;text-align:center}.auth-footer a{color:#8178ff;color:var(--accent-hover);font-weight:600}.auth-footer a:hover{text-decoration:underline}.dashboard{display:flex;height:100vh;overflow:hidden}.sidebar{background:#12121c;background:var(--bg-secondary);border-right:1px solid #252538;border-right:1px solid var(--border);display:flex;flex-direction:column;min-width:260px;min-width:var(--sidebar-width);overflow-x:hidden;overflow-y:auto;transition:background .18s ease;transition:background var(--transition);width:260px;width:var(--sidebar-width)}.sidebar-top{padding:1.25rem 1rem .5rem}.sidebar-logo{align-items:center;display:flex;gap:.625rem;margin-bottom:1.5rem;padding:.5rem .625rem}.sidebar-logo-icon{align-items:center;background:linear-gradient(135deg,#6c63ff,#8178ff);background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:8px;display:flex;flex-shrink:0;font-size:1rem;height:32px;justify-content:center;width:32px}.sidebar-logo-name{font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.sidebar-logo-version{background:#1f1f30;background:var(--bg-hover);border:1px solid #252538;border:1px solid var(--border);border-radius:4px;color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.62rem;margin-left:auto;padding:.1rem .35rem}.nav-section{margin-bottom:.5rem}.nav-section-title{color:#50507a;color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.09em;padding:0 .625rem .4rem;text-transform:uppercase}.nav-item{align-items:center;border:1px solid #0000;border-radius:6px;border-radius:var(--radius-xs);color:#9090b8;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.625rem;margin-bottom:.15rem;padding:.6rem .75rem;position:relative;transition:all .18s ease;transition:all var(--transition)}.nav-item:hover{background:#1f1f30;background:var(--bg-hover);color:#e8e8f4;color:var(--text-primary)}.nav-item.active{background:#6c63ff24;background:var(--accent-dim);border-color:#6c63ff2e;color:#8178ff;color:var(--accent-hover);font-weight:600}.nav-item-icon{flex-shrink:0;font-size:.95rem;text-align:center;width:18px}.nav-item-badge{background:#0d0d14;background:var(--bg-primary);border:1px solid #252538;border:1px solid var(--border);border-radius:20px;color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.7rem;margin-left:auto;min-width:22px;padding:.1rem .45rem;text-align:center}.nav-item.active .nav-item-badge{background:#6c63ff24;background:var(--accent-dim);border-color:#6c63ff40;color:#8178ff;color:var(--accent-hover)}.sidebar-divider{background:#252538;background:var(--border);height:1px;margin:.75rem 1rem}.sidebar-progress{padding:.25rem .75rem 1rem}.progress-label{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.progress-label-text{color:#9090b8;color:var(--text-secondary);font-size:.78rem}.progress-label-pct{color:#8178ff;color:var(--accent-hover);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.75rem;font-weight:600}.progress-track{background:#1f1f30;background:var(--bg-hover);border-radius:10px;height:5px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#6c63ff,#34d399);background:linear-gradient(90deg,var(--accent),var(--success));border-radius:10px;height:100%;transition:width .6s ease}.sidebar-bottom{border-top:1px solid #252538;border-top:1px solid var(--border);margin-top:auto;padding:1rem}.user-card{align-items:center;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:.625rem;padding:.625rem;transition:background .18s ease;transition:background var(--transition)}.user-card:hover{background:#1f1f30;background:var(--bg-hover)}.user-avatar{align-items:center;background:linear-gradient(135deg,#6c63ff,#8178ff);background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:34px;justify-content:center;width:34px}.user-info{flex:1 1;min-width:0}.user-name{font-size:.825rem;font-weight:700}.user-email,.user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.68rem}.sidebar-actions{display:flex;gap:.375rem;margin-top:.625rem}.theme-toggle{align-items:center;background:#1f1f30;background:var(--bg-hover);border:1px solid #252538;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-xs);color:#9090b8;color:var(--text-secondary);cursor:pointer;display:flex;font-family:Inter,sans-serif;font-family:var(--font);font-size:.8rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;transition:all .18s ease;transition:all var(--transition);width:100%}.theme-toggle:hover{border-color:#6c63ff;border-color:var(--accent);color:#e8e8f4;color:var(--text-primary)}.theme-toggle-knob{background:#30304a;background:var(--border-light);border-radius:9px;flex-shrink:0;height:18px;margin-left:auto;position:relative;transition:background .18s ease;transition:background var(--transition);width:32px}.theme-toggle-knob:after{background:#fff;border-radius:50%;content:"";height:12px;left:3px;position:absolute;top:3px;transition:transform .18s ease;transition:transform var(--transition);width:12px}[data-theme=light] .theme-toggle-knob{background:#6c63ff;background:var(--accent)}[data-theme=light] .theme-toggle-knob:after{transform:translateX(14px)}.main-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.topbar{align-items:center;background:#12121c;background:var(--bg-secondary);border-bottom:1px solid #252538;border-bottom:1px solid var(--border);display:flex;gap:1rem;height:62px;min-height:62px;padding:0 1.75rem;position:-webkit-sticky;position:sticky;top:0;z-index:20}.topbar-title{font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.topbar-actions{align-items:center;display:flex;gap:.625rem;margin-left:auto}.search-wrap{position:relative}.search-wrap input{background:#12121c;background:var(--bg-input);border:1px solid #252538;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#e8e8f4;color:var(--text-primary);font-family:Inter,sans-serif;font-family:var(--font);font-size:.85rem;outline:none;padding:.55rem .875rem .55rem 2.25rem;transition:all .18s ease;transition:all var(--transition);width:220px}.search-wrap input:focus{border-color:#6c63ff;border-color:var(--accent);box-shadow:0 0 0 3px #6c63ff24;box-shadow:0 0 0 3px var(--accent-dim);width:270px}.search-icon,.search-wrap input::placeholder{color:#50507a;color:var(--text-muted)}.search-icon{font-size:.85rem;left:.65rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.page-content{flex:1 1;overflow-y:auto}.filter-bar{align-items:center;background:#12121c;background:var(--bg-secondary);border-bottom:1px solid #252538;border-bottom:1px solid var(--border);display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;padding:.75rem 1.75rem}.filter-bar::-webkit-scrollbar{height:0}.filter-chip{align-items:center;background:#0000;border:1px solid #252538;border:1px solid var(--border);border-radius:20px;color:#9090b8;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:600;gap:.35rem;padding:.38rem .75rem;transition:all .18s ease;transition:all var(--transition);white-space:nowrap}.filter-chip:hover{background:#1f1f30;background:var(--bg-hover);color:#e8e8f4;color:var(--text-primary)}.filter-chip.active{background:#6c63ff24;background:var(--accent-dim);border-color:#6c63ff47;color:#8178ff;color:var(--accent-hover)}.filter-chip-dot{border-radius:50%;height:7px;width:7px}.filter-sep{background:#252538;background:var(--border);flex-shrink:0;height:20px;width:1px}.filter-select{background:#12121c;background:var(--bg-input);border:1px solid #252538;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-xs);color:#9090b8;color:var(--text-secondary);cursor:pointer;font-family:Inter,sans-serif;font-family:var(--font);font-size:.78rem;outline:none;padding:.38rem .75rem;transition:all .18s ease;transition:all var(--transition)}.filter-select:hover{border-color:#30304a;border-color:var(--border-light);color:#e8e8f4;color:var(--text-primary)}.tasks-area{padding:1.5rem 1.75rem}.view-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.view-title{color:#9090b8;color:var(--text-secondary);font-size:.85rem;font-weight:600}.view-switcher{display:flex;gap:.25rem}.view-btn{align-items:center;background:#0000;border:1px solid #252538;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-xs);color:#50507a;color:var(--text-muted);cursor:pointer;display:flex;font-size:.85rem;height:30px;justify-content:center;transition:all .18s ease;transition:all var(--transition);width:30px}.view-btn:hover{border-color:#30304a;border-color:var(--border-light);color:#e8e8f4;color:var(--text-primary)}.view-btn.active{background:#6c63ff24;background:var(--accent-dim);border-color:#6c63ff40;color:#8178ff;color:var(--accent-hover)}.tasks-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.tasks-list{display:flex;flex-direction:column;gap:.5rem}.tasks-list .task-card{align-items:center;display:flex;gap:1rem;padding:.875rem 1.125rem}.tasks-list .task-card:before{bottom:0;height:auto;position:absolute;top:0;width:3px}.tasks-list .task-header{flex:1 1;margin-bottom:0}.tasks-list .task-description{display:none}.tasks-list .task-meta{flex-wrap:nowrap}.task-card{animation:fadeUp .28s ease both;background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);overflow:hidden;padding:1.125rem;position:relative;transition:all .18s ease;transition:all var(--transition)}.task-card:before{bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.priority-high:before{background:#f87171;background:var(--danger)}.priority-medium:before{background:#fbbf24;background:var(--warning)}.priority-low:before{background:#34d399;background:var(--success)}.task-card:hover{border-color:#30304a;border-color:var(--border-light);box-shadow:0 4px 20px #00000073;box-shadow:var(--shadow);transform:translateY(-2px)}.task-card.done-card{opacity:.58}.task-header{align-items:flex-start;display:flex;gap:.625rem;margin-bottom:.625rem}.task-title{flex:1 1;font-size:.9rem;font-weight:700;line-height:1.45;word-break:break-word}.done-card .task-title{color:#50507a;color:var(--text-muted);text-decoration:line-through}.task-actions{display:flex;flex-shrink:0;gap:.2rem}.task-action-btn{align-items:center;background:none;border:none;border-radius:6px;border-radius:var(--radius-xs);color:#50507a;color:var(--text-muted);cursor:pointer;display:flex;font-size:.78rem;height:26px;justify-content:center;transition:all .14s;width:26px}.task-action-btn:hover{background:#1f1f30;background:var(--bg-hover);color:#e8e8f4;color:var(--text-primary)}.task-action-btn.delete:hover{color:#f87171;color:var(--danger)}.task-action-btn.complete:hover{color:#34d399;color:var(--success)}.task-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#9090b8;color:var(--text-secondary);display:-webkit-box;font-size:.8rem;line-height:1.55;margin-bottom:.875rem;overflow:hidden}.task-meta{display:flex;flex-wrap:wrap;gap:.375rem}.badge,.task-meta{align-items:center}.badge{border-radius:20px;display:inline-flex;font-size:.7rem;font-weight:700;gap:.25rem;letter-spacing:.02em;padding:.2rem .55rem;white-space:nowrap}.badge-todo{background:#9090b81f;border:1px solid #9090b833;color:#9090b8;color:var(--text-secondary)}.badge-in-progress{background:#6c63ff24;background:var(--accent-dim);border:1px solid #6c63ff33;color:#8178ff;color:var(--accent-hover)}.badge-done{background:#34d3991f;background:var(--success-dim);border:1px solid #34d39933;color:#34d399;color:var(--success)}.badge-high{background:#f871711f;background:var(--danger-dim);border:1px solid #f8717133;color:#f87171;color:var(--danger)}.badge-medium{background:#fbbf241f;background:var(--warning-dim);border:1px solid #fbbf2433;color:#fbbf24;color:var(--warning)}.badge-low{background:#34d3991f;background:var(--success-dim);border:1px solid #34d39933;color:#34d399;color:var(--success)}.badge-category{background:#1f1f30;background:var(--bg-hover);border:1px solid #252538;border:1px solid var(--border);color:#9090b8;color:var(--text-secondary)}.task-due{color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.7rem;margin-left:auto}.task-due.overdue{color:#f87171;color:var(--danger);font-weight:600}.task-due.soon{color:#fbbf24;color:var(--warning)}.tags-row{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}.tag{background:#1f1f30;background:var(--bg-hover);border:1px solid #252538;border:1px solid var(--border);border-radius:4px;color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.68rem;padding:.15rem .45rem}.done-toggle{align-items:center;background:#0000;border:2px solid #30304a;border:2px solid var(--border-light);border-radius:50%;color:#0000;cursor:pointer;display:flex;flex-shrink:0;font-size:.6rem;height:20px;justify-content:center;margin-top:2px;transition:all .18s ease;transition:all var(--transition);width:20px}.done-toggle:hover{color:#34d399;color:var(--success)}.done-toggle.checked,.done-toggle:hover{border-color:#34d399;border-color:var(--success)}.done-toggle.checked{background:#34d399;background:var(--success);color:#fff}.kanban-board{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.kanban-column{background:#12121c;background:var(--bg-secondary);border:1px solid #252538;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);overflow:hidden}.kanban-col-header{align-items:center;border-bottom:1px solid #252538;border-bottom:1px solid var(--border);display:flex;font-size:.82rem;font-weight:700;justify-content:space-between;padding:.875rem 1rem}.kanban-col-dot{border-radius:50%;height:9px;margin-right:.5rem;width:9px}.kanban-col-count{background:#1f1f30;background:var(--bg-hover);border:1px solid #252538;border:1px solid var(--border);border-radius:20px;color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.72rem;padding:.1rem .45rem}.kanban-col-body{display:flex;flex-direction:column;gap:.625rem;min-height:120px;padding:.75rem}.kanban-card{background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;overflow:hidden;padding:.875rem;position:relative;transition:all .18s ease;transition:all var(--transition)}.kanban-card:before{bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.kanban-card:hover{border-color:#30304a;border-color:var(--border-light);box-shadow:0 2px 8px #0000004d;box-shadow:var(--shadow-sm)}.kanban-card-title{font-size:.85rem;font-weight:600;line-height:1.4;margin-bottom:.5rem}.kanban-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.375rem}.kanban-move-btns{display:flex;gap:.25rem;margin-top:.625rem}.kanban-move-btn{background:#0000;border:1px solid #252538;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-xs);color:#50507a;color:var(--text-muted);cursor:pointer;flex:1 1;font-family:Inter,sans-serif;font-family:var(--font);font-size:.72rem;padding:.3rem;transition:all .18s ease;transition:all var(--transition)}.kanban-move-btn:hover{background:#1f1f30;background:var(--bg-hover);border-color:#30304a;border-color:var(--border-light);color:#e8e8f4;color:var(--text-primary)}.analytics-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:1.5rem}.stat-card{animation:fadeUp .3s ease both;background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);padding:1.25rem}.stat-card-value{font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:2rem;font-weight:800;letter-spacing:-.03em}.stat-card-label{color:#9090b8;color:var(--text-secondary);font-size:.78rem;font-weight:500;margin-top:.25rem}.stat-card-sub{color:#50507a;color:var(--text-muted);font-size:.72rem;margin-top:.5rem}.chart-card{background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);margin-bottom:1rem;padding:1.25rem}.chart-title{color:#e8e8f4;color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:1.25rem}.bar-chart{align-items:flex-end;display:flex;gap:.5rem;height:120px}.bar-group{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:.375rem}.bar{border-radius:4px 4px 0 0;min-height:4px;transition:height .6s ease;width:100%}.bar-label{color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.68rem}.donut-wrap{align-items:center;display:flex;flex-wrap:wrap;gap:2rem}.donut-legend{display:flex;flex-direction:column;gap:.625rem}.legend-item{align-items:center;display:flex;font-size:.8rem;gap:.5rem}.legend-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.legend-label{color:#9090b8;color:var(--text-secondary)}.legend-val{font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-weight:700;margin-left:auto}.category-bars{display:flex;flex-direction:column;gap:.75rem}.cat-row{align-items:center;display:flex;gap:.75rem}.cat-name{color:#9090b8;color:var(--text-secondary);flex-shrink:0;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:90px}.cat-track{background:#1f1f30;background:var(--bg-hover);border-radius:4px;flex:1 1;height:8px;overflow:hidden}.cat-fill{background:#6c63ff;background:var(--accent);border-radius:4px;height:100%;transition:width .8s ease}.cat-count{color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.75rem;text-align:right;width:20px}.profile-page{max-width:640px;padding:1.5rem 1.75rem}.profile-header{align-items:center;display:flex;gap:1.5rem;margin-bottom:2rem}.profile-avatar-big{align-items:center;background:linear-gradient(135deg,#6c63ff,#8178ff);background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.75rem;font-weight:700;height:72px;justify-content:center;width:72px}.profile-name{font-size:1.4rem;font-weight:800;letter-spacing:-.02em}.profile-since{color:#50507a;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.78rem;margin-top:.25rem}.section-card{animation:fadeUp .3s ease both;background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);margin-bottom:1rem;padding:1.375rem}.section-card-title{font-size:.875rem;font-weight:700;margin-bottom:1.25rem}.modal-overlay{align-items:center;animation:fadeIn .18s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:200}.modal{animation:scaleIn .22s ease;background:#181826;background:var(--bg-card);border:1px solid #252538;border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 40px #000000a6;box-shadow:var(--shadow-lg);max-height:90vh;max-width:500px;overflow-y:auto;padding:1.75rem;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.375rem}.modal-title{font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.modal-close{align-items:center;background:#1f1f30;background:var(--bg-hover);border:none;border-radius:6px;border-radius:var(--radius-xs);color:#9090b8;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.85rem;height:30px;justify-content:center;transition:all .18s ease;transition:all var(--transition);width:30px}.modal-close:hover{color:#e8e8f4;color:var(--text-primary)}.modal-footer{display:flex;gap:.625rem;justify-content:flex-end;margin-top:1.375rem}.modal-footer .btn{width:auto}.empty-state{animation:fadeIn .3s ease;color:#50507a;color:var(--text-muted);grid-column:1/-1;padding:4rem 2rem;text-align:center}.empty-state-icon{font-size:2.5rem;margin-bottom:.875rem;opacity:.45}.empty-state h3{color:#9090b8;color:var(--text-secondary);font-size:1rem;font-weight:700;margin-bottom:.4rem}.empty-state p{font-size:.83rem}.loading-overlay{align-items:center;display:flex;grid-column:1/-1;justify-content:center;padding:3rem}@media (max-width:900px){.kanban-board{grid-template-columns:1fr}}@media (max-width:768px){.sidebar{display:none}.tasks-grid{grid-template-columns:1fr}.analytics-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}.topbar{padding:0 1rem}.tasks-area{padding:1rem}.filter-bar{padding:.625rem 1rem}.profile-page{padding:1rem}}
/*# sourceMappingURL=main.e7c4c324.css.map*/