.login-form{display:flex;flex-direction:column;gap:1.25rem;width:100%}.form-group input{background-color:#f1f5f9;border:1px solid #0000;border-radius:var(--radius-md);color:#1e293b;font-weight:500;padding:.85rem 1rem;transition:all .2s}.form-group input:focus{background-color:#fff;border-color:var(--color-primary);box-shadow:none}.submit-button{background-color:var(--color-primary);border-radius:var(--radius-pill);box-shadow:none;color:#fff;padding:.85rem 1rem}.submit-button:hover{background-color:var(--color-primary-hover);transform:none}.submit-button:disabled{background-color:var(--text-muted);opacity:.7}.error-message{background-color:#d94f3c0d;border:none}.success-message{border:none;margin-bottom:.75rem;padding:.75rem 1rem;text-align:center}.register-form{gap:1.25rem;width:100%}.form-group,.register-form{display:flex;flex-direction:column}.form-group{text-align:left}.form-group label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-group input{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-size:1rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #3b82f64d;outline:none}.submit-button{background-color:var(--accent-color);border:none;border-radius:8px;color:var(--text-light);cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.875rem 1rem;transition:background-color .2s;width:100%}.submit-button:hover{background-color:#2563eb}.submit-button:disabled{background-color:#9ca3af;cursor:not-allowed}.error-message{background-color:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#dc2626;padding:.75rem 1rem;text-align:center}.input-warning{color:#dc2626;font-size:.75rem}.password-hint{color:#4e4f52;font-size:.75rem;margin-top:.25rem}.password-hint.valid{color:#10b981}.password-field{align-items:center;display:flex;position:relative}.password-field input{padding-right:3rem;width:100%}.toggle-password{background:#0000;border:none;cursor:pointer;font-size:1rem;line-height:1;padding:.25rem .5rem;position:absolute;right:.5rem}.req-list{grid-gap:.25rem;display:grid;font-size:.875rem;gap:.25rem;list-style:none;margin:.5rem 0 0;padding:0}.req-item{color:#374151}.req-item:before{color:#521b21;content:"X";margin-right:.5rem;opacity:1}.req-item.valid{color:#16a34a}.req-item.valid:before{color:#16a34a;content:"✓";opacity:1}.input-warning{color:#b91c1c;font-size:.825rem;margin-top:.25rem}.form-switch-button{padding:5px}.login-page-container{align-items:center;background-color:var(--bg-app);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-content-wrapper{gap:2rem;max-width:480px;width:100%}.login-content-wrapper,.login-header{align-items:center;display:flex;flex-direction:column}.login-header{text-align:center}.brand-image{height:auto;margin-bottom:1.5rem;max-width:180px;width:100%}.brand-title{color:var(--text-main);font-size:2.5rem;font-weight:800;letter-spacing:-.03em;margin:0 0 .5rem}.brand-subtitle{color:var(--text-muted);font-size:1.1rem;font-weight:400;line-height:1.5;margin:0;max-width:300px}.login-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:none;padding:2.5rem 2rem;text-align:center;width:100%}.login-card h2{color:var(--text-main);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem}.login-card .login-prompt{color:var(--text-muted);font-size:.95rem;margin-bottom:1.5rem}.signup-link{color:var(--text-muted);font-size:.9rem;margin-top:1.5rem}.link-button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:inherit;font-weight:600;padding:0;text-decoration:none;transition:color .2s}.link-button:hover{color:var(--color-primary-hover);text-decoration:underline}.link-button:disabled{cursor:not-allowed;opacity:.5;text-decoration:none}.form-copyright{color:#a8a29e;font-size:.8rem;font-weight:500;margin-top:1rem;text-align:center}@media (max-width:480px){.login-card{border:none;padding:2rem 1.5rem}}.app-footer{background-color:initial;border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:.85rem;margin:0 auto;padding:2rem 1rem;text-align:center;width:100%}.app-footer p{margin:0}@media (max-width:768px){.app-footer{padding:1.5rem 1.5rem 6rem}}.icon-btn,.notif-bell{position:relative}.icon-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;height:40px;justify-content:center;transition:background-color .2s;width:40px}.icon-btn:hover{background:#0000000d;color:var(--color-primary)}.badge{background:var(--color-primary);border:2px solid var(--bg-surface);border-radius:999px;color:#fff;font-size:.65rem;font-weight:700;line-height:1;padding:2px 5px;position:absolute;right:4px;top:4px}.notif-menu{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000014;max-height:60vh;overflow:auto;position:absolute;right:0;top:calc(100% + 8px);width:320px;z-index:2000}.notif-item{border-bottom:1px solid var(--border-subtle);color:var(--text-main);display:flex;gap:.5rem;padding:.75rem;position:relative;text-decoration:none;transition:background-color .15s}.notif-item:last-child{border-bottom:none}.notif-item:hover{background-color:#f1f5f9}.notif-item.unread{background:#d94f3c0d}.notif-item a{color:inherit;flex:1 1;text-align:left;text-decoration:none}.notif-message{font-size:.9rem;line-height:1.4;width:90%}.notif-meta{font-size:.75rem;margin-top:.25rem;opacity:.6}.notif-empty{color:var(--text-muted);font-size:.9rem;padding:2rem 1rem;text-align:center}.notif-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:1rem;height:24px;justify-content:center;line-height:1;opacity:.6;padding:4px;pointer-events:auto;position:absolute;right:8px;top:8px;width:24px;z-index:1}.notif-close:hover{background:#0000000d;color:var(--color-primary);opacity:1}.navbar{background-color:#f4f1ea;border-bottom:1px solid var(--border-subtle);box-shadow:none;padding:.75rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{gap:1rem;justify-content:space-between;margin:0 auto;max-width:1000px}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{color:var(--text-main);font-size:1.25rem;font-weight:800;gap:.5rem;letter-spacing:-.02em;text-decoration:none}.navbar-logo:hover{color:var(--color-primary)}.navbar-right-group{align-items:center;display:flex;gap:1rem}.user-menu{position:relative}.user-menu-button{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-main);cursor:pointer;display:flex;font-size:.9rem;font-weight:600;padding:.5rem;transition:background-color .2s}.user-menu-button:hover{background:#0000000d;color:var(--color-primary)}.dropdown-menu{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000000d;display:flex;flex-direction:column;min-width:200px;opacity:0;padding:.5rem;pointer-events:none;position:absolute;right:0;top:calc(100% + 8px);transform:translateY(-10px);transition:opacity .2s cubic-bezier(.2,.8,.2,1),transform .2s cubic-bezier(.2,.8,.2,1);z-index:1001}.dropdown-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}.dropdown-item{background:none;border:none;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-main);cursor:pointer;display:block;font-size:.95rem;line-height:1.4;padding:.75rem 1rem;text-align:left;text-decoration:none;transition:background-color .15s ease;width:100%}.dropdown-item:hover{background-color:#f1f5f9;color:var(--color-primary)}.dropdown-divider{background-color:var(--border-subtle);margin:.5rem 0}.logout-button{color:var(--color-primary)}.logout-button:hover{background-color:#d94f3c1a;color:var(--color-primary-hover)}@media (max-width:768px){.navbar{padding:.5rem 1rem}.navbar-container{flex-wrap:nowrap}.user-menu{display:block}.navbar-right-group{gap:.5rem}}.modal-backdrop{background-color:#000000b3}.modal-content{background-color:#1f2937;border:1px solid #374151;border-radius:8px;box-shadow:0 5px 15px #0000004d;color:#e6edf3;padding:1.5rem 2rem;width:90%}.modal-content h2{color:#cdd5de;margin-bottom:1.5rem}.modal-content .form-group{margin-bottom:1rem}.modal-content label{color:#9ca3af;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.modal-content input[type=date],.modal-content input[type=text],.modal-content select{background-color:#374151;border:1px solid #4b5563;border-radius:6px;color:#e6edf3;height:42px;padding:.65rem .75rem}.modal-content select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%239ca3af%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M7.247%2011.14%202.451%205.658C1.885%205.013%202.345%204%203.204%204h9.592a1%201%200%200%201%20.753%201.659l-4.796%205.48a1%201%200%200%201-1.506%200z%22%2F%3E%3C%2Fsvg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:12px 12px}.modal-content .checkbox-group{align-items:center;flex-direction:row;gap:.5rem;margin-bottom:1rem}.modal-content .checkbox-group input[type=checkbox]{accent-color:#4a90e2;height:16px;width:16px}.modal-content .checkbox-group label{color:#9ca3af;font-weight:400;margin-bottom:0}.form-actions{gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.button-danger,.button-primary,.button-secondary{border-radius:6px;height:42px;padding:.65rem 1.25rem;transition:background-color .2s,opacity .2s}.button-primary{background-color:#4a90e2}.button-primary:hover:not(:disabled){background-color:#3a7bc2}.button-secondary{background-color:#4b5563;color:#e6edf3}.button-secondary:hover:not(:disabled){background-color:#5a6678}.button-danger{background-color:#ef4444;color:#fff}.button-danger:hover:not(:disabled){background-color:#dc2626}.error-message{color:#fca5a5;font-size:.875rem;margin-top:-.5rem}.task-toolbar{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;max-width:95%}.toolbar-header{display:flex;flex:1 1 auto;flex-direction:column;gap:.3rem}.toolbar-title{color:#e6edf3;font-size:2rem;font-weight:700;margin:0}.toolbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.add-task-button{background-color:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.25rem;transition:background-color .2s}.add-task-button:hover{background-color:#3a7bc2}.bucket-dropdown-wrapper{display:inline-block;position:relative}.bucket-dropdown-menu{background-color:#2a374a;border:1px solid #374151;border-radius:8px;box-shadow:0 4px 12px #0003;min-width:220px;opacity:0;padding:8px 0;pointer-events:none;position:absolute;right:0;top:calc(100% + 4px);transform:translateY(-10px);transition:opacity .2s ease-out,transform .2s ease-out;z-index:100}.bucket-dropdown-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}.bucket-dropdown-header{color:#9ca3af;font-size:.8rem;font-weight:600;padding:8px 12px;text-transform:uppercase}.bucket-dropdown-list{list-style:none;margin:0;max-height:300px;overflow-y:auto;padding:0}.dropdown-item-info{color:#9ca3af;font-size:.9rem;font-style:italic;padding:10px 12px}.dropdown-item-info.error{color:#fca5a5;font-style:normal}.dropdown-item-button button{background:none;border:none;box-sizing:border-box;color:#e6edf3;cursor:pointer;display:block;font-family:inherit;font-size:.9rem;padding:10px 12px;text-align:left;width:100%}.dropdown-item-button button:hover{background-color:#374151}.dropdown-item-button button.active{color:#4a90e2;font-weight:600}.dropdown-divider{background-color:#374151;height:1px;margin:8px 0}.dropdown-action-button{background:none;border:none;box-sizing:border-box;color:#e6edf3;cursor:pointer;display:block;font-size:.9rem;font-weight:500;padding:10px 12px;text-align:left;text-decoration:none;width:100%}.dropdown-action-button:hover{background-color:#374151;color:#e6edf3;text-align:left}.filter-display-message{color:#9ca3af;font-size:.9rem;font-style:italic;margin:0 auto 1.5rem;max-width:95%;text-align:right}.view-toggle-button{align-items:center;background-color:initial;border:1px solid #4b5563;border-radius:6px;color:#cdd5de;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s}.view-toggle-button:hover{background-color:#374151;border-color:#6b7280}.view-toggle-button .button-text{display:block}.view-buttons{display:flex;gap:.75rem}.view-button{background-color:#374151;border:none;border-radius:6px;color:#e6edf3;cursor:pointer;font-size:1rem;font-weight:600;min-width:110px;padding:.5rem;transition:background-color .2s}.view-button.active,.view-button:hover{background-color:#4a90e2;color:#fff}@media (max-width:768px){.task-toolbar{align-items:flex-start;flex-direction:column;gap:1rem;margin-bottom:1rem}.toolbar-title{font-size:1.5rem}.toolbar-actions{flex-direction:column;width:100%}.add-task-button{text-align:center;width:100%}.bucket-dropdown-wrapper{width:100%}.bucket-dropdown-menu{left:0;min-width:100%;right:auto}.filter-display-message{margin-top:0;text-align:left}.view-toggle-button{justify-content:center;width:100%}}.task-warning{background:#30270c;border-radius:6px;color:#ffca3a;display:inline-block;font-size:.88rem;font-weight:600;margin-top:.5rem;max-width:-webkit-max-content;max-width:max-content;padding:.45rem .75rem;width:auto}.tasks-container{color:#e6edf3;margin:0 auto;max-width:95%}.tasks-container.error{color:#fca5a5}.task-group-header{border-bottom:1px solid silver;color:#cdd5de;font-size:1.5rem;font-weight:600;margin:1.5rem 0 1rem;padding-bottom:.5rem}.no-tasks-message{color:#9ca3af;font-style:italic;padding:1rem 0}.completed-tasks-note{color:#888;font-size:.8rem;margin-bottom:20px;margin-top:20px;padding-left:20px;padding-right:20px;text-align:center}.task-item{align-items:center;background:#1f2937;border-left:.75rem solid #4b5563;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:.75rem;margin-bottom:.33rem;min-height:60px;padding:.2rem 1rem;transition:background-color .2s ease,box-shadow .2s ease,border-left-color .2s ease}.task-item:hover{background:#2a374a;box-shadow:0 0 12px #e6edf31a}.task-item.priority-h{border-left-color:#ef4444}.task-item.priority-m{border-left-color:#f59e0b}.task-item.priority-l{border-left-color:#22c55e}.task-details{align-items:center;display:flex;flex:1 1;gap:1rem;justify-content:space-between;overflow:hidden}.task-item.completed{background:#161e29;border-left-color:#374151}.task-item.completed .task-content p,.task-item.completed .task-due-info,.task-item.completed .task-original-due-date,.task-item.completed .task-priority{color:#6b7280;opacity:.7;text-decoration:line-through}.task-item.completed .task-due-info.overdue,.task-item.completed .task-due-info.soon{color:#6b7280}.complete-button{align-items:center;background:#0000;border:2px solid #6b7280;border-radius:50%;color:#22c55e;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;padding:0;transition:border-color .15s ease;width:32px}.complete-button:hover{border-color:#9ca3af}.task-content{align-items:center;display:flex;flex:1 1;gap:.5rem;overflow:hidden;text-align:left}.task-content p{font-size:1rem;font-weight:500;line-height:1.3;margin:0;white-space:normal;word-break:break-word}.task-content svg{flex-shrink:0}.task-controls{align-items:center;color:#9ca3af;display:flex;gap:.75rem}.task-bucket-name{background:#374151;border-radius:4px;color:#9ca3af;font:500 .8rem/1 system-ui,sans-serif;margin:0 4px;padding:2px 6px;white-space:nowrap}.task-original-due-date{color:#9ca3af;font-size:.8rem;white-space:nowrap}.task-due-info{align-items:center;display:flex;flex-direction:column;justify-content:center;min-width:60px;text-align:center}.task-due-info .days{color:#cdd5de;font-size:1.4rem;font-weight:700;line-height:1.1}.task-due-info .label{color:#9ca3af;font-size:.75rem;text-transform:lowercase}.task-due-info.overdue .days,.task-due-info.overdue .label{color:#fca5a5}.task-due-info.soon .days,.task-due-info.soon .label{color:#fcd34d}.task-priority,.task-weighted-score{background:#374151;border-radius:12px;color:#e6edf3;font-size:.8rem;font-weight:600;min-width:60px;padding:.2rem .6rem;text-align:center;text-transform:capitalize}.task-priority.priority-h{background:#ef4444;color:#fff}.task-priority.priority-m{background:#f59e0b;color:#1f2937}.task-priority.priority-l{background:#22c55e;color:#fff}.edit-button{background:none;border-radius:4px;color:#9ca3af;padding:4px}.edit-button:hover{background:#374151;color:#e6edf3}.edit-button.has-notes svg{stroke:#007bff;color:#007bff}.edit-button.has-notes:hover svg{stroke:#0056b3;color:#0056b3}.status-select{-webkit-appearance:none;appearance:none;background:#0d1117;border:2px solid #30363d;border-radius:10px;color:#e6edf3;cursor:pointer;font-size:1rem;line-height:1;padding:4px;text-align:center}.status-select:focus{outline:2px solid #3b82f6;outline-offset:1px}.status-select.TODO{background:#444a50;border-color:#57606a}.status-select.IN_PROGRESS{background:#3b82f6;border-color:#3678e3}.status-select.IN_REVIEW{background:#8b5cf6;border-color:#7e54e2}.status-select.ON_HOLD{background:#f59e0b;border-color:#dd8f09}.status-select.DONE{background:#22c55e;border-color:#1eae53}@media (max-width:768px){.task-item--mobile{align-items:flex-start;background:#2d3440;border-left:6px solid #0000;border-radius:10px;box-shadow:0 1px 3px #00000040;display:flex;flex-direction:column;margin-bottom:.75rem;padding:.9rem 1rem;text-align:left;transition:border-color .2s ease,color .2s ease}.task-item--mobile.priority-h{border-color:#ef4444}.task-item--mobile.priority-m{border-color:#f59e0b}.task-item--mobile.priority-l{border-color:#22c55e}.task-item--mobile:not(.priority-h):not(.priority-m):not(.priority-l){border-color:#4b5563}.task-item--mobile .row1{align-items:center;display:flex;gap:.75rem;width:100%}.task-item--mobile .status-select{border-radius:10px;border-width:2px;font-size:.9rem;font-weight:700;padding:4px 10px;text-transform:uppercase}.task-item--mobile .task-content{flex:1 1}.task-item--mobile .task-content p{color:#f9fafb;font-size:1rem;font-weight:500;line-height:1.3;margin:0;text-align:left;word-break:break-word}.task-item--mobile .row2{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-start;margin-top:.35rem;width:100%}.task-item--mobile .task-bucket-name,.task-item--mobile .task-original-due-date{background:#394150;border-radius:6px;color:#9ca3af;font-size:.8rem;padding:2px 8px;white-space:nowrap}.task-item--mobile .notes-button,.task-item--mobile .task-original-due-date{align-items:center;display:inline-flex}.task-item--mobile .notes-button{background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:1rem;padding:2px 4px}.task-item--mobile .notes-button:hover{background:#394150;color:#f9fafb}.notes-button.has-notes svg{stroke:#007bff;color:#007bff}.notes-button.has-notes:hover svg{stroke:#0056b3;color:#0056b3}.task-item--mobile .edit-button{background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:1rem;padding:2px 4px}.task-item--mobile .edit-button:hover{background:#394150;color:#f9fafb}}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#2d282566;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;transition:all .2s;z-index:1000}.modal-content{animation:slideUp .3s cubic-bezier(.16,1,.3,1);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 16px #0000001a;color:var(--text-main);display:flex;flex-direction:column;max-width:500px;padding:2rem;width:100%}.modal-content h2{color:var(--text-main);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:2rem;margin-top:0}.modal-content .form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.modal-content label{color:#1e293b!important;font-size:.9rem;font-weight:600;margin-bottom:0;margin-left:4px}.modal-content input[type=date],.modal-content input[type=text],.modal-content select{background-color:#f1f5f9;border:1px solid #0000;border-radius:var(--radius-md);box-sizing:border-box;color:#1e293b!important;font-size:1rem;padding:.85rem 1rem;transition:all .2s;width:100%}.modal-content input:focus,.modal-content select:focus{background-color:#fff;border-color:var(--color-primary);box-shadow:none;outline:none}.range-group{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.range-label-container{align-items:center;display:flex;justify-content:space-between}.range-label-container label{color:#1e293b!important;margin-bottom:0}.range-value{background-color:#587c0e1a;border-radius:var(--radius-pill);color:var(--color-secondary);font-size:1rem;font-weight:700;min-width:32px;padding:2px 10px;text-align:center}.range-slider{-webkit-appearance:none;appearance:none;background:#e2e2df;border-radius:99px;height:6px;outline:none;transition:opacity .2s;width:100%}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-primary);border-radius:50%;box-shadow:none;cursor:pointer;height:24px;margin-top:-9px;-webkit-transition:transform .1s;transition:transform .1s;width:24px}.range-slider::-webkit-slider-runnable-track{background:#e2e2df;border-radius:99px;cursor:pointer;height:6px;width:100%}.range-slider::-webkit-slider-thumb:hover{transform:none}.form-actions{align-items:center;border-top:1px solid var(--border-subtle);display:flex;justify-content:space-between;margin-top:1rem;padding-top:1.5rem}.form-actions-right{display:flex;gap:1rem;margin-left:auto}.button-danger,.button-primary,.button-secondary{border:none;border-radius:var(--radius-pill);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s}.button-primary:hover:not(:disabled){background-color:var(--color-primary-hover);box-shadow:none;transform:none}.button-secondary{color:#475569!important}.button-secondary:hover:not(:disabled){background-color:#0000000d;color:#1e293b!important}.button-danger{background-color:initial;color:var(--color-primary);padding:.75rem 1rem}.button-danger:hover:not(:disabled){background-color:#d94f3c1a}.form-actions .button-delete{margin-right:auto}.button-danger:disabled,.button-primary:disabled,.button-secondary:disabled{cursor:not-allowed;opacity:.6;transform:none}.error-message{margin-bottom:1rem;padding:.5rem;text-align:left}.notes-textarea{background:#222;border:1px solid #555;border-radius:4px;box-sizing:border-box;color:#eee;font-family:inherit;font-size:1rem;min-height:250px;padding:10px;resize:vertical;width:100%}.notes-textarea:disabled{background:#444;cursor:not-allowed}.buckets-page-container{box-sizing:border-box;margin:0 auto;max-width:100%;padding:1rem}.buckets-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.buckets-header h2{color:var(--text-main);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.add-bucket-button{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-pill);box-shadow:none;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.6rem 1.2rem;transition:background-color .2s}.add-bucket-button:hover{background:var(--color-primary-hover);box-shadow:none;transform:none}.buckets-list-container{display:flex;flex-direction:column;gap:1rem}.buckets-message{color:var(--text-muted);font-size:1rem;font-style:italic;padding:3rem 1rem;text-align:center}.buckets-message.error{color:var(--color-primary);font-style:normal}.bucket-item{align-items:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:none;display:flex;justify-content:space-between;padding:1rem 1.25rem;transition:all .2s cubic-bezier(.2,.8,.2,1)}.bucket-item:hover{border-color:#d94f3c26;box-shadow:none;transform:none}.bucket-content{flex-grow:1}.bucket-content p{color:var(--text-main);font-size:1.1rem;font-weight:600;margin:0}.bucket-controls{align-items:center;display:flex;gap:1rem}.bucket-importance-score{background:#587c0e1a;border-radius:var(--radius-pill);color:var(--color-secondary);font-size:.85rem;font-weight:700;min-width:24px;padding:4px 10px;text-align:center}.edit-button{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color .2s;width:36px}.edit-button:hover{background:#0000000d;color:var(--text-main);transform:none}p.buckets-message{color:var(--text-muted)}@media (min-width:600px){.buckets-page-container{max-width:800px;padding:2rem}}.loading-container{color:var(--text-muted);font-size:1rem;padding:3rem;text-align:center}.account-container{box-sizing:border-box;margin:0 auto;max-width:100%;padding:1rem}.account-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:2rem;overflow:visible;padding:2rem;transition:all .2s cubic-bezier(.2,.8,.2,1)}.account-card,.account-card:hover{box-shadow:none}.account-card h2{color:var(--text-main);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem}.account-prompt{color:var(--text-muted);font-size:.95rem;line-height:1.5}.account-prompt,.form-group{margin-bottom:1.5rem}.form-group-hidden{display:none}.form-group label{color:var(--text-main);display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem;margin-left:4px}.form-group input,.form-group select{background:#f1f5f9;border:1px solid #0000;border-radius:var(--radius-md);box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:1rem;padding:.85rem 1rem;transition:all .2s;width:100%}.form-group select option{background:#fff;color:var(--text-main)}.form-group input:focus,.form-group select:focus{background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 3px #d94f3c1a;outline:none}.form-group input:disabled,.form-group select:disabled{background:#00000008;border-color:#0000;color:var(--text-muted);cursor:not-allowed;opacity:.8}.display-value{background:#f8fafc;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-main);font-size:1rem;padding:.85rem 1rem}.button-group{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button-primary,.button-secondary{align-items:center;border:none;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;padding:.75rem 1.5rem;transition:background-color .2s}.button-primary:disabled{background-color:var(--text-muted);box-shadow:none;cursor:wait;opacity:.7;transform:none}.button-secondary{background-color:initial;color:#475569}.button-secondary:hover{background-color:#0000000d;color:#1e293b}.error-message{background:#d94f3c0d;color:var(--color-primary)}.error-message,.success-message{border-radius:var(--radius-sm);font-size:.9rem;margin-top:1rem;padding:.75rem}.success-message{background:#587c0e1a;color:var(--color-secondary)}@media (min-width:900px){.account-container{max-width:1000px;padding:3rem}}.task-card{grid-gap:1rem;align-items:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:none;cursor:default;display:grid;gap:1rem;grid-template-columns:auto auto 1fr;margin-bottom:.75rem;padding:1rem;position:relative;transition:all .2s cubic-bezier(.2,.8,.2,1)}.task-card:hover{border-color:#d94f3c26;box-shadow:none;transform:none}.task-card.completed{background:#f5f5f580;border-color:#0000;box-shadow:none;opacity:.7}.task-card.dragging{border-color:var(--color-primary);box-shadow:0 12px 30px #d94f3c33;z-index:10}.task-card-drag{align-items:center;border-radius:6px;color:var(--text-muted);cursor:grab;display:flex;height:24px;justify-content:center;opacity:.5;transition:opacity .2s;width:24px}.task-card-drag:hover{background:#00000008;opacity:1}.task-card-checkbox{align-items:center;background:#0000;border:2px solid var(--text-muted);border-radius:50%;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s cubic-bezier(.34,1.56,.64,1);width:24px}.task-card-checkbox:hover:not(:disabled){background:#587c0e1a;border-color:var(--color-secondary)}.task-card-checkbox.checked{background:var(--color-secondary);border-color:var(--color-secondary);transform:none}.task-card-checkbox svg{stroke-width:3px;color:#fff;height:14px;width:14px}.task-card-content{display:flex;flex-direction:column;gap:6px;min-width:0}.task-card-text{color:var(--text-main);font-size:1.05rem;font-weight:500;line-height:1.5;margin:0}.task-card.completed .task-card-text{color:var(--text-muted);text-decoration:line-through}.task-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;min-height:24px}.task-card-bucket{background:#f0f0eb;color:var(--text-muted)}.task-card-bucket,.task-card-due-date{border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;padding:3px 10px}.task-card-due-date{align-items:center;background:#d94f3c1a;color:var(--color-primary);display:flex;gap:4px}.task-card-inline-actions{align-items:center;display:flex;gap:.25rem;margin-left:auto}.task-card-action{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;opacity:1;transition:all .2s;width:32px}.task-card:active .task-card-action,.task-card:hover .task-card-action{opacity:1}.task-card-action:hover{background:#0000000d;color:var(--text-main);transform:none}.task-card-action.edit:hover{color:var(--text-main)}.task-card-action.delete:hover{background:#d94f3c1a;color:var(--color-primary)}.task-card-action.notes.has-notes{color:var(--color-primary);opacity:1}@media (max-width:600px){.task-card{gap:.75rem;margin-bottom:.5rem;padding:.75rem}.task-card-checkbox,.task-card-drag{height:20px;width:20px}.task-card-checkbox svg{stroke-width:3px;height:12px;width:12px}.task-card-text{font-size:.95rem;line-height:1.4}.task-card-bucket,.task-card-due-date{font-size:.7rem;padding:2px 8px}.task-card-inline-actions{gap:0}.task-card-action{height:28px;width:28px}}.complete-modal-overlay{align-items:flex-end;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:2000}@media (min-width:480px){.complete-modal-overlay{align-items:center}}.complete-modal{background:#1e293b;border-radius:16px 16px 0 0;box-shadow:0 -4px 30px #0000004d;max-width:400px;padding:1.5rem;width:100%}@media (min-width:480px){.complete-modal{border-radius:16px}}.complete-modal-header{margin-bottom:1rem}.complete-modal-header,.complete-modal-icon{align-items:center;display:flex;justify-content:center}.complete-modal-icon{background:#22c55e26;border-radius:50%;font-size:1.5rem;height:48px;width:48px}.complete-modal-title{color:#fff;font-size:1.25rem;font-weight:600;margin:.75rem 0 .5rem;text-align:center}.complete-modal-task{color:#ffffffb3;font-size:.95rem;line-height:1.4;margin-bottom:1.25rem;text-align:center}.complete-modal-divider{background:#ffffff1a;height:1px;margin:1rem 0}.complete-modal-repeat-section{margin-bottom:1.25rem}.complete-modal-repeat-label{color:#fff9;display:block;font-size:.85rem;margin-bottom:.5rem}.complete-modal-repeat-options{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.complete-modal-repeat-btn{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;padding:.5rem .75rem;transition:all .2s ease}.complete-modal-repeat-btn:hover{background:#ffffff1f}.complete-modal-repeat-btn.selected{background:#58a6ff33;border-color:#58a6ff;color:#58a6ff}.complete-modal-date-input{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;color:#fff;font-size:.95rem;outline:none;padding:.75rem;width:100%}.complete-modal-date-input:focus{border-color:#58a6ff}.complete-modal-date-input::-webkit-calendar-picker-indicator{filter:invert(1)}.complete-modal-actions{display:flex;gap:.75rem;margin-top:1rem}.complete-modal-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.875rem 1rem;transition:all .2s ease}.complete-modal-btn.secondary{background:#ffffff1a;color:#fff}.complete-modal-btn.secondary:hover{background:#ffffff26}.complete-modal-btn.primary{background:#22c55e;color:#fff}.complete-modal-btn.primary:hover{background:#16a34a}.task-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2d282566;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;transition:all .2s;z-index:1000}.task-modal-content{animation:slideUp .3s cubic-bezier(.16,1,.3,1);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 16px #0000001a;display:flex;flex-direction:column;gap:1.5rem;max-width:500px;padding:2rem;transform:translateY(0);width:100%}.task-modal-header{align-items:center;display:flex;justify-content:space-between;padding-bottom:.5rem}.task-modal-header h2{color:var(--text-main);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.task-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;line-height:1;padding:4px;transition:background-color .2s;width:32px}.task-modal-close:hover{background:#0000000d;color:var(--color-primary)}.task-modal-body{gap:1.5rem}.task-modal-body,.task-modal-row{display:flex;flex-direction:column}.task-modal-row{gap:.5rem}.task-modal-row label{color:#475569!important;font-size:.9rem;font-weight:600;margin-left:4px}.task-modal-input{background:#f1f5f9;border:1px solid #0000;border-radius:var(--radius-md);color:#1e293b!important;font-family:inherit;font-size:1rem;padding:.85rem 1rem;transition:border-color .2s;width:100%}.task-modal-input.description{line-height:1.5;min-height:100px;resize:vertical}.task-modal-input:focus{background:#fff;border-color:var(--color-primary);box-shadow:none;outline:none}.task-modal-input.select{cursor:pointer}.task-modal-footer{align-items:center;border-top:1px solid var(--border-subtle);display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem}.task-modal-btn{border:none;border-radius:var(--radius-pill);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s}.task-modal-btn.cancel{background:#0000;color:#64748b!important}.task-modal-btn.cancel:hover{background:#0000000d;color:#1e293b!important}.task-modal-btn.save{background:var(--color-primary);box-shadow:none;color:#fff}.task-modal-btn.save:hover{background:var(--color-primary-hover);box-shadow:none;transform:none}.task-modal-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}@media (max-width:600px){.task-modal-content{border-radius:var(--radius-md);padding:1.5rem}}.notes-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2d282566;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.notes-modal-content{animation:slideUp .3s cubic-bezier(.16,1,.3,1);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 16px #0000001a;display:flex;flex-direction:column;max-width:600px;padding:2rem;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.notes-modal-title{color:var(--text-main);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.notes-modal-subtitle{color:var(--text-muted);font-size:1rem;font-weight:400;margin:.25rem 0 1.5rem}.notes-modal-form{display:flex;flex:1 1;flex-direction:column;gap:1rem}.notes-modal-form textarea{background:#f1f5f9;border:1px solid #0000;border-radius:var(--radius-md);box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:1rem;line-height:1.6;min-height:200px;padding:1rem;resize:vertical;transition:all .2s;width:100%}.notes-modal-form textarea:focus{background:#fff;border-color:var(--color-primary);box-shadow:none;outline:none}.notes-modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.btn-cancel,.btn-save{border:none;border-radius:var(--radius-pill);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s}.btn-cancel{background:#0000;color:#475569}.btn-cancel:hover{background:#0000000d;color:#1e293b}.btn-save{background:var(--color-primary);box-shadow:none;color:#fff}.btn-save:hover{background:var(--color-primary-hover);transform:none}.btn-save:disabled{cursor:not-allowed;opacity:.7}.notebook-container{background-color:var(--bg-app);display:flex;flex-direction:column;height:100vh;overflow-x:hidden;position:relative}.notebook-header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#f9f7f2d9;border-bottom:1px solid var(--border-subtle);padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:20}.notebook-header-content{align-items:center;display:flex;flex-direction:row;justify-content:space-between;margin:0 auto;max-width:600px;padding:0 1.5rem;width:100%}.notebook-date-nav{flex:1 1;gap:1rem}.notebook-date-nav,.notebook-nav-btn{align-items:center;display:flex;justify-content:center}.notebook-nav-btn{background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;font-size:1.5rem;height:44px;transition:all .2s;width:44px}.notebook-nav-btn:hover{background:#0000000d;color:var(--color-primary);transform:scale(1.1)}.notebook-date-display{align-items:center;display:flex;flex-direction:column;min-width:120px;text-align:center}.notebook-date-value{color:var(--text-main);font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.notebook-header-actions{align-items:center;display:flex;gap:.5rem}.notebook-today-btn{background:var(--color-primary);border:none;border-radius:var(--radius-pill);box-shadow:none;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:background-color .2s}.notebook-today-btn:hover{background:var(--color-primary-hover);transform:none}.notebook-today-btn.is-today{background:#0000;border:1px solid var(--border-subtle);box-shadow:none;color:var(--text-muted);cursor:default}.notebook-today-btn.is-today:hover{background:#0000;color:var(--text-muted);transform:none}.notebook-icon-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;height:40px;justify-content:center;transition:background-color .2s;width:40px}.notebook-icon-btn:hover{background:#0000000d;color:var(--color-primary)}.notebook-tasks{flex:1 1;margin:0 auto;max-width:600px;padding:1.5rem 1rem;width:100%}.notebook-empty,.notebook-loading{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;height:200px;justify-content:center;margin-top:40px;text-align:center}.notebook-spinner{animation:spin .8s linear infinite;border:3px solid #0000001a;border-radius:50%;border-top:3px solid var(--color-primary);height:32px;width:32px}.notebook-fab{align-items:center;background:var(--color-primary);border:none;border-radius:20px;bottom:90px;box-shadow:none;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:20px;transition:background-color .2s;width:60px;z-index:100}.notebook-fab:hover{background-color:var(--color-primary-hover);transform:none}.notebook-fab:active{transform:none}@media (min-width:768px){.notebook-fab{bottom:40px;right:calc(50% - 340px)}}.bottom-nav{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#f9f7f2f2;border-top:1px solid var(--border-subtle);bottom:0;box-shadow:0 -4px 20px #00000008;display:none;height:64px;left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:1000}@media (max-width:768px){.bottom-nav{align-items:center;display:flex;justify-content:space-around}}.bottom-nav-item{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;flex:1 1;flex-direction:column;height:100%;justify-content:center;padding:8px 0;position:relative;text-decoration:none;transition:all .2s ease}.bottom-nav-item:active{transform:scale(.95)}.bottom-nav-item.active{color:var(--color-primary)}.bottom-nav-icon{height:24px;margin-bottom:4px;transition:transform .2s ease;width:24px}.bottom-nav-item.active .bottom-nav-icon{transform:translateY(-2px)}.bottom-nav-label{font-size:.7rem;font-weight:600;letter-spacing:.02em}.bottom-nav-indicator{background:var(--color-primary);border-radius:50%;bottom:6px;height:4px;opacity:0;position:absolute;transition:opacity .2s;width:4px}.bottom-nav-item.active .bottom-nav-indicator{opacity:1}@media (max-width:768px){main{padding-bottom:calc(80px + env(safe-area-inset-bottom, 0))!important}}:root{--bg-app:#f9f7f2;--bg-surface:#fff;--bg-overlay:#ffffffe6;--text-main:#2d2825;--text-muted:#88807d;--text-inverse:#fff;--color-primary:#d94f3c;--color-primary-hover:#c23b2a;--color-secondary:#587c0e;--border-subtle:#ebe5e0;--shadow-soft:none;--shadow-card:none;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-pill:999px;color-scheme:light}*{-webkit-tap-highlight-color:transparent;box-sizing:border-box}body{background-color:#f9f7f2;background-color:var(--bg-app);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Kaku Gothic ProN,BIZ UDPGothic,Roboto,sans-serif;line-height:1.6;margin:0;min-height:100vh;padding:0}body,h1,h2,h3,h4,h5,h6{color:#2d2825;color:var(--text-main)}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.02em;margin:0 0 1rem}p{margin-bottom:1rem}.container{margin:0 auto;max-width:600px;padding:0 1rem;width:100%}.button-primary{align-items:center;background-color:#d94f3c;background-color:var(--color-primary);border:none;border-radius:999px;border-radius:var(--radius-pill);box-shadow:none;color:#fff;color:var(--text-inverse);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:background-color .2s}.button-primary:hover{background-color:#c23b2a;background-color:var(--color-primary-hover);box-shadow:none;transform:none}.button-primary:active{transform:none}.button-text{background:#0000;border:none;color:#88807d;color:var(--text-muted);cursor:pointer;font-weight:500;padding:.5rem}.button-text:hover{color:#d94f3c;color:var(--color-primary)}.App{display:flex;flex-direction:column;min-height:100vh}main{flex:1 1;padding-bottom:80px;position:relative}
/*# sourceMappingURL=main.f5dfec76.css.map*/