I think the problem is that if you do, you can't prevent a Widget to be related to an instance of FirstTable that is not an instance of ThirdTable.
Perhaps you could put both the ThirdTable id and the FirstTable id, but in this case you must manage security controls for consistence between both ids.
In both cases, I would advise against. If the join cost is a problem for you, you should consider using a "single table" inheritance strategy.