html,
body {
    margin: 0;
    height: 100%;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
}

input[type=checkbox] {
    -ms-transform: scale(2);
    /* IE */
    -moz-transform: scale(2);
    /* FF */
    -webkit-transform: scale(2);
    /* Safari and Chrome */
    -o-transform: scale(2);
    /* Opera */
    margin-top: 10px;
    margin-bottom: 10px;
}

input[type=text] {
    background-color: #ffffff;
    color: #000000;
}

input[type=password] {
    background-color: #ffffff;
    color: #000000;
}

/* Change Autocomplete styles in Chrome*/
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid #d2905c;
  -webkit-text-fill-color: rgb(0, 0, 0, 1);
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
  transition: background-color 5000s ease-in-out 0s;
}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: #474e5d;
  padding-top: 50px;
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 5% auto 15% auto; /* 5% from the top, 15% from the bottom and centered */
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

.box-register-tos-agree {
    font-size: 1em;
    line-height: 1em;
    color: #000000;
    display: inline-block;
    position: relative;
    padding-left: 27px;
    margin-bottom: 0.5em;
    margin-top: 0.5em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: 10px;
    padding-top: 0.1em;
}
.box-register-tos-agree input {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
}
.checkmark {
    position: absolute;
    top: -0.32em;
    left: 0;
    height: 22px;
    width: 22px;
    background-color: #eee;
    border-radius: 8px;
}
/* On mouse-over, add a grey background color */
.box-register-tos-agree:hover input ~ .checkmark {
    background-color: #000000;
}
.box-register-tos-agree input:checked ~ .checkmark {
    background-color: #000000;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
/* Show the checkmark when checked */
.box-register-tos-agree input:checked ~ .checkmark:after {
    display: block;
}
/* Style the checkmark/indicator */
.box-register-tos-agree .checkmark:after {
    left: 7px;
    top: 3px;
    width: 5px;
    height: 10px;
    border: solid #fffff7;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


/* LEADERBOARD */

.box-leaderboard {
    background: rgba(255, 255, 255, 1);
    color: #000000;
    font-family: "neue";
    margin: 0.8em;
    /* padding: 0.5em; */
    overflow-y: auto;
}

#leaderboard-ok-button {
    /*width: 100%;*/
    position: relative;
    left: 50%;
    transform: translateX(-50%);
	
}

.box-leaderboard-image {
    width: 100%;
}

.box-leaderboard-image img {
    max-width: 300px;
}

.box-leaderboard-navigation {
    /*border:1px solid #000;*/
    font-size: 2em;
    margin: 0;
    padding: 0;
/*    margin: 0 0.2em 0 0.2em;*/
    /*border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;*/
}

.box-leaderboard-navigation a {
    text-decoration: none;
}

.span_2_of_4_leaderboard {
    display: table;
}

.span_2_of_4_leaderboard a {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.box-leaderboard-navigation-item {
    text-align: center;
    background-color: rgba(0,0,0,0.5);
/*    padding: 0 0.2em 0.5em 0.2em;*/
    padding: 0;
    line-height: 1.5em;
    height: 1.5em;
    font-size: 0.65em;
	color: #ffffff;
	/* background-color: rgba(164, 186, 208, 1); */
/*    display: inline-block;*/
}

.box-leaderboard-navigation-item-highlighted {
	/* color: #fffff7; */
    /* background-color: rgba(37, 54, 86, 1); */
    background-color: #eb0000;
    /* lighter color */
}

.box-leaderboard-col-header {
    padding: 0 0.5em 0 0.45em;
    font-size: 1.16em;
    font-weight: 900;
	color: #000000;
}

.box-leaderboard-icon img {
    padding: 0.2em 0 0 0;
    width: 80%;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    /*border:1px solid #ccc;*/
}

.box-leaderboard-username {
    padding: 0.5em;
	font-family:"neue";
    /*border:1px solid #ccc;*/
}

.box-leaderboard-score {
    padding: 0.5em;
	font-family:"neue";
	color: #000000;
}

.box-leaderboard-entry {
    /* Basic solution. Better is to have scrollbar sticking to right border
	max-height:300px;
	overflow-y:scroll;
	*/
    /*overflow-y:scroll; */
}

.box-leaderboard-header {
    background-color: rgb(235,155,6,1);
    font-family: neue, BlinkMacSystemFont, "header";
    font-weight: 800;
    text-align: center;
    font-size: 2em;
    text-transform: uppercase;    
    -webkit-text-fill-color: #000000;
    /* -webkit-text-stroke: #644e37; */
    /* -webkit-text-stroke-width: 2px;   */
    padding: 0.5em 0.5em 0.5em 0.5em;
}

.box-leaderboard-subheader {
    font-size: 0.8em;
    margin: 0.8em;

}

.box-leaderboard-footer {
	position: relative;
	left: 50%;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin: 0.4em;
    font-size: 1.1em;
    text-align: center;
	display:inline-block !important;
	/* color: #000000; */
}

.box-leaderboard-contents {
    margin: 0.5em;
	color: #23221f;
}

.box-leaderboard-close {
    text-align: right;
    background-image: url('media/graphics/api/close.png');
}

.span_2_of_10_leaderboard .box-leaderboard-score {
    padding-left: 1.4em !important;
	color: #23221f;
}

.box-blank {
    background: rgba(250, 206, 122, 1);
    color: #000000;
    font-size: 1em;
    margin: 1em;
    padding: 0.5em;
    overflow-y: auto;
}

/* LOGIN */

.box-login {
    background: rgba(255, 255, 255, 1);
    font-family:"neue";
    color: #000000;
    font-size: 1em;
    margin: 1em;
    padding: 0.5em;
    overflow-y: auto;
}

.box-login-header {
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    color: #f0841f;
    border-bottom: 1px solid #d2905c;
    margin: 0.35em;
    margin-bottom: 0.5em;
    padding-bottom: 0.3em;
}

.box-login-subheader {
    font-size: 0.8em;
    margin: 0.8em;
}

.box-login-footer {
    font-size: 1.2em;
	color: #000000;
}

.box-login-contents {
    margin: 0.5em;
}

.box-login-close {
    width: 24px;
    height: 24px;
    text-align: right;
    float: right;
    background-image: url('media/graphics/api/close.png');
}

.box-login-form-input {
    margin-top: 0.2em;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 1em;
    /* background: rgb(218, 218, 218); */
    border: 1px solid #ccc;
	font-family:"neue";
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 0.3em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

.box-login-form-password-input {
    margin-top: 0.2em;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 1em;
    /* background: rgb(218, 218, 218); */
    border: 1px solid #ccc;
	font-family:"neue";
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 0.3em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

.box-login-form-password-input::-webkit-input-placeholder {
    font-family: 'neue';
}
  
.box-login-form-password-input:-ms-input-placeholder {
    font-family: 'neue';
}
  
.box-login-form-password-input:-moz-placeholder {
    font-family: 'neue';
}
  
.box-login-form-password-input::-moz-placeholder {
    font-family: 'neue';
}

/* REGISTER */

.box-register {
    background: rgba(255, 255, 255, 1);
    color: #000000;
    font-family:"neue";
    font-size: 1em;
    margin: 1em;
    padding: 0.5em;
    overflow: auto;
}

.box-register-header {
    font-size: 1.5em;
    font-weight: bold;
    text-align: center;
    color: #f0841f;
    border-bottom: 1px solid #d2905c;
    margin: 0.35em;
    margin-bottom: 0.5em;
    padding-bottom: 0.3em;
}

img.box-register-header-image {
    width: 100% !important;
    margin-top: 5px;
}

.box-register-subheader {
    font-size: 0.8em;
    margin: 0.8em;
}

.box-register-footer {
    font-size: 1.2em;
	color: #000000;
}

.box-register-contents {
    margin: 0.5em;
	color: #000000;
}

.box-register-close {
    width: 24px;
    height: 24px;
    text-align: right;
    float: right;
    background-image: url('media/graphics/api/close.png');
}

.box-register-form-input {
    margin-top: 0.2em;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 1em;
    /* background: rgb(218, 218, 218); */
    border: 1px solid #d2905c;
	font-family:"neue";
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 0.3em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

.box-register-form-password-input {
    margin-top: 0.2em;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 1em;
    /* background: rgb(218, 218, 218); */
    border: 1px solid #d2905c;
	font-family:"neue";
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 0.3em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

.box-register-form-password-input::-webkit-input-placeholder {
    font-family: 'neue';
}
  
.box-register-form-password-input:-ms-input-placeholder {
    font-family: 'neue';
}
  
.box-register-form-password-input:-moz-placeholder {
    font-family: 'neue';
}
  
.box-register-form-password-input::-moz-placeholder {
    font-family: 'neue';
}

input::placeholder {
  color: #b6b6b6;
  font-family: 'neue';
}


/* REGISTER */

.box-reset-password {
    background: rgba(250, 206, 122, 1);
    color: #000000;
    font-family: "neue";
    font-size: 1em;
    margin: 1em;
    padding: 0.5em;
}

.box-reset-password-header {
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    color: #000000;
    border-bottom: 1px solid #d2905c;
    margin: 0.35em;
    margin-bottom: 0.5em;
    padding-bottom: 0.3em;
}

.box-reset-password-subheader {
    font-size: 0.8em;
    margin: 0.8em;
}

.box-reset-password-footer {
    border-top: 1px solid #d2905c;
    font-size: 1.2em;
    margin: 0;
    padding-top: 0.4em;
	color: #000000;
}

.box-reset-password-contents {
    margin: 0.5em;
}

.box-reset-password-close {
    width: 24px;
    height: 24px;
    text-align: right;
    float: right;
    background-image: url('media/graphics/api/close.png');
}

.box-reset-password-form-input {
    margin-top: 0.2em;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 1em;
    /* background: rgb(218, 218, 218); */
    border: 1px solid #d2905c;
	font-family:"neue";
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 0.3em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}


/* POPUP */

.box-popup {
    background: rgba(255, 255, 255, 1);
    color: #000000;
    font-family: "neue";
    font-size: 1em;
    margin: 1em;
    padding: 0.5em;
}

.box-popup-header {
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    color: #000000;
    border-bottom: 1px solid #d2905c;
    margin: 0.35em;
    margin-bottom: 0.5em;
    padding-bottom: 0.3em;
}

#okButton {
	position: relative;
    left: 50%;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.button {
    text-decoration: none;
    margin-top: 0.3em;
    margin-bottom: 0.2em;
    /*width: auto;*/
    font-size:1em;
	font-weight:normal;    
   
    /* background-color: #316198; */
    background-color: #f0841f;
    color: #ffffff;
    padding: 0.2em 1em;
    font-family: neue, BlinkMacSystemFont, "header";    
    display: inline-block;
    text-align: center;
    text-shadow: 0px 0px rgba(0, 50, 103, 0.5);
}

.box-popup-subheader {
    font-size: 0.8em;
    margin: 0.8em;
}

.box-popup-footer {
    border-top: 1px solid #d2905c;
    font-size: 0.8em;
    margin: 0.8em;
    padding-top: 0.4em;
	color: #000000;
}

.box-popup-contents {
    margin: 0.5em;
}

.box-popup-close {
    width: 24px;
    height: 24px;
    text-align: right;
    float: right;
    background-image: url('media/graphics/api/close.png');
}

.box-popup-form-input {
    margin-top: 0.2em;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 0.8em;
    font-family:"neue";
    /* background: rgb(218, 218, 218); */
    border: 1px solid #d2905c;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 0.3em;
}

.box-leaderboard-entry {
    font-size: 1em;
}

#forgot-password {
    font-size: 0.85em
}



.button {
    font-family:"neue";
}


@media only screen and (min-width: 500px) {
    /*
    .box-leaderboard-entry {
        font-size: 1em;
    }
*/
    /*
    .box-leaderboard-navigation-item {
        height: 1.6em;
        font-size: 1em;
    }
*/
    /*
    .box-leaderboard-footer {
        margin: 0.4em;
        font-size: 1em;
    }
*/
    .box-login-footer {
        font-size: 0.9em;
    }
    .box-register-footer {
        font-size: 0.9em;
    }
    .box-register-tos-agree {
        font-size: 0.9em;
    }
    .box-reset-password-footer {
        font-size: 0.9em;
    }
}
