ASCII-Art Venn Diagram
Husk, 72 58 bytes
mṙ1₁Fz+m(₁TT' Ṡ:→S:öR'-→▲mL)TTømėF`-FnF-
Ṡz:(`:'+:'+R'|-2L

Try it online!
Husk does not support arrays of multiple types, so the arguments must be string arrays.
I am not sure whether I want to explain this monstrosity.
Due to it's sheer size, it takes about 28 secs(due to type inference) for the first test case mentioned. Without some of the type inference issues, this could be a lot shorter.
-14 bytes with a lot of adjustments(I got better at Husk).