Modi under fire as heroin worth $3bn recovered from friend’s port