I would say:
- 예쁘다 - pretty, cute. For women and girls, sometimes for small boys.
- 아름답다 - beautiful. Exclusively for women.
- 잘생겼다 - handsome, good looking. Mostly for men, but possible for women too.
By the way, 잘생기다 is a word in its own right. It probably started out as a two word expression 잘 생기다, but heavy use made it a new word and thus is now spelled without the breakage. The antonym 못생기다 is the same, starting out as 못 생기다 and becoming 못생기다.