Short code is greatly underrated. It doesn't have to be an "obtuse and clever hack", usually it just amounts to using the right tool for the job.
For example, it is impressive how much code can be simplified by just using the correct API calls.
Also, some language features are explicitly designed to address a specific problem, and yet they stay unused, even when the problem arises.
As for your two points.
- If you forget about how it works in an hour, you never knew how it worked in the first place. It can happen when you write code at random and tweak it until it passes the test. IMHO, that's the opposite of a clever hack.
- I love to see clever hacks in code I maintain. Like everyone else I start going "WTF?!" but a few minutes later, it usually turns into "oh nice, I learned something today".
To illustrate, this is the kind of code I like to read https://www.youtube.com/user/Bisqwit . This guy's code is short, clever, takes advantage of everything the language has to offer, and still manages not to be too cryptic. Note that these are educational videos and the author spends a lot of time to get to that level. I don't expect to see that in a typical project, but that's kind of an ideal for me.