"Cześć, dzień dobry."
Translation:Hi, good morning.
The difference is very flexible. It's bit like "dzień dobry" would be the most general, appropriate for all times and "dobry wieczór" more specific - only in the evening. I read that according to etiquette we should use dzień dobry till it's dark and if we're inside and don't know if it's already dark - till 5pm.
"Dzień dobry" is just a formal way of saying hi, e.x. when you enter a shop where you say this to the sales assistant by the door or something or when you meet someone who you don't know well enough to talk to them informally (boss, unknown person...). I'm not Polish, I'm Czech, but in Czech it's basically the same, "Dobrý den". The use of it is the same.
You can use "dzień dobry" all through the day (it's ok also in the evening), "dobry wieczór" only in the evening. It's more flexible than in English or other languages. If some one greets you with "dzień dobry" even at 9PM is ok. And you can answer also "dzień dobry" or "dobry wieczór". More informal - "cześć" can be also used all through the day.
The reason is not logical or meaning - it's just the history of the language. The orgins of the greetings are prayers. It used to be said "Boże wam daj dobry dzień'' (let God give you a good day) or „Pan Bóg daj dobry wieczór'' (let God give [you] a good evening). Then they were reduced, and then around 2nd half of 17th century the word sentence was changed (and it was wieczór dobry) but then the old form (dobry wieczór) got back, but "dzień dobry" stayed in this new way.
1) It's a greeting, treat it as a set phrase. We have dzień dobry-dobty wieczór- dobranoc (good day-good evening- goodnight ) each one is deifferent than other
2) In Polish adjectives are generally before noun but there are many situations where adjective can be after a noun - you can treat them as exceptions or "set phrases", but there is a rule for it. (when they determine the thing, make them distinct form others, and not just describe them), I'm not sure if dzień dobry is example of this rule. more like "niedzwiedź polarny"=polar bear
From my experience Cześć is Hi! or Bye! and Dzień dobry is Hello (replacing good morning and good afternoon - a good literal equivalent to "G'day" in Australia) --replaced by "Dobry wieczór" just as any English native speaker would switch to Good evening - there's no set rule on time or whether the sun has gone down.
Dzień dobry 'doubles' as Good morning or Good afternoon, but IS NOT either - just G'Day?