* "max level" button to quickly fill in a card's max level
* "overkill" detection detects when you are feeding way more
EXP than is necessary to max level a card.
If a user puts in unattainable values (i.e. Tier 1 all the things
and doesn't have any gems to start with, i.e. net loss) then this
calculation could spin on into infinity, causing browser freak out.
We now set an arbitrary limit of 5 years, if the desired amount of
gems can't be obtained within that time, we bail.
NOTE: Medley Festival data is still not present.
Actually all event data should be reviewed, e.g. do a proper
calculation for tier cutoff averages, maybe different averages
for EN vs JP, etc.
This also adds general cookie read/write support which I may
use in other parts of the app (e.g. saving data that is entered
in the fields for levels/exp/gems/whatever)
Had the HTML body set with absurdly huge margins. Now we have
much more space to work with. I also lengthened the button
names so that they hopefully make more sense, now that we have
more space to work with.
Also got rid of the silly "Rank Calculator" title on the
rank calculator, it isn't really needed plus it was the only
page that had a title, which looked strange
Now using <input type="number" pattern="\d*" step="1"> so that
the text field will pop up the numeric keyboard on both iOS and
Android. However this makes the "size=<blah>" no longer function.
So we set a fixed size for all <input type="number"> text fields
using CSS. Kinda hackish, but it works.
* using <div> instead of <textarea> for gem verbose area, and
formatting the verbose reports using HTML
* fix some mismatched div's and (try to) reindent html (need a
better html reindenter)
* change viewport so that the page renders in large font without needing
to scroll (nowhere near "real" responsive web UI, but good enough for
now)
* use numeric keypad on all numeric entry fields