@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500&display=swap";.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px;position:relative}.login-theme-switcher{position:absolute;top:12px;right:16px}.login-container{width:100%;max-width:400px;background:var(--bg-card);border-radius:var(--radius);padding:40px 32px;box-shadow:var(--shadow-lg)}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-family:"Source Serif 4",serif;font-size:28px;font-weight:500;color:var(--text);margin-bottom:8px}.login-subtitle{color:var(--text-muted);font-size:15px}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:500;color:var(--text-muted)}.password-input-wrapper{position:relative;display:flex}.form-group input{width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:16px;transition:border-color .2s;background:var(--bg-card);color:var(--text)}.form-group input:focus{outline:none;border-color:var(--accent)}.form-group input:disabled{background:var(--bg-hover);cursor:not-allowed}.password-input-wrapper input{padding-right:70px}.toggle-password{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .2s}.toggle-password:hover{color:var(--accent)}.login-error{background:var(--error-bg, #FEF2F2);border:1px solid var(--error-border, #FECACA);color:var(--color-danger);padding:12px 16px;border-radius:var(--radius-sm);font-size:14px;text-align:center}.login-button{width:100%;padding:14px 24px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:16px;font-weight:500;cursor:pointer;transition:opacity .2s}.login-button:hover:not(:disabled){opacity:.9}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-hint{margin-top:24px;padding-top:24px;border-top:1px solid var(--border);text-align:center}.login-hint p{color:var(--text-muted);font-size:13px;line-height:1.5}.app{min-height:100vh;background:var(--bg)}.loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);gap:16px}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen p{color:var(--text-muted);font-size:14px}.error-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);padding:24px;text-align:center}.error-screen h2{font-family:"Source Serif 4",serif;font-size:24px;margin-bottom:8px}.error-screen p{color:var(--text-muted);margin-bottom:24px}.error-screen button{padding:12px 24px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:14px;cursor:pointer}.app-header{position:fixed;top:0;right:0;padding:12px 16px;z-index:50;display:flex;align-items:center;gap:8px}.logout-btn{padding:8px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:inherit;font-size:13px;cursor:pointer;transition:all .2s}.logout-btn:hover{background:var(--bg-hover);color:var(--text)}.theme-switcher{position:relative}.theme-trigger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .2s}.theme-trigger:hover{background:var(--bg-hover);color:var(--text)}.theme-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);overflow:hidden;min-width:120px}.theme-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:none;border:none;font-family:inherit;font-size:13px;color:var(--text-muted);cursor:pointer;transition:all .15s;text-align:left}.theme-option:hover{background:var(--bg-hover);color:var(--text)}.theme-option.active{background:var(--accent-light);color:var(--accent)}.tasks-toolbar{display:flex;align-items:stretch;gap:16px;margin-bottom:20px}.view-toggle{display:flex;background:var(--bg-card);border-radius:var(--radius-sm);padding:4px;border:1px solid var(--border);width:fit-content}.view-toggle button{padding:8px 20px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:all .2s}.view-toggle button:hover{color:var(--text)}.view-toggle button.active{background:var(--accent);color:#fff}.all-tasks-view .all-tasks-summary{display:flex;gap:16px;flex-wrap:wrap;padding:16px 20px;background:var(--bg-card);border-radius:var(--radius);margin-bottom:16px}.all-tasks-summary .summary-item{font-size:14px;color:var(--text-muted)}.all-tasks-summary .summary-item strong{color:var(--text);font-weight:600}.all-tasks-summary .summary-item.done strong{color:var(--color-success)}.all-tasks-summary .summary-item.cancelled strong{color:var(--text-muted)}.all-tasks-summary .summary-item.pending strong{color:var(--accent)}.all-tasks-list{display:flex;flex-direction:column;gap:4px}.nav{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:1px solid var(--border);display:flex;justify-content:center;gap:8px;padding:12px 20px;z-index:100}.nav-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 24px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius);transition:all .2s ease;font-family:inherit;font-size:12px;font-weight:500}.nav-btn:hover{background:var(--bg-hover);color:var(--text)}.nav-btn.active{background:var(--accent-light);color:var(--accent)}.page{padding:24px 24px 100px;max-width:1000px;margin:0 auto}.page-header{margin-bottom:32px}.page-header h1{font-family:"Source Serif 4",serif;font-size:32px;font-weight:500;margin-bottom:4px}.subtitle{color:var(--text-muted);font-size:15px}.add-task-btn{display:flex;align-items:center;gap:8px;width:100%;padding:16px 20px;background:var(--bg-card);border:2px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);font-family:inherit;font-size:15px;cursor:pointer;transition:all .2s ease;margin-bottom:24px}.add-task-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.add-task-form{background:var(--bg-card);border-radius:var(--radius);padding:20px;margin-bottom:24px;box-shadow:var(--shadow)}.add-task-form input[type=text]{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:16px;margin-bottom:16px;background:var(--bg-card);color:var(--text)}.add-task-form input:focus{outline:none;border-color:var(--accent)}.form-row{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.form-row label{flex:1;min-width:140px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-muted)}.form-row input,.form-row select{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;background:var(--bg-card);color:var(--text)}.form-row label.full-width,.form-row.full-width{width:100%;flex:none}.form-row textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;background:var(--bg-card);color:var(--text);resize:vertical}.more-options-toggle{background:none;border:none;color:var(--text-muted);font-family:inherit;font-size:13px;padding:8px 0;cursor:pointer;margin-bottom:8px;transition:color .2s}.more-options-toggle:hover{color:var(--accent)}.more-options{margin-bottom:16px}.form-actions{display:flex;gap:12px}.btn-primary{padding:12px 24px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-secondary{padding:12px 24px;background:none;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;cursor:pointer}.task-section{margin-bottom:16px}.section-header{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:var(--bg-card);border:none;border-radius:var(--radius);cursor:pointer;font-family:inherit;text-align:left;color:var(--text)}.section-header:hover{background:var(--bg-hover)}.section-icon{font-size:18px}.section-header h3{flex:1;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text)}.task-count{background:var(--accent-light);color:var(--accent);padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.chevron{color:var(--text-muted);transition:transform .2s}.chevron.collapsed{transform:rotate(-90deg)}.task-list{padding:8px 0}.task-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--bg-card);border-radius:var(--radius-sm);margin:4px 0;transition:all .2s}.task-item:hover{box-shadow:var(--shadow)}.task-item.done{opacity:.6}.task-item.done .task-title{text-decoration:line-through}.task-item.cancelled{opacity:.4}.task-item.cancelled .task-title{text-decoration:line-through}.checkbox{width:22px;height:22px;border:2px solid var(--border);border-radius:6px;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.checkbox:hover{background:var(--bg-hover)}.checkbox.done{background:var(--color-success);border-color:var(--color-success);color:#fff}.checkbox.cancelled{background:var(--text-muted);border-color:var(--text-muted);color:#fff}.task-content{flex:1;min-width:0}.task-title{font-size:15px;margin-bottom:3px}.task-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.priority-badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#fff;text-transform:uppercase}.due-date,.scheduled-date,.completed-date{font-size:12px;color:var(--text-muted)}.recurrence-indicator{display:inline-flex;align-items:center;margin-left:6px;color:var(--accent);vertical-align:middle}.recurrence-badge{font-size:11px;color:var(--accent);background:var(--accent-light);padding:2px 8px;border-radius:10px}.completion-count{font-size:11px;color:var(--text-muted);font-style:italic}.task-title-row{display:flex;align-items:center;gap:8px;margin-bottom:0}.task-link{display:inline-flex;align-items:center;justify-content:center;padding:4px;color:var(--accent);opacity:.7;border-radius:4px;transition:opacity .2s,background .2s;flex-shrink:0}.task-link:hover{opacity:1;background:var(--accent-light)}.task-details{font-size:13px;color:var(--text-muted);margin:0 0 6px;line-height:1.4;white-space:pre-wrap}.task-pieces{display:flex;flex-direction:column;gap:4px;margin:6px 0;padding-left:2px}.task-piece{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted)}.task-piece.completed .task-piece-title{text-decoration:line-through;opacity:.6}.task-piece-check{width:14px;height:14px;border:1.5px solid var(--border);border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:none;padding:0;cursor:pointer;transition:border-color .2s,background .2s}.task-piece-check:hover{border-color:var(--accent)}.task-piece-check.done{background:var(--color-success);border-color:var(--color-success);color:#fff}.task-piece-check.done:hover{opacity:.8}.task-piece-check svg{width:10px;height:10px}.task-piece-title{line-height:1.3}.pieces-editor{width:100%}.pieces-label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px}.pieces-list{display:flex;flex-direction:column;gap:4px}.piece-item{display:flex;align-items:flex-start;gap:6px;padding:4px 0}.piece-item .piece-drag-handle,.piece-item .piece-checkbox,.piece-item .piece-delete{margin-top:4px}.piece-item.completed .piece-input{text-decoration:line-through;opacity:.6}.piece-drag-handle{cursor:grab;color:var(--text-muted);opacity:.4;padding:2px;display:flex;align-items:center;transition:opacity .2s}.piece-item:hover .piece-drag-handle{opacity:.7}.piece-drag-handle:active{cursor:grabbing}.piece-drag-handle.disabled{cursor:default;opacity:.25;pointer-events:none}.piece-item.dragging{opacity:.4}.piece-item.drop-above{position:relative}.piece-item.drop-above:before{content:"";position:absolute;top:-2px;left:0;right:0;height:2px;background:var(--accent);border-radius:1px}.piece-item.drop-below{position:relative}.piece-item.drop-below:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--accent);border-radius:1px}.piece-checkbox{width:16px;height:16px;border:1.5px solid var(--border);border-radius:4px;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;padding:0}.piece-checkbox:hover{border-color:var(--accent)}.piece-checkbox.done{background:var(--color-success);border-color:var(--color-success);color:#fff}.piece-checkbox svg{width:10px;height:10px}.piece-checkbox.disabled{cursor:default;opacity:.25;pointer-events:none}.piece-input{flex:1;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;background:var(--bg-card);color:var(--text);transition:border-color .2s;resize:none;overflow:hidden;line-height:1.4;min-height:unset}.piece-input:focus{outline:none;border-color:var(--accent)}.piece-input::placeholder{color:var(--text-muted);opacity:.6}.piece-delete{padding:4px;background:none;border:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .2s,color .2s;display:flex;align-items:center;justify-content:center}.piece-item:hover .piece-delete{opacity:.6}.piece-delete:hover{opacity:1;color:var(--color-error, #dc3545)}.piece-delete svg{width:12px;height:12px}.new-piece .piece-input{border-style:dashed;opacity:.7}.new-piece .piece-input:focus{opacity:1;border-style:solid}.recurrence-select{display:flex;flex-direction:column;gap:10px}.recurrence-select>label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-muted)}.recurrence-select select{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;background:var(--bg-card);color:var(--text)}.weekday-picker{display:flex;gap:6px;flex-wrap:wrap}.weekday-btn{width:40px;height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-muted);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.weekday-btn:hover{border-color:var(--accent);color:var(--accent)}.weekday-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.task-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.task-item:hover .task-actions{opacity:1}.task-actions button{padding:6px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:4px}.task-actions button:hover{background:var(--bg-hover);color:var(--text)}.task-item.editing{flex-direction:column;gap:12px}.task-item.editing input[type=text]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:15px;background:var(--bg-card);color:var(--text)}.edit-row{display:flex;gap:12px;flex-wrap:wrap}.edit-row label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-muted)}.edit-row input,.edit-row select{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;background:var(--bg-card);color:var(--text)}.edit-row.full-width,.edit-row.full-width label{width:100%}.edit-row textarea,.edit-row input[type=url]{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;background:var(--bg-card);color:var(--text);resize:vertical}textarea.auto-resize{resize:none;overflow:hidden;min-height:60px}.edit-actions{display:flex;gap:8px}.btn-save{padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:13px;cursor:pointer}.btn-cancel{padding:8px 16px;background:none;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;cursor:pointer}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted)}.empty-state.small{padding:24px}.empty-icon{font-size:48px;margin-bottom:16px}.empty-state h3{font-size:18px;margin-bottom:8px;color:var(--text)}.goals-projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}@media(max-width:768px){.goals-projects-grid{grid-template-columns:1fr}}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header-row h2{font-family:"Source Serif 4",serif;font-size:20px;font-weight:500}.add-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer}.add-btn:hover{opacity:.9}.goal-card{padding:16px 20px;border-radius:var(--radius);margin-bottom:12px}.goal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.goal-header h3{font-size:16px;font-weight:600}.goal-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.goal-card:hover .goal-actions{opacity:1}.goal-actions button{padding:4px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:4px}.goal-actions button:hover{background:var(--bg-hover)}.goal-description{font-size:14px;color:var(--text-muted);margin-bottom:12px}.goal-values{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.value-tag{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600}.value-tag.primary{color:#2d2a26}[data-theme=light] .value-tag.primary{color:#fff}.value-tag.secondary{background:var(--bg-card)}.linked-projects{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.project-card{padding:16px;background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius);margin-bottom:12px;transition:all .2s}.project-card.active{border-width:2px}.project-card.inactive{opacity:.5;border-style:dashed}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.project-status{display:flex;align-items:center;gap:10px}.status-dot{width:10px;height:10px;border-radius:50%}.status-dot.inactive{background:var(--text-muted)}.project-status h4{font-size:15px;font-weight:600}.project-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.project-card:hover .project-actions{opacity:1}.project-actions button{padding:4px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:4px}.project-actions button:hover{background:var(--bg-hover)}.project-description{font-size:13px;color:var(--text-muted);margin-bottom:12px}.project-link{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;margin-left:6px;color:var(--accent);opacity:.7;border-radius:4px;vertical-align:middle;transition:opacity .2s,background .2s}.project-link:hover{opacity:1;background:var(--accent-light)}.project-stat{display:inline-flex;align-items:baseline;gap:4px;background:var(--bg-hover);padding:3px 10px;border-radius:12px;margin-left:8px}.project-stat .stat-value{font-size:13px;font-weight:600}.project-stat .stat-label{font-size:11px;color:var(--text-muted)}.stat-label{font-size:12px;color:var(--text-muted)}.project-goals{display:flex;gap:6px;flex-wrap:wrap}.goal-link{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:500}.goal-link.disconnected{background:var(--bg-hover);color:var(--text-muted)}.inactive-header{font-size:14px;color:var(--text-muted);margin:20px 0 12px;text-transform:uppercase;letter-spacing:.5px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:20px;z-index:200}.modal{background:var(--bg-card);border-radius:var(--radius);padding:28px;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal h2{font-family:"Source Serif 4",serif;font-size:22px;margin-bottom:20px}.modal label{display:block;margin-bottom:16px;font-size:13px;color:var(--text-muted)}.modal input[type=text],.modal input[type=url],.modal textarea,.modal select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:15px;margin-top:6px;background:var(--bg-card);color:var(--text)}.modal input:focus,.modal textarea:focus,.modal select:focus{outline:none;border-color:var(--accent)}.value-picker,.goal-picker{margin-bottom:20px}.picker-label{display:block;font-size:13px;color:var(--text-muted);margin-bottom:10px}.value-options,.goal-options{display:flex;flex-wrap:wrap;gap:8px}.value-option,.goal-option{padding:6px 14px;border:2px solid;border-radius:20px;background:none;font-family:inherit;font-size:13px;color:var(--text);cursor:pointer;transition:all .2s}.value-option.selected,.goal-option.selected{color:#2d2a26!important}[data-theme=light] .value-option.selected,[data-theme=light] .goal-option.selected{color:#fff!important}.value-option.disabled{opacity:.3;cursor:not-allowed}.no-goals{color:var(--text-muted);font-size:14px;font-style:italic}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;cursor:pointer}.checkbox-label input{width:18px;height:18px;margin:0!important}.modal-actions{display:flex;gap:12px;margin-top:24px}.btn-icon-only{margin-left:auto;padding:10px 12px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-icon-only:hover{color:var(--color-danger);border-color:var(--color-danger)}.sentiment-stats{display:flex;gap:16px;margin-bottom:32px}.stat-card{flex:1;background:var(--bg-card);padding:20px;border-radius:var(--radius);text-align:center;box-shadow:var(--shadow)}.stat-card .stat-value{display:block;font-size:32px;font-weight:600;color:var(--accent);margin-bottom:4px}.stat-card .stat-label{font-size:13px;color:var(--text-muted)}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.year-nav{display:flex;align-items:center;gap:16px}.year-nav button{padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:16px;color:var(--text)}.year-nav button:hover{background:var(--bg-hover)}.year-nav span{font-size:18px;font-weight:600;color:var(--text)}.mode-toggle{display:flex;background:var(--bg-card);border-radius:var(--radius-sm);padding:4px;border:1px solid var(--border)}.mode-toggle button{padding:8px 16px;background:none;border:none;font-family:inherit;font-size:13px;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:all .2s}.mode-toggle button.active{background:var(--accent);color:#fff}.calendar-heatmap{background:var(--bg-card);padding:24px;border-radius:var(--radius);box-shadow:var(--shadow)}.calendar-scroll-container{overflow-x:auto;overflow-y:visible}.calendar-scroll-container::-webkit-scrollbar{height:6px}.calendar-scroll-container::-webkit-scrollbar-track{background:transparent}.calendar-scroll-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.calendar-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.calendar-table-clip{display:inline-block;overflow:hidden}.calendar-table{border-spacing:3px;border-collapse:separate;margin-right:-3px}.calendar-table.compact{border-spacing:2px;margin-right:-2px}.calendar-months-row{height:16px}.calendar-corner-cell{width:29px;min-width:29px;position:sticky;left:0;background:var(--bg-card);z-index:2}.calendar-month-label{position:relative;font-size:12px;color:var(--text-muted);text-align:left;vertical-align:bottom;padding-bottom:4px}.calendar-month-label span{position:absolute;left:0;bottom:4px;white-space:nowrap}.calendar-day-row{height:14px}.calendar-day-label{width:29px;min-width:29px;font-size:10px;color:var(--text-muted);text-align:right;padding-right:8px;vertical-align:middle;position:sticky;left:0;background:var(--bg-card);z-index:1}.calendar-day-label span{display:block;line-height:14px}.calendar-day-cell{width:14px;min-width:14px;height:14px;padding:0;cursor:pointer;position:relative}.calendar-day-inner{width:14px;height:14px;border-radius:3px;background:var(--day-color, var(--heatmap-empty));transition:transform .1s;position:relative}.calendar-day-cell:hover .calendar-day-inner{transform:scale(1.3);z-index:1}.calendar-day-cell.empty{cursor:default}.calendar-day-cell.empty .calendar-day-inner{background:transparent}.calendar-day-cell.empty:hover .calendar-day-inner{transform:none}.calendar-day-cell.today .calendar-day-inner{outline:2px solid var(--accent);outline-offset:1px}.day-shape{position:absolute;top:0;right:0;bottom:0;left:0;color:var(--text-muted)}.calendar-legend{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:16px;font-size:12px;color:var(--text-muted)}.legend-colors{display:flex;gap:3px}.legend-item{width:14px;height:14px;border-radius:3px}.check-in-cta{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;margin-top:24px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-family:inherit;font-size:16px;font-weight:500;cursor:pointer;transition:opacity .2s}.check-in-cta:hover{opacity:.9}.check-in-modal{text-align:center}.check-in-date{color:var(--text-muted);margin-bottom:24px}.rating-section{margin-bottom:24px}.rating-section label{text-align:center}.rating-buttons{display:flex;justify-content:center;gap:12px;margin:16px 0 8px}.rating-btn{width:48px;height:48px;border:2px solid var(--border);border-radius:50%;background:var(--bg);font-size:24px;cursor:pointer;transition:all .2s}.rating-btn:hover{border-color:var(--accent);transform:scale(1.1)}.rating-btn.selected{border-color:var(--accent);background:var(--accent-light);transform:scale(1.15)}.rating-labels{display:flex;justify-content:space-between;padding:0 20px;font-size:12px;color:var(--text-muted)}.shape-section{margin-top:20px}.shape-section label{display:block;margin-bottom:12px}.shape-buttons{display:flex;justify-content:center;gap:16px}.shape-btn{width:44px;height:44px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:all .2s}.shape-btn svg{width:24px;height:24px}.shape-btn:hover{border-color:var(--accent);color:var(--accent)}.shape-btn.selected{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.projects-section{margin-bottom:16px}.projects-section>label{display:block;margin-bottom:10px;font-weight:500}.project-select-container{position:relative}.project-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;color:var(--text);cursor:pointer;transition:border-color .2s}.project-select-trigger:hover{border-color:var(--accent)}.project-select-trigger .trigger-text{color:var(--text-muted)}.project-select-trigger .trigger-arrow{font-size:10px;color:var(--text-muted)}.project-dropdown{position:absolute;top:100%;left:0;right:0;max-height:160px;overflow-y:auto;margin-top:4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:10}.dropdown-item{display:block;width:100%;padding:10px 12px;text-align:left;background:none;border:none;font-size:14px;color:var(--text);cursor:pointer;transition:background .15s}.dropdown-item:hover{background:var(--accent-light)}.dropdown-empty{padding:10px 12px;font-size:13px;color:var(--text-muted);text-align:center}.selected-projects-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.project-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px 4px 10px;background:var(--accent-light);border-radius:999px;font-size:13px;color:var(--accent)}.chip-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:none;border:none;border-radius:50%;font-size:14px;color:var(--accent);cursor:pointer;transition:background .15s}.chip-remove:hover{background:var(--bg-hover)}.shape-section-compact{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.shape-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;cursor:pointer;transition:all .2s}.shape-toggle:hover{border-color:var(--accent);color:var(--text)}.shape-toggle .shape-preview{width:18px;height:18px;color:var(--accent)}.shape-toggle .toggle-arrow{margin-left:auto;font-size:10px}.shape-buttons-inline{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px;background:var(--bg-hover);border-radius:var(--radius-sm)}.shape-btn-small{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:all .2s}.shape-btn-small svg{width:16px;height:16px}.shape-btn-small:hover{border-color:var(--accent);color:var(--accent)}.shape-btn-small.selected{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.shape-clear{margin-left:auto;padding:4px 10px;background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer}.shape-clear:hover{color:var(--danger)}.notification-banner{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;background:var(--accent);color:#fff;z-index:150;animation:slideDown .3s ease}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.notification-banner .notification-action{padding:6px 16px;background:var(--bg-card);color:var(--accent);border:none;border-radius:20px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.notification-banner .notification-action:hover{opacity:.9}.notification-banner .notification-dismiss{padding:4px;background:transparent;border:none;color:#fff;cursor:pointer;opacity:.7;display:flex;align-items:center;justify-content:center;border-radius:4px;margin-left:4px}.notification-banner .notification-dismiss:hover{opacity:1;background:#ffffff26}.settings-modal{min-width:320px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{margin:0;font-family:"Source Serif 4",serif;font-size:22px}.close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{background:var(--bg-hover);color:var(--text)}.settings-content{display:flex;flex-direction:column;gap:24px}.settings-section h3{font-size:14px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:12px}.setting-row{margin-bottom:12px}.setting-row label{font-size:15px;color:var(--text);margin-bottom:4px}.setting-description{font-size:13px;color:var(--text-muted);margin:4px 0 0 28px}.nested-settings{margin-left:28px;margin-top:12px;padding:12px;background:var(--bg-hover);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:12px}.time-setting{display:flex;justify-content:space-between;align-items:center;margin:0}.time-setting label{font-size:14px;color:var(--text-muted);margin:0}.time-setting input[type=time]{padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);font-family:inherit;font-size:14px;width:auto}.setting-row select{padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);font-family:inherit;font-size:14px;min-width:180px}.setting-warning{color:var(--color-error);font-weight:500}.setting-error{font-size:13px;color:var(--color-error);margin-top:8px}.btn-small{padding:6px 12px;font-size:13px;border-radius:var(--radius-sm)}.btn-secondary{background:var(--bg-card);color:var(--text);border:1px solid var(--border);cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--bg-hover)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.refresh-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .2s}.refresh-btn:hover{background:var(--bg-hover);color:var(--text)}.refresh-btn:disabled{cursor:default}.refresh-btn.refreshing svg{animation:spin .8s linear infinite}.settings-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .2s}.settings-btn:hover{background:var(--bg-hover);color:var(--text)}.collapsible-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 0;background:none;border:none;border-bottom:1px solid var(--border);margin:24px 0 16px;cursor:pointer;color:var(--text-muted);font-family:inherit;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.collapsible-header:hover{color:var(--text)}.collapsible-header .header-content{display:flex;align-items:center;gap:8px}.collapsible-header .count-badge{background:var(--bg-hover);padding:2px 8px;border-radius:12px;font-size:11px;color:var(--text)}.collapsible-header .chevron{transition:transform .2s}.collapsible-header.collapsed .chevron{transform:rotate(-90deg)}.collapsible-header.active-section{color:var(--accent);border-bottom-color:var(--accent-light)}.md-link{color:var(--accent);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.md-link:hover{text-decoration-style:solid}.md-bold{font-weight:600}.md-italic{font-style:italic}.md-code{font-family:Consolas,Monaco,Courier New,monospace;font-size:.9em;background:var(--bg-hover);padding:2px 6px;border-radius:4px;color:var(--accent)}.md-highlight{background:#ffdc6459;padding:1px 2px;border-radius:2px}.md-strike{text-decoration:line-through;opacity:.7}.md-underline{text-decoration:underline;text-underline-offset:2px}.md-small{font-size:.85em;opacity:.75}.md-tag{background:var(--accent-light, rgba(139, 115, 85, .15));color:var(--accent);padding:1px 6px;border-radius:4px;font-size:.95em}.tag-input-container{position:relative;width:100%;background:var(--bg-card)}.tag-input-container .tag-input{width:100%;background:var(--bg-card);position:relative;z-index:1;color:var(--text);box-sizing:border-box}.tag-input-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;white-space:pre-wrap;word-wrap:break-word;overflow:hidden;color:transparent;border:1px solid transparent;z-index:2;box-sizing:border-box;background:transparent}.tag-input-overlay .tag-highlight{background:#8b735540;border-radius:3px}.add-task-form .tag-input-container .tag-input{padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:16px}.add-task-form .tag-input-container .tag-input:focus{outline:none;border-color:var(--accent)}.add-task-form .tag-input-container .tag-input::placeholder{color:var(--text-muted)}.add-task-form .tag-input-overlay{padding:12px 16px;font-family:inherit;font-size:16px}.add-task-form .tag-input-container{margin-bottom:16px}.task-item.editing .tag-input-container .tag-input{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:15px}.task-item.editing .tag-input-container .tag-input:focus{outline:none;border-color:var(--accent)}.task-item.editing .tag-input-container .tag-input::placeholder{color:var(--text-muted)}.task-item.editing .tag-input-overlay{padding:10px 12px;font-family:inherit;font-size:15px}.tag-autocomplete{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg, 0 4px 12px rgba(0,0,0,.15));max-height:200px;overflow-y:auto;z-index:100}.tag-autocomplete-item{padding:8px 12px;cursor:pointer;font-size:14px;color:var(--text)}.tag-autocomplete-item:hover,.tag-autocomplete-item.selected{background:var(--accent-light, rgba(139, 115, 85, .15));color:var(--accent)}.search-bar{position:relative;display:flex;align-items:center;flex:1;min-width:150px}.search-bar .search-icon{position:absolute;left:12px;color:var(--text-muted);pointer-events:none}.search-bar .search-input{width:100%;height:100%;padding:12px 36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);font-family:inherit;font-size:14px;color:var(--text);box-sizing:border-box}.search-bar .search-input:focus{outline:none;border-color:var(--accent)}.search-bar .search-input::placeholder{color:var(--text-muted)}.search-bar .search-clear{position:absolute;right:8px;background:none;border:none;padding:4px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;border-radius:4px}.search-bar .search-clear:hover{color:var(--text);background:var(--border)}.search-autocomplete{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000001a;max-height:200px;overflow-y:auto;z-index:100}.search-autocomplete-item{padding:8px 12px;cursor:pointer;font-size:14px;color:var(--text)}.search-autocomplete-item:hover,.search-autocomplete-item.selected{background:var(--accent-light, rgba(139, 115, 85, .15));color:var(--accent)}.new-tags-list{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.tag-chip{background:var(--accent-light, rgba(139, 115, 85, .15));color:var(--accent);padding:4px 12px;border-radius:20px;font-size:14px}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #FDFBF7;--bg-card: #FFFFFF;--bg-hover: #F8F6F2;--text: #2D2A26;--text-muted: #7A756E;--border: #E8E4DE;--accent: #8B7355;--accent-light: #F0EBE4;--shadow: 0 2px 8px rgba(45, 42, 38, .08);--shadow-lg: 0 8px 24px rgba(45, 42, 38, .12);--radius: 12px;--radius-sm: 8px;--color-critical: #E57373;--color-warning: #FFB74D;--color-success: #81C784;--color-info: #90CAF9;--color-danger: #E57373;--error-bg: #FEF2F2;--error-border: #FECACA;--heatmap-empty: #F5F5F5;--heatmap-sentiment-1: #FFCDD2;--heatmap-sentiment-2: #FFAB91;--heatmap-sentiment-3: #FFE082;--heatmap-sentiment-4: #C5E1A5;--heatmap-sentiment-5: #A5D6A7;--heatmap-tasks-light: #C5E1A5;--heatmap-tasks-medium: #FFE082;--heatmap-tasks-heavy: #FFAB91;--heatmap-tasks-overload: #FFCDD2;--value-power: #9B8AC4;--value-achievement: #E8A87C;--value-hedonism: #E8A0B5;--value-stimulation: #F0B86E;--value-selfDirection: #7EBDC3;--value-universalism: #8BC49A;--value-benevolence: #89B8D8;--value-tradition: #C4A882;--value-conformity: #9CAAB8;--value-security: #A8C4A0;--value-power-light: #E8E4F3;--value-achievement-light: #FDF0E8;--value-hedonism-light: #FCE8EE;--value-stimulation-light: #FEF4E5;--value-selfDirection-light: #E5F4F5;--value-universalism-light: #E6F4E9;--value-benevolence-light: #E5F0F8;--value-tradition-light: #F4EDE4;--value-conformity-light: #EEF1F4;--value-security-light: #EBF4E8}[data-theme=dusk]{--bg: #1C1917;--bg-card: #292524;--bg-hover: #3D3733;--text: #F5F2ED;--text-muted: #A8A29E;--border: #44403C;--accent: #C4A77D;--accent-light: #3D3530;--shadow: 0 2px 8px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .35);--color-critical: #F87171;--color-warning: #FBBF24;--color-success: #86EFAC;--color-info: #93C5FD;--color-danger: #F87171;--error-bg: #3D2626;--error-border: #5C3A3A;--heatmap-empty: #3D3733;--heatmap-sentiment-1: #8B4A4A;--heatmap-sentiment-2: #8B6040;--heatmap-sentiment-3: #8B7A40;--heatmap-sentiment-4: #5C7A48;--heatmap-sentiment-5: #4A7A4F;--heatmap-tasks-light: #5C7A48;--heatmap-tasks-medium: #8B7A40;--heatmap-tasks-heavy: #8B6040;--heatmap-tasks-overload: #8B4A4A;--value-power: #B8A5D6;--value-achievement: #F0BC94;--value-hedonism: #F0B5C8;--value-stimulation: #F5C882;--value-selfDirection: #96CED4;--value-universalism: #A3D6B0;--value-benevolence: #A1CAE4;--value-tradition: #D4BC98;--value-conformity: #B0BCC8;--value-security: #BCDCB4;--value-power-light: #3D3650;--value-achievement-light: #4A3A2E;--value-hedonism-light: #4A3540;--value-stimulation-light: #4A3E2A;--value-selfDirection-light: #2E4245;--value-universalism-light: #304538;--value-benevolence-light: #2E3D48;--value-tradition-light: #453D30;--value-conformity-light: #383E45;--value-security-light: #354535}[data-theme=midnight]{--bg: #0F1419;--bg-card: #1A2027;--bg-hover: #252D38;--text: #E7EAEE;--text-muted: #8B949E;--border: #30363D;--accent: #C9A86C;--accent-light: #2D3138;--shadow: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .45);--color-critical: #F97583;--color-warning: #E3B341;--color-success: #7EE787;--color-info: #79C0FF;--color-danger: #F97583;--error-bg: #2D2230;--error-border: #4A3550;--heatmap-empty: #252D38;--heatmap-sentiment-1: #6B3A4A;--heatmap-sentiment-2: #6B503A;--heatmap-sentiment-3: #6B6A3A;--heatmap-sentiment-4: #4A6A40;--heatmap-sentiment-5: #3A6A48;--heatmap-tasks-light: #4A6A40;--heatmap-tasks-medium: #6B6A3A;--heatmap-tasks-heavy: #6B503A;--heatmap-tasks-overload: #6B3A4A;--value-power: #A896CE;--value-achievement: #E8B88E;--value-hedonism: #E8AABF;--value-stimulation: #E8C078;--value-selfDirection: #88C8CE;--value-universalism: #8ECA9E;--value-benevolence: #8EC2DE;--value-tradition: #C8B08E;--value-conformity: #A0AEC0;--value-security: #A8C8A0;--value-power-light: #2A2640;--value-achievement-light: #3A3028;--value-hedonism-light: #3A2838;--value-stimulation-light: #3A3220;--value-selfDirection-light: #203438;--value-universalism-light: #253830;--value-benevolence-light: #203040;--value-tradition-light: #383028;--value-conformity-light: #283038;--value-security-light: #283828}body{font-family:Outfit,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::placeholder{color:var(--text-muted);opacity:.7}option{background:var(--bg-card);color:var(--text)}
