It can be cunning, but it can also be smart, knowledgeable or clever, depending on tone and context. And can also mean “paying attention” (in parts of the country - “tá esperto”). I believe the original meaning is closer to knowledgeable (from “expertus”)
From my background (I grew up in London), "geezer" seems like a decent approximation to me, though there's no female version of that I can think of. I gather it means "old man" elsewhere.