Why does this sentence use the negative present progressive of 経つ to talk about the past?


「卵やステーキを最後に食べてから2日しか経っていませんが、もう一度食べたいです！」

I think is means: "It's only been 2 days (only two days have passed) since
I've eaten eggs and steak, but I want to eat it again!"

If I'm right, then it's talking about time that has passed, but doesn't use
the any sort of past tense, so I'm confused as to why that is. I know しか is
used with a negative, but why does it use 経っていません instead of 経ちませんでした (past
negative). If it's not something that's easily explainable, do you know of any
sources that may clarify this for me?

Also, looking at example sentences that use 経つ, I see different conjugations
that use both past and present, but the English translation makes them seem to
mean the same thing. I've been told that they mean the same thing, and that
some are natural, while others are not, but I can't seem to figure out why
different conjugations are used to mean the same thing.

