Hi ThM,
I hope you don't mind me poking my nose in, but try this - Change this line in the edit to Display.pl:
if (${$uid.$musername}{'position'} && ($AHTML_level == 1 || ($AHTML_level == 2 && ($iammod || $iamgmod || $iamadmin)) || ($AHTML_level == 3 && ($iamgmod || $iamadmin)) || ($AHTML_level == 4 && $iamadmin)))
To:
if ($musername ne "Guest" && ($AHTML_level == 1 || ($AHTML_level == 2 && (${$uid.$musername}{'position'} eq 'Administrator' || ${$uid.$musername}{'position'} eq 'Global Moderator' || &is_moderator($musername))) || ($AHTML_level == 3 && (${$uid.$musername}{'position'} eq 'Administrator' || ${$uid.$musername}{'position'} eq 'Global Moderator')) || ($AHTML_level == 4 && ${$uid.$musername}{'position'} eq 'Administrator')))
You might just want to give that a good testing with all of the different settings though.
Edited: Oh, and the same thing in Recent.pl
One other small thing I've noticed is that you need to add the highlighted to the label tag in Settings_Main.pl too:
description => qq~<label for="AHTML_level">$admin_txt{'740a'}</label>~,
Again, I hope you don't mind me poking my nose in.