Opponent in top shape cut by heartless nut (4)
I believe the answer is:
anti
'opponent' is the definition.
(someone opposed to something)
'top shape cut by heartless nut' is the wordplay.
'top shape' becomes 'ai' (I can't justify this - if you can you should give a lot more credence to this answer).
'cut by' indicates putting letters inside (some letters cut their way into a word).
'heartless' says to hollow out the word (remove centre letters).
'nut' with its middle removed is 'nt'.
'ai' enclosing 'nt' is 'ANTI'.
'in' acts as a link.
Can you help me to learn more?
(Other definitions for anti that I've seen before include "Not in favor of" , "on the other side" , "An opponent - opposed to party policy, etc" , "Prefix meaning against" , "Prefix meaniing against" .)