@font-face {
    font-family: 'nulshockbold';
    src: url('../res/fonts/nulshock_bd-webfont.eot');
    src: url('../res/fonts/nulshock_bd-webfont.eot?#iefix') format('embedded-opentype'),
         url('../res/fonts/nulshock_bd-webfont.woff') format('woff'),
         url('../res/fonts/nulshock_bd-webfont.ttf') format('truetype'),
         url('../res/fonts/nulshock_bd-webfont.svg#nulshockbold') format('svg');
    font-weight: normal;
    font-style: normal;

}

body, html{
	position:relative;
	height:100%;
	width:100%;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background-color: #333;
	font-family: arial;
	font-size: 12px;
	color:#666;
	/*
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	*/
}
.counter {
	background: #ccc;
	width: 74px;
	position: absolute;
	background-color:#105CB6;
	padding: 3px;
	
	top:50px;
	
	color:#0ff;
	font-family: Helvetica, Arial;
	font-size: 9px;
	font-weight: bold;
}

#menuBar{
	height:40px;
	border-bottom: 1px solid #666;
	border-left: 1px solid #666;
	position: absolute;
	right: 0;
	z-index:5;
	padding: 0 5px;
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-bottomleft: 8px;
	border-bottom-left-radius: 8px;
	
	background: rgba(128,128,128, 0.8);


}
#menuBar ul{
	display: block;
	margin: 0;
	padding: 5px 0 0 0;
}
#menuBar ul li{
	display: block;
	float:right;
	padding:4px 1px 1px 1px;
	color:#FFF;
	line-height: 20px;
	
	margin: 0 5px;
	
	
	
	border-top: 3px solid rgba(0, 0, 0, 0);	
	border-bottom: 3px solid rgba(33, 33, 33, 0);	
	
}
#menuBar ul li.inactive{
	background: rgba(0,0,0,0.2);
	padding-left:8px; 
	padding-right:8px; 
	
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}
#menuBar ul li img{
	float: right;
	padding-left: 5px;
}
#menuBar ul li.active{
	
	cursor: pointer;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	
	border-bottom: 3px solid rgba(33, 33, 33, .5);	
}
#menuBar ul li.active:hover{
	border-bottom: 3px solid rgba(0, 132, 255, 1);	
}

#htmlLayer{
	position: absolute;
	z-index: 2;
	font-family: "nulshockbold";
	color:#FFF;
	width: 100%;
	height: 100%;
	text-align: center;
	text-shadow: 0px 0px 16px rgba(0, 0, 0, 1);
}

#htmlCenteredLayer{
	position: absolute;
	z-index: 3;
	font-family: "nulshockbold";
	color:#FFF;
	width: 100%;
	text-align: center;
	/*text-shadow: 0px 0px 16px rgba(0, 0, 0, 1);*/
}
#intro{
	box-sizing:border-box;
	width: 100%;
	height: 100%;
	padding:0 20%; 
	text-shadow: 0px 0px 16px rgba(0, 0, 0, 1);
	font-size: 20px;
}
#intro>div{
	margin-bottom: 20px;
}
#intro img{
	max-width: 100%;
}
#pressKey{
	position:absolute;
	bottom: 10%;
	text-align: center;
	width: 100%;
}
#progressBar{
	width: 100%;
	height:5px;
	background: #000;
	box-sizing:border-box;
}
#progressBar .bar{
	height: 5px;
	box-sizing:border-box;
	width:1px;
	background: rgba(0, 132, 255, 1);
}

#soundControl{
	position: absolute;
	bottom: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	z-index: 4;
	opacity: 0;
	background: transparent url("../res/soundButton.png") no-repeat top left;
	cursor: pointer;
	-webkit-transition: background-position 0.2s ease-in-out;
	-moz-transition: background-position 0.2s ease-in-out;
	-o-transition: background-position 0.2s ease-in-out;
	transition: background-position 0.2s ease-in-out;
}

#soundControl.disabled{
	background-position: -40px 0;
}

#editor #canvasLayer, #palette, #warnings{
	display:none;
}

p b.win{
	color:#00FF00;
}


#canvasLayer{
	position:absolute;
	z-index: 1;
	background:#111;
	display:block;
	color:#FFF;
	width:100%;
	height:100%;
	font-family:Arial, sans-serif;
}
#canvasLayer.hand{
	cursor:move;
}

.menuContainer{
	border:2px solid #FFF;
	background: rgba(0, 132, 255, .4) url("../res/menuBack1.png") repeat-x top left;
	padding: 5px;
	width: 100%;
	max-width: 560px;
	min-width: 30%;
	margin: 0 auto;
	
	-webkit-border-radius: 16px;
	-moz-border-radius: 16px;
	border-radius: 16px;
	
	-moz-box-shadow: inset 0px 0px 64px 0px #081928;
	-webkit-box-shadow: inset 0px 0px 64px 0px #081928;
	-o-box-shadow: inset 0px 0px 64px 0px #081928;
	box-shadow: inset 0px 0px 64px 0px #081928;
}
.menuContainer .title{
	font-size: 20px;
	margin-top: 20px;
	margin-bottom: 10px;
	color:#FFF;
	text-align: left;
	background-color: #FFF;
	color:#0C3150;
	padding: 4px 16px;
	
}

.menuContainer .title:first-child{
	margin-top: 0;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}

.menuContainer .title>img{
	width: 100%;
}

.menuContainer .titleHome{
	font-size: 20px;
	margin-top: 20px;
	margin-bottom: 10px;
}
.menuContainer .titleHome>img{
	width: 100%;
}

.menuContainer p{
	color:#FFF;
}

.menuContainer ul.tab>li {
	
	display: inline-block;
	font-size: 16px;
	border:1px solid #666;
	padding: 5px 25px;
	cursor: pointer;
	background: rgba(0,0,0,.6);
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.menuContainer ul.tab>li.disabled {
	
	opacity: 0.3;
	cursor: default;
}
.menuContainer ul.tab>li.disabled:hover{
	color:#FFF;
	background-color: transparent;
}

.menuContainer ul.tab>li.selected, .menuContainer ul.tab>li:hover{
	
	color:#0C3150;
	background-color: #FFF;
}

.menuContainer ul.menu, .menuContainer ul.tab{
	padding: 0;
	list-style-type: none;
	margin-top: 20px;
}

.menuContainer ul.menu>li{
	display: block;
	text-shadow: 0px 0px 16px rgba(0, 0, 0, 1);
	margin-bottom: 20px;
	cursor: pointer;
	font-size: 20px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.menuContainer ul.stdList{
	list-style-position: inside;
	text-align: left;
}

.menuContainer ul.menu>li:hover{
	
	-moz-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	-o-transform: scale(1.2);
	transform: scale(1.2);
}

.menuContainer div.infoBlock{
	text-align:left;
	border: 1px solid #666;
	padding: 0 10px;
	background: rgba(0,0,0,.6);
	font-family: Arial;
	margin: 10px 0;
}

.menuContainer div.submenu{
	border: 1px solid #666;
	padding: 10px;
	background: rgba(0,0,0,.6);
	margin: 10px 0;
}

.button{
	cursor: pointer;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.button:hover{
	
	-moz-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	-o-transform: scale(1.2);
	transform: scale(1.2);
}

.menuContainer form table td{
	background: none;
	border: none;
}

.menuContainer form table td.right{
	text-align: right;
}
.menuContainer form table td.left{
	text-align: left;
}
.menuContainer form input[type="submit"], .menuContainer form input[type="button"]{
	padding: 5px 20px;
	
}

.menuContainer form input[type='text'], .menuContainer form input[type='password']{
	width: 80%;
}

.menuContainer table{
	width: 100%;
	border-collapse: collapse;
}

.menuContainer .limitHeight{
	max-height: 222px;
	overflow-x:hidden;
	overflow-y: auto;
}

.menuContainer table td{
	vertical-align: middle;
	text-align: center;
	border: 1px solid #666;
	padding: 4px;
	background: rgba(0,0,0,.6);
}

.menuContainer table.levels td{
	line-height: 32px;
}
.menuContainer table.levels td img{
	float:right;
}

.menuContainer table.levels tr{
	cursor: pointer;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.menuContainer table.levels tr.published td{
	
	background: rgba(0,255,0,.3);
}

.menuContainer table.levels tr.unpublished td{
	
	background: rgba(255,0,0,.3);
}

.menuContainer table.levels tr:hover{
	
	color:#0C3150;
}
.menuContainer table.levels tr.playable:hover td.info{
	
	display: none;
}
.menuContainer table.levels tr.playable:hover td.overlay{
	
	display: table-cell;
	-webkit-animation: flickerAnimation 0.5s infinite;
   -moz-animation: flickerAnimation 0.5s infinite;
   -o-animation: flickerAnimation 0.5s infinite;
    animation: flickerAnimation 0.5s infinite;
}
@keyframes flickerAnimation {
  0%   { color:#0C3150; }
  50%  { color:#90ACC3; }
  100% { color:#0C3150; }
}
@-o-keyframes flickerAnimation{
  0%   { color:#0C3150; }
  50%  { color:#90ACC3; }
  100% { color:#0C3150; }
}
@-moz-keyframes flickerAnimation{
  0%   { color:#0C3150; }
  50%  { color:#90ACC3; }
  100% { color:#0C3150; }
}
@-webkit-keyframes flickerAnimation{
  0%   { color:#0C3150; }
  50%  { color:#90ACC3; }
  100% { color:#0C3150; }
}
.menuContainer table.levels td.overlay{
	
	display: none;
}

.menuContainer table.levels tr:hover th{
	
	color:#FFF;
}
.menuContainer table.levels tr:hover td{
	
	background: #FFF;
}

.menuContainer table.levels.medium, .menuContainer table.levels.hard{
	display: none;
}

/* Editor */
#palette, #warnings{
	
	position: absolute;
	
	background: #111;
	
	padding: 10px;
	z-index: 2;
	border:1px solid #666;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
}
#palette{
	bottom:20px;
	right: 20px;
}
#warnings{
	bottom: 120px;
	right: 20px;
	
}
#warnings p{
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

#warnings.error p{
	color:#FF0000;
	font-size:14px;
}


#palette img{
	border:4px solid transparent;
	cursor: pointer;
}
#palette img.selected{
	border:4px solid #FFF;
}
#warnings p {
	color:#CCC;
}


/* STAR RATING */
/* Wrappers */
.rating-wrap{
	width:150px;
	height:25px;
	margin: 0 auto;
	position:relative;
}


.radio-wrap{
	width:100%;
	height:100%;
}

/* Radio Buttons */
input[type=radio] {
	display:inline-block;
	position:relative;
	z-index:2;
	margin:0;
	width:17.4%;
	height:100%;
	opacity:0;
}

/* Filled Rating */
.rating-fill{
	width:0;
	height:100%;
	background:url(../res/star.png) #efaf16;
	position:absolute;
	top:0;
	left:0;
	z-index:1;
}


/* Checked Inputs */

input[value="5"]:checked + .rating-fill{
	width:100%;
}

input[value="4"]:checked + .rating-fill{
	width:80%;
}

input[value="3"]:checked + .rating-fill{
	width:60%;
}

input[value="2"]:checked + .rating-fill{
	width:40%;
}

input[value="1"]:checked + .rating-fill{
	width:20%;
}


/* Blank Stars */

.rating-blank{
	width:100%;
	height:100%;
	background:url(../res/star.png) #ccc;
	position:absolute;
	top:0;
	left:0;	
	z-index:0;
}

/* Optional Hover Effect */
input[value="5"]:hover + .rating-fill{
	width:100%;
}

input[value="4"]:hover + .rating-fill{
	width:80%;
}

input[value="3"]:hover + .rating-fill{
	width:60%;
}

input[value="2"]:hover + .rating-fill{
	width:40%;
}

input[value="1"]:hover + .rating-fill{
	width:20%;
}

#keyHelper{
	position: absolute;
	bottom: 10px;
	left: 10px;
	background: #333;
	border: 1px solid #666;
	z-index: 6;
	padding: 2px;
	opacity: 0;
}

#keyHelper p{
	margin:5px;
	color:#DDD;
	font-size: 11px;
}
#keyHelper p .key{
	font-size: 12px;
}
kbd, .key {
	display: inline;
	display: inline-block;
	min-width: 1em;
	padding: .2em .3em;
	font: normal .85em/1 "Lucida Grande", Lucida, Arial, sans-serif;
	text-align: center;
	text-decoration: none;
	-moz-border-radius: .3em;
	-webkit-border-radius: .3em;
	border-radius: .3em;
	border: none;
	cursor: default;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
kbd[title], .key[title] {
	cursor: help;
}

/* Dark style for display on light background. This is the default style. */
kbd, kbd.dark, .dark-keys kbd, .key, .key.dark, .dark-keys .key {
	background: rgb(80, 80, 80);
	background: -moz-linear-gradient(top, rgb(60, 60, 60), rgb(80, 80, 80));
	background: -webkit-gradient(linear, left top, left bottom, from(rgb(60, 60, 60)), to(rgb(80, 80, 80)));
	color: rgb(250, 250, 250);
	text-shadow: -1px -1px 0 rgb(70, 70, 70);
	-moz-box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
	-webkit-box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
	box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
}