>> width: 400px;
>> height: 300px;
I recommend using em units over px units.
eg
width: 5em;
height: 2em;
>> font-size: 48px !important;
if you must change size then again, use em;
font-size: 1.1em !important;
But ideally do not change font size for buttons.
other than that - good example!
cheers
Bruce