Rethinking Oversmoothing in Graph Neural Networks: A Rank-Based Perspective