@import url(http://fonts.googleapis.com/css?family=Lato);

html,body,.game-container,#game,table {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
body {
	background: #CCC;
}
#game {
	width: auto;
	margin-left: 210px;
	position: relative;
	-webkit-transition: margin .3s, background .5s;
	transition: margin .3s, background .5s;
	box-shadow: rgba(0, 0, 0, 0.35) 15px 15px 70px inset;
}
#menu {
	height: 100%;
	width: 200px;
	position: fixed;
	background: gray;
	z-index: 100000;
	display: table;
	-webkit-transition: all .3s;
	transition: all .3s;
	left:0;
}
#menu .text {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-family: Lato,Tahoma,sans-serif;
	-webkit-font-smoothing: antialiasing;
}
#menu span {
	display: inline-block;
	font-size: 20px;
}
#menu .display-mark {
	width: 30px;
	background: #333;
	border-radius: 3px;
	color: rgba(250,64,64,0.8);
}
#menu-border {
	height: 100%;
	width: 10px;
	background: #333;
	margin-left: 200px;
	position: absolute;
}
#menu-button {
	position: absolute;
}
.menu-slide {
	cursor: pointer;
}

.arrow-right {
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 0; 
	height: 0;
	-webkit-transition: all .2s;
	transition: all .2s;
}
#menu-button {
	left: 200px;
	border-top: 40px solid transparent;
	border-bottom: 40px solid transparent;
	border-left: 40px solid #333;
}
#menu-button:hover {
	border-top: 50px solid transparent;
	border-bottom: 50px solid transparent;
	border-left: 50px solid #333;
}
#menu-button-inner {
	left: -30px;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
	border-left: 20px solid gray;
}
#menu-button:hover #menu-button-inner {
	left: -40px;
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent;
	border-left: 30px solid gray;
}

#overlay {
	position: absolute;
	display: table;
	height: 100%;
	width: 100%;
	background: rgba(0,0,0,.6);
	z-index: 50000;
	text-align: center;
	color: white;
	font-family: Lato,Tahoma,sans-serif;
}
#overlay h1 {
	font-size: 52px;
	margin: 3px;
}
.button {
	display: inline-block;
	background: gray;
	border: 5px solid #222;
	color: black;
	height: 38px;
	width: 200px;
	font-size: 30px;
	margin: 5px;
	cursor: pointer;
	-webkit-user-select: none;  /* Chrome all / Safari all */
    -moz-user-select: none;     /* Firefox all */
    -ms-user-select: none;      /* IE 10+ */
    -webkit-transition: -webkit-transform .1s;
    transition: transform .1s;
}
.button:hover {
	-webkit-transform:  scale(1.05);
	transform: scale(1.05);
}
.button:active {
	-webkit-transform:  scale(1.05);
	transform: scale(1.02);
}

table {
	border-spacing: 10px;
	perspective:1000px;
}

.game-container {
	margin: auto;
}
.overlay-container {
	display: table-cell;
	vertical-align: middle;
}

td {
	position: relative;
	width: calc(100%/3);
	height: calc(100%/3);
	padding:0;
	text-align: center;
	font: bold 20vh Lato,"Helvetica Neue",Tahoma, sans-serif;
	-webkit-transition: -webkit-transform 0.4s linear;
	transition: transform 0.4s linear;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

.red {
	color: rgba(250,64,64, 0.8);
}
.blue {
	color: rgba(0,128,255, 0.8);
}

.card {
	background: gray;
	height: 100%;
	width: 100%;
    -webkit-user-select: none;  /* Chrome all / Safari all */
    -moz-user-select: none;     /* Firefox all */
    -ms-user-select: none;      /* IE 10+ */
}
.front {
	position: absolute;
	-webkit-backface-visibility: hidden;
   	backface-visibility: hidden;
   	cursor: pointer;
   	-webkit-transition: all .1s;
	transition: all .1s;
}
.front:hover {
	opacity: .8;
}
.back {
	padding-top: 10%;
	text-shadow: 1px 2px 5px gray, 0 0 0 #000, 1px 2px 5px gray;
	-webkit-font-smoothing: antialiasing;
	cursor: default;
}