A lot of this became clearer to me when I started picturing the functions as a heavy person and a light person on a seesaw. For instance, SeNi are two sides of the same function. An SP would have the heavy person on Se and light on Ni, so the seesaw will always favor Se. With a good enough kick, Ni gets a fair share at the ride, but still the default always returns to Se. Same for NeSi, FiTe, FeTi.