/* ═══════════════════════════════════════════════════════════════════
   OneHub · todo.css  —  Daily To-Do tab (theme-aware: dark + claude)
   Reuses core tokens from style.css (--card, --a1…). No new palette.
   ═══════════════════════════════════════════════════════════════════ */

/* Today card header */
.todo-today-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.todo-eyebrow{font-family:'JetBrains Mono',monospace;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.todo-date{font-family:'Bricolage Grotesque',sans-serif;font-size:1.35rem;font-weight:700;letter-spacing:-.01em;margin-top:.15rem}

/* Streak badge */
.todo-streak{display:flex;align-items:center;gap:.5rem;background:var(--a1-bg);border:1px solid var(--a1);border-radius:2rem;padding:.4rem .85rem}
.todo-flame{font-size:1rem;line-height:1}
.todo-streak-num{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:1rem;color:var(--tag-p)}
.todo-streak-num span{font-family:'DM Sans',sans-serif;font-weight:500;font-size:.66rem;color:var(--text-2);margin-left:.25rem}
.todo-streak-best{font-family:'JetBrains Mono',monospace;font-size:.55rem;color:var(--muted)}

/* Week strip */
.todo-week{display:flex;gap:.45rem;align-items:flex-end;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}
.todo-week-day{display:flex;flex-direction:column;align-items:center;gap:.3rem}
.todo-dot{width:22px;height:8px;border-radius:2rem}
.todo-dot.done{background:var(--a3)}
.todo-dot.miss{background:var(--bg3);border:1px solid var(--border-s)}
.todo-dot.today{background:var(--a1-bg);border:1px solid var(--a1)}
.todo-week-label{font-family:'JetBrains Mono',monospace;font-size:.52rem;color:var(--muted)}
.todo-week-cap{font-family:'JetBrains Mono',monospace;font-size:.56rem;color:var(--muted);margin-left:auto;align-self:center}

/* Carried banner */
.todo-carried{font-size:.74rem;color:var(--text-2);margin-bottom:.7rem;display:flex;align-items:center;gap:.4rem}
.todo-pill{font-family:'JetBrains Mono',monospace;font-size:.52rem;padding:.14rem .45rem;border-radius:2rem;background:var(--tag-p-bg);color:var(--tag-p);flex-shrink:0}

/* Task rows */
.todo-task{border:1px solid var(--border);border-radius:var(--r-item);margin-bottom:.35rem;overflow:hidden}
.todo-row{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;transition:background .15s}
.todo-row:hover{background:var(--bg3)}
.todo-check{width:22px;height:22px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;border:1.5px solid var(--border-s);background:transparent;color:transparent}
.todo-check:hover{border-color:var(--a3)}
.todo-check.done{background:var(--a3);border-color:var(--a3);color:var(--bg)}
.todo-body{flex:1;min-width:0}
.todo-title{font-family:'DM Sans',sans-serif;font-size:.84rem;font-weight:600;line-height:1.3;word-break:break-word;color:var(--text)}
.todo-title.done{color:var(--muted);text-decoration:line-through}
.todo-note{font-family:'DM Sans',sans-serif;font-size:.68rem;color:var(--text-2);margin-top:.12rem}
.todo-actions{display:flex;gap:.15rem;flex-shrink:0}
.todo-iconbtn{background:none;border:none;color:var(--muted);cursor:pointer;padding:.2rem;display:flex;transition:color .12s}
.todo-iconbtn.edit:hover{color:var(--a2)}
.todo-iconbtn.del:hover{color:var(--danger)}

/* Inline edit */
.todo-edit{background:var(--inline-bg);border-left:2px solid var(--a1);padding:.7rem}
.todo-edit input,.todo-add-form input{width:100%;padding:.5rem .7rem;background:var(--bg2);border:1px solid var(--border);border-radius:.4rem;font-family:'DM Sans',sans-serif;font-size:.82rem;color:var(--text);outline:none;transition:border-color .15s}
.todo-edit input:focus,.todo-add-form input:focus{border-color:var(--a1)}
.todo-edit-actions{display:flex;gap:.35rem;justify-content:flex-end;margin-top:.4rem}

/* Empty state */
.todo-empty{padding:1.1rem;border:1px dashed var(--border-s);border-radius:.8rem;background:linear-gradient(180deg,var(--bg2),transparent);font-size:.8rem;color:var(--text-2);text-align:center}

/* Add zone */
.todo-add-trigger{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:2rem;background:var(--bg3);border:1px solid var(--border);color:var(--muted);font-family:'DM Sans',sans-serif;font-size:.74rem;cursor:pointer;margin-top:.5rem;transition:all .18s}
.todo-add-trigger:hover{color:var(--a1);border-color:var(--a1);background:var(--a1-bg)}
.todo-add-trigger svg{transition:transform .2s}
.todo-add-trigger:hover svg{transform:rotate(90deg)}
.todo-add-form{background:var(--inline-bg);border:1px solid var(--border-s);border-radius:.6rem;padding:.8rem;margin-top:.5rem;animation:slideDown .2s cubic-bezier(.22,1,.36,1)}
.todo-add-form input{margin-bottom:.4rem}
.todo-add-bar{display:flex;gap:.35rem;justify-content:space-between;align-items:center}
.todo-add-hint{font-family:'JetBrains Mono',monospace;font-size:.6rem;color:var(--muted)}
.todo-add-btns{display:flex;gap:.35rem}

/* Wrap-up footer */
.todo-wrap{display:flex;align-items:center;gap:.7rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border);flex-wrap:wrap}
.todo-wrap-btn{display:inline-flex;align-items:center;gap:.4rem;font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:500;padding:.42rem .8rem;border-radius:.4rem;background:none;border:1px solid var(--border-s);color:var(--text-2);cursor:pointer;transition:all .15s}
.todo-wrap-btn:hover{border-color:var(--a3);color:var(--a3)}
.todo-wrap-hint{font-size:.68rem;color:var(--muted);flex:1;min-width:180px}
