Guess your random generator takes care of that - or is it some luck?
Shrinking down an value range is really fascinating stuff.
I really wonder what is the theorical lowest value range for rook-attacks with and/mul/shift? Intuitively i would say that at least one edge becomes very difficult, if not impossible, to go with 11-bit addresses. The one where most of 12 relevant occupied bits already reside in the upper 11-bits. Is your h8-square 63?
I'm not a mathematician and may be wrong of course. May be with so many magic bits set and magic overflows you'll find all the good collisions

Lasse's antirotated approach is really a serious one - and the fastest at least when we have very fast and huge caches (and fast mul). I fear my 1.5KByte approach is nice for bootloading to initialize the arrays

Cheers,
Gerd