.todo-storage-note{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}.todo-add{display:flex;gap:var(--space-2)}.todo-add input{flex:1;min-height:var(--touch-target);padding:var(--space-3);border:var(--border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:var(--text-base);font-family:inherit}.todo-add button{min-height:var(--touch-target);padding-inline:var(--space-5);border:var(--border-strong);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-text-inverse);font-weight:var(--font-weight-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:var(--transition-color)}.todo-add button:hover{opacity:.9}.todo-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding-block:var(--space-2)}.todo-toolbar button{min-height:var(--touch-target);padding-inline:var(--space-4);background:transparent;border:var(--border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);font-family:inherit;cursor:pointer;transition:var(--transition-color)}.todo-toolbar button:hover{color:var(--color-text);border-color:var(--color-text-muted)}.todo-toolbar button[aria-pressed=true]{color:var(--color-text);border-color:var(--color-accent)}#todo-list-container{display:flex;flex-direction:column;margin-top:var(--space-4)}.todo-empty{padding:var(--space-8) 0;color:var(--color-text-subtle);font-size:var(--text-sm)}.todo-task{border-top:var(--border);padding-block:var(--space-3)}.todo-task-row{display:flex;align-items:flex-start;gap:var(--space-3);min-height:var(--touch-target)}.todo-checkbox{flex-shrink:0;width:18px;height:18px;margin-top:var(--space-1);accent-color:var(--color-accent);cursor:pointer}.todo-title{flex:1;align-self:center;font-size:var(--text-base);line-height:var(--leading-relaxed);transition:color var(--duration-fast) ease;word-break:break-word}.todo-task--done .todo-title{text-decoration:line-through;opacity:.6;color:var(--color-text-subtle)}.todo-delete,.todo-subtask-delete{flex-shrink:0;background:none;border:none;color:var(--color-text-subtle);font-size:var(--text-sm);font-family:inherit;cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--duration-fast) ease,color var(--duration-fast) ease;align-self:center}.todo-task-row:hover .todo-delete,.todo-task:focus-within .todo-delete,.todo-subtask-row:hover .todo-subtask-delete,.todo-subtask-row:focus-within .todo-subtask-delete{opacity:1}.todo-delete:hover,.todo-subtask-delete:hover{color:var(--color-text)}.todo-subtasks{padding-left:var(--space-9);display:flex;flex-direction:column;margin-top:var(--space-1)}.todo-subtask-row{display:flex;align-items:center;gap:var(--space-2);min-height:calc(var(--touch-target) * .75);border-top:var(--border);padding-block:var(--space-2)}.todo-subtask-checkbox{flex-shrink:0;width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer}.todo-subtask-title{flex:1;font-size:var(--text-sm);color:var(--color-text-muted);transition:color var(--duration-fast) ease;word-break:break-word}.todo-subtask--done .todo-subtask-title{text-decoration:line-through;opacity:.6;color:var(--color-text-subtle)}.todo-add-subtask{display:flex;gap:var(--space-2);padding-left:var(--space-9);margin-top:var(--space-2)}.todo-add-subtask input{flex:1;min-height:calc(var(--touch-target) * .75);padding:var(--space-2) var(--space-3);border:var(--border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);font-family:inherit}.todo-add-subtask-btn{min-height:calc(var(--touch-target) * .75);padding-inline:var(--space-3);border:var(--border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-muted);font-size:var(--text-sm);font-family:inherit;cursor:pointer;white-space:nowrap;transition:var(--transition-color)}.todo-add-subtask-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.todo-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--border)}.todo-progress{font-size:var(--text-sm);color:var(--color-text-muted)}.todo-hide-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;font-weight:var(--font-weight-normal)}.todo-hide-label input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer}
