What I want to see, but no one seems to be building, is airgapped logins using public key encryption. I think this is the longer term future. My idea works for unlocking a computer or logging into a website.
Everyone already has the hardware since everything has a camera and screen to pass QR code data back and forth. The device simply displays a challenge QR with your account info and some random data for login. Your signer validates the account matches the priv key, then does a signature from your priv key and send the signature back via QR. Service or device validates the signature is you using their access to your pubkey and you are in.
As long as the random data in the challenge is random only a single login per challenge is possible. The biggest risk I see is someone doing a MITM to capture the challenge then shoulder surfing the signature QR and presenting it faster than you.
A signer could even have a unique key for every device and service and automatically sign with the correct one by pulling it from the challenge data.
Another pro I see to this is the service only has a pub key, so services leaking your sign in info through poor password management and or network security is a thing of the past.