Your public key won’t be known to the blockchain until a first transaction is made. This is because upon creation of your account inside the NanoWallet application, your local app doesn’t send anything to the blockchain. It’s just randomised private key, public key and address created and saved locally in your wallet.
I guess the NanoWallet knows the public key but just doesn’t show it - to protect users from using it in the wild when the blockchain doesn’t know it yet.
Might not be perfect, but does the job so far.
You can derive the public key for fresh accounts manually using the algorithm described in the white-paper. There are SDKs with the function to derive it, too.