body {
	background:#FAF8EF;
	font-family: "Clear Sans", "Helvetica Neue", Arial, sans-serif;
	font-weight: bold;

	-webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	
	position: relative;
}
html, body {
    overscroll-behavior-y: contain;
	margin: 0;
	padding: 0;
}

#gameWrapper {
	width: 450px;
	height: 620px;
	
	padding: 20px;
	margin: 0;
	position: absolute;
	
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#game {
	background:#BBADA0;

	width: 450px;
	height: 450px;
	
	border-radius: 8px;
	
	position: relative;
}

#loseMessageWrapper, #playMessageWrapper {
	margin: -280px -10;
}

#loseMessage, #playMessage {
	position:relative;
	margin: auto;
	width:360px;
	background-color: rgba(143, 122, 102, .6);
	padding: 20px;
	text-align: center;
	color: #FFF;
	font-size: 54px;
	cursor:pointer;
	
	border-radius: 8px;
}

.header {
	width: 100%;
	height: 90px;
}

.logo {
	font-size: 74px;
	display: inline-block;
	color: #776E65;
	float: left;
	
	cursor:pointer;
}

.scoreDisplay {
	display: inline-block;
	float: right;
	background: #BBADA0;
	padding: 10px;
	margin-left: 10px;
	color: #E6E4DA;
	
	border-radius: 8px;
	text-align:center;
	
	cursor:pointer;
	
	position: relative;
}

.scoreDisplay:hover {
	background: #A4988E;
}

.scoreDisplay-Score {
	color:#FFF;
	font-size:25px;
	width:72px;
}

.scoreDisplay-Button {
	margin-top: 10px;
	color:#FFF;
}

.scoreDisplay-Button-Leaderboard {
	background:#DBBA60;
}

.scoreDisplay-Button-Leaderboard:hover {
	background:#BEA35A;
}

.scoreDisplay-Button-Invite {
	background:#F46042;
}
.scoreDisplay-Button-Invite:hover {
	background:#D25A41;
}

.scoreDisplay-Button-NewGame {
	background: #8F7A66;
}
.scoreDisplay-Button-NewGame:hover {
	background: #806F5E;
}

.scoreDisplay-Button-Name {
	background:#ECE0C8; width: 119px; margin-left: 0;color:#333
}
.scoreDisplay-Button-Name:hover {
	background: #CCC2AE;
}



.box {
	height:100px;
	width:100px;
	display:inline-block;
	margin: 10px 0 0 10px;
	padding: 0;
	text-align:center;
	vertical-align:middle;
	
	border-radius: 8px;
	
	line-height: 100px;
	
	position: relative;
}

.box0 {
	background:#CDC1B4;
	color: #776e65;
	font-size: 54px;
}

.box2 {
	background:#EEE4DA;
	color: #776e65;
	font-size: 54px;
}

.box4 {
	background:#EDE0C8;
	color: #776e65;
	font-size: 54px;
}

.box8 {
	background:#F2B179;
	color: #F9F6F2;
	font-size: 54px;
}

.box16 {
	background:#EC8D52;
	color: #F9F6F2;
	font-size: 54px;
}

.box32 {
	background:#F57C61;
	color: #F9F6F2;
	font-size: 54px;
}

.box64 {
	background:#E95839;
	color: #F9F6F2;
	font-size: 54px;
}

.box128 {
	background:#EFD073;
	color: #F9F6F2;
	font-size: 44px;
}

.box256 {
	background:#F1D04C;
	color: #F9F6F2;
	font-size: 44px;
}

.box512 {
	background:#ECC85A;
	color: #F9F6F2;
	font-size: 44px;
}

.box1024 {
	background:#E7C257;
	color: #F9F6F2;
	font-size: 34px;
}

.box2048 {
	background:#E8BE4E;
	color: #F9F6F2;
	font-size: 34px;
}

@keyframes shakeDown {
  0%   {top: 0px;}
  50%  {top: 20px;}
  100% {top: 0px;}
}

@keyframes shakeUp {
  0%   {top: 0px;}
  50%  {top: -20px;}
  100% {top: 0px;}
}

@keyframes shakeLeft {
  0%   {left: 0px;}
  50%  {left: -20px;}
  100% {left: 0px;}
}

@keyframes shakeRight {
  0%   {left: 0px;}
  50%  {left: 20px;}
  100% {left: 0px;}
}

@keyframes shakeFull {
  0%   {left: 0; top: 0;}
  12%  {left: 2px; top: 2px;}
  25%  {left: 0; top: 0;}
  36%  {left: -2px; top: -2px;}
  50%  {left: 0; top: 0;}
  62%  {left: 2px; top: -2px;}
  75%  {left: 0; top: 0;}
  87%  {left: -2px; top: 2px;}
  100% {left: 0px;}
}

@keyframes noShake {
  0% {left: 0px; top:0px;}
  100% {left: 0px; top:0px;}
}

@keyframes expand {
  0% {transform: scale(1);}
  50% {transform: scale(1.1);}
  100% {transform: scale(1);}
}