Yeah, it depends on the word it's describing. There are a few rules to help you remember - words ending in consonants are masculine, words ending in -а or -я are feminine, words ending in -о or -е are neuter. Words that end in -ь can be either masculine or feminine and those ones need to be memorised. The adjective endings are more or less the same - for this example, добрый is masculine, добрая is feminine, доброе is neuter. It's quite easy to get used to the patterns with practice and time :)
Вечер starts when it begins to get dark. While this might overlap with what people call afternoon, I don't think I'd use this as a translation.
Russian doesn’t really have a word for ‘afternoon’. The most common ways to express the idea are «втора́я полови́на дня» ‘second half of the day’ or «[вре́мя] по́сле обе́да» ‘[time] after lunch’, but they don’t really work in the greetings.
Why is the ы necessary when there is already a й? Also, why does the word день need the ь?
I wish I could get an example of English letters that make the same sounds, but I guess those letters don't exist in the English language. That's why it's so hard to understand how to pronounce them in Russian. From the examples of pronunciation I have heard from Duolingo, е, й, and ы, and even и sound so similar, that I can't hear the difference. Same with ь. I can't hear the nuance of that character, and I don't know what in means to soften the n sound. An "n" is an "n" to me.
Yeah, the Duolingo pronunciations can make it tricky to get used to the sounds in any language. But if you spend a little time listening to native speakers you should pick up on it fairly quickly. This is an oversimplification but here's a guide for the vowel sounds:
й: the 'y' in 'key' (or in 'yeh' without the 'eh', always combined with other vowels)
ы: the 'u' in 'sugar' (sound is formed towards the back of the mouth)
Hard/soft sounds can be harder to distinguish but again it gets easier over time. And rest assured you will be understood by native speakers even if your pronunciation is a little off :)