"Where were you so long?"
Translation:Wo seid ihr so lange gewesen?
The distinction between the past tense (Präteritum) and the present perfect (Perfekt) is not as strict in German as it is in English. Mostly, it's just a matter of style. That's why an English sentence in the past tense ("Where were you so long?") can either be translated as "Wo warst du so lange?" (Präteritum, i.e. German past tense) or "Wo bist du so lange gewesen?" (Perfekt, i.e. German present perfect). Both translations are correct.
Native U.S. English speaker here: This sentence is very much in use where I live. The "for" is understood. It is certainly possible that it is a colloquialism; however, the Grammarly app doesn't flag it as being incorrect, so its use seems to be widespread enough to be considered acceptable. I can understand why it would be confusing to someone trying to translate that from English to German, though, if s/he is not familiar with it.