
/****************************************/
/* common styles used for v1 through v4 */
/****************************************/

body          { font-family: Arial, Helvetica, sans-serif; background-color: black; color: white; }
a { color: magenta; }
#stats        { border: 2px solid lime; }
#controls     { width: 28em; float: left; padding: 1em; font-size: 0.7em; }
#controls th  { text-align: right; vertical-align: middle; }
#instructions { clear: left; float: left; width: 17em; padding: 1em; border: 1px solid black; box-shadow: 0 0 5px lime; }
#racer        { position: relative; z-index: 0; width: 640px; height: 480px; margin-left: 20em; border: 2px solid magenta; }
#canvas       { position: absolute; z-index: 0; width: 640px; height: 480px; z-index: 0; background-color: black; /* default color when drawing out of bounds (eg, we are up a high hill and the background is too low)*/ }
#mute         { background-position:   0px 0px; width: 32px; height: 32px; background: url(images/mute.png); display: inline-block; cursor: pointer; margin-left: 20em; }
#mute.on      { background-position: -32px 0px; }

/**************************************************/
/* rudimentary heads up display (only used in v4) */
/**************************************************/

#hud                   { position: absolute; z-index: 1; width: 640px; padding: 5px 0; font-family: Verdana, Geneva, sans-serif; font-size: 0.8em; background-color: rgba(255,0,0,0.4); color: black; border-bottom: 2px solid black; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }
#hud .hud              { background-color: rgba(255,255,255,0.6); padding: 5px; border: 1px solid black; margin: 0 5px; transition-property: background-color; transition-duration: 2s; -webkit-transition-property: background-color; -webkit-transition-duration: 2s; }
#hud #speed            { float: right; }
#hud #current_lap_time, #hud #current_level, #hud #turbo_left { float: left;  }
#hud #last_lap_time    { float: left; display: none;  }
#hud #fast_lap_time, #hud #remaining_time    { display: block; width: 12em;  margin: 0 auto; text-align: center; transition-property: background-color; transition-duration: 2s; -webkit-transition-property: background-color; -webkit-transition-duration: 2s; }
#hud .value            { color: black; font-weight: bold; }
#hud .fastest          { background-color: rgba(255,215,0,0.5); }
#hud .magenta       { background-color: magenta; }

@keyframes anim-heartbeat {
    0%   {font-size: 175%;}
    25%  {font-size: 150%;}
    50%  {font-size: 125%;}
    100% {font-size: 100%;}
}

.warninglow {
    color: red;
    font-weight: bold;
    animation-name: anim-heartbeat;
    animation-duration: 5s;
    animation-iteration-count: infinite;
}

/* Fullscreen mode (on double click, managed in JS */
#canvas:fullscreen {
	width: auto;
    height: 100%; /* height is smaller than width, so resize by height and adapt width automatically */
}
#canvas:-webkit-full-screen {
	width: auto;
    height: 100%;
}

#canvas:-moz-full-screen {
	width: auto;
    height: 100%;
}

#canvas:-ms-fullscreen {
    width: auto;
    height: auto;
    margin: auto;
}

/* Mobile gamepad */
#gamepad {
    clear: left; width: 17em; border: 1px solid black; box-shadow: 0 0 5px lime;
    margin-left: 20em;
    width: 640px;
    height: 300px;
    background: rgba(255,0,0,0.4);
    position: relative;
    text-align: center;
    display: inline-block;
}
.gamepad-button {
    background: grey;
    width: 33%;
    height: 50%;
    display: block;
    float: left;

    /* Disable selection of text for gamepad buttons (so that user can press without selecting the text) */
   -moz-user-select: none;
   -khtml-user-select: none;
   -webkit-user-select: none;
   /*
     Introduced in IE 10.
     See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
   */
   -ms-user-select: none;
   user-select: none;
}
.gamepad-button span {
    display: inline-block;
    vertical-align: middle;
}
.gamepad-button:active { background: blue; }
#gamepad-turbo { }
#gamepad-up { }
#gamepad-left { clear: both; }
#gamepad-right { float: right; }
#gamepad-down { }
*/

