/* ===== Botones compartidos ===== */
.mini{width:24px;height:24px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0;font-size:.8rem}
.mini.on{border-color:var(--accent);color:var(--accent)}
.mini.x:hover{color:var(--danger);border-color:var(--danger)}
.mini.grad{border-color:var(--accent);color:var(--accent)}
.add{background:var(--card);border:1px dashed var(--muted);color:var(--muted);border-radius:12px;padding:.9rem;width:100%;cursor:pointer;margin-top:.5rem}
.add:hover{color:var(--text);border-color:var(--text)}
.small-add{padding:.3rem .8rem;font-size:.8rem;width:auto;margin:0;align-self:center}
/* ===== Tipografía: títulos bold estilo Habitica ===== */
.item .name,
.todo-name,
.eisen-title,
.view-label,
.dhead,
.settings-header h3,
.modal h3{
  font-family: 'Tallhaus', 'Anton', sans-serif;
  font-weight: 700;
  letter-spacing: .5px;
}
.cell-num{
  font-family: 'Tallhaus', 'Anton', sans-serif;
  font-weight: 700;
  font-size: .7rem;
}

/* ===== Drag & drop: rebote y crecimiento ===== */
.todo-item.drop-anim{ animation: bounce .5s ease; }
@keyframes bounce{
  0%{ transform: scale(1); }
  40%{ transform: scale(1.06); }
  70%{ transform: scale(.97); }
  100%{ transform: scale(1); }
}
.item.drop-anim{ animation: itemBounce .4s ease; }
@keyframes itemBounce{
  0%{ transform: scale(1); }
  40%{ transform: scale(1.02); }
  70%{ transform: scale(.98); }
  100%{ transform: scale(1); }
}
.item{ transition: transform .2s ease; }
.item.dragging{ opacity:.4; }
