This will be a long explanation, but should cover everything you need to know about the card limits.
A deck can only have 60 cards exact: no more, no less. There is a limit of 4 for all Pokemon, Trainer, Supporter, Stadium, and Special Energy cards (except for Miracle Energy, which you can only have 1 in a deck). You can have as many basic Energy cards in your deck as you want. Pokemon* and Shining Pokemon (both from older series) can only have one copy per deck. Also, if a Pokemon has an owner in its name (example: Brock's Geodude), then you can use four copies of it as well as four of the regular Geodude cards. Pokemon ex are also treated as having a different name, so you can use up to four of them as well. Finally, Pokemon lv.X are treated as having the same name as the Pokemon it levels up from, so you can only have four in any combination of regular Pokemon and Pokemon lv. X. The new Shinies are still treated as their normal version, namewise, and can still evolve like their normal versions.
My favorite example of this: You can have a deck that consists of 2 Mewtwo, 2 Mewtwo lv. X, 4 Rocket's Mewtwo, 1 Shining Mewtwo, 4 Mewtwo ex, 4 Rocket's Mewtwo ex, and 1 Mewtwo*. (in other words, 18 Mewtwo! And yes, all of these Mewtwo exist)