A few optimizations here and there:

Async load the submission page only once.
Now loads tokens and calculate time until next token available.
Much better highlight function.