* { -webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust: none;-webkit-touch-callout:none;-webkit-user-drag:none; }
html {
  background: rgb(167,207,223);
  background: -moz-linear-gradient(top,rgba(167,207,223,1) 0%,rgba(35,83,138,1) 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(167,207,223,1)),color-stop(100%,rgba(35,83,138,1)));
  background: -webkit-linear-gradient(top,rgba(167,207,223,1) 0%,rgba(35,83,138,1) 100%);
  background: -o-linear-gradient(top,rgba(167,207,223,1) 0%,rgba(35,83,138,1) 100%);
  background: -ms-linear-gradient(top,rgba(167,207,223,1) 0%,rgba(35,83,138,1) 100%);
  background: linear-gradient(to bottom,rgba(167,207,223,1) 0%,rgba(35,83,138,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a7cfdf',endColorstr='#23538a',GradientType=0);
  font-family: 'Helvetica Neue',Helvetica,Arial,sans-serif;
  font-size: 100%;
  margin: 0;
  width: 100%;
  height: 100%;
  min-height: 460px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
       -o-user-select: none;
          user-select: none;
}
body { margin: 7px 7px 0; }
#board {
  background: -moz-linear-gradient(top,rgba(255,255,255,.2) 0%,rgba(241,241,241,.2) 20%,rgba(225,225,225,.2) 21%,rgba(246,246,246,.2) 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(255,255,255,.2)),color-stop(20%,rgba(241,241,241,.2)),color-stop(21%,rgba(225,225,225,.2)),color-stop(100%,rgba(246,246,246,.2)));
  background: -webkit-linear-gradient(top,rgba(255,255,255,.2) 0%,rgba(241,241,241,.2) 20%,rgba(225,225,225,.2) 21%,rgba(246,246,246,.2) 100%);
  background: -o-linear-gradient(top,rgba(255,255,255,.2) 0%,rgba(241,241,241,.2) 20%,rgba(225,225,225,.2) 21%,rgba(246,246,246,.2) 100%);
  background: -ms-linear-gradient(top,rgba(255,255,255,.2) 0%,rgba(241,241,241,.2) 20%,rgba(225,225,225,.2) 21%,rgba(246,246,246,.2) 100%);
  background: linear-gradient(to bottom,rgba(255,255,255,.2) 0%,rgba(241,241,241,.2) 20%,rgba(225,225,225,.2) 21%,rgba(246,246,246,.2) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#33ffffff',endColorstr='#33f6f6f6',GradientType=0);
  border: 1px solid rgba(0,0,0,.5);
  position: relative;
  margin: 0 0 0 -153px;
  left: 50%;
  width: 304px;
  height: 400px;
  -webkit-border-radius: 6px;
     -moz-border-radius: 6px;
          border-radius: 6px;
  -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.5);
     -moz-box-shadow: 0 1px 3px rgba(0,0,0,.5);
          box-shadow: 0 1px 3px rgba(0,0,0,.5);
}
#scoreboard {
  position: relative;
  margin: 2px 0 -12px -153px;
  left: 50%;
  width: 304px;
  height: 40px;
}
#scoreboard span {
  color: #e8e8e8;
  text-shadow: 0 -1px 0 rgba(0,0,0,.8);
  vertical-align: top;
}
#scoreboard p {
  color: #e8e8e8;
  font-size: .7em;
  text-shadow: 0 -1px 0 rgba(0,0,0,.8);
  display: inline-block;
  float: right;
  position: relative;
  top: -42px;
  right: 4px;
}
#scoreboard a {
  color: #2e3192;
  font-family: Futura,Verdana,sans-serif;
  font-size: 1.5em;
  font-weight: bold;
  text-decoration: none;
  text-shadow: -1px -1px 0 rgba(255,255,255,.5),1px -1px 0 rgba(255,255,255,.5),-1px 1px 0 rgba(255,255,255,.5),1px 1px 0 rgba(255,255,255,.5);
}
#logo-button {
  cursor: pointer;
  display: inline-block;
  margin: 4px 0 0 4px;
}
#logo-button span {
  color: #1b1464;
  font-family: 'Cooper Std','Cooper Black','Arial Black',sans-serif;
  font-size: 2.2em;
  font-weight: bold;
  line-height: 1.3em;
  text-shadow: -1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff,0 2px 5px rgba(0,0,0,.5);
}
#logo-button .block {
  display: inline-block;
  position: relative;
  -webkit-transform: scale(.75);
     -moz-transform: scale(.75);
      -ms-transform: scale(.75);
       -o-transform: scale(.75);
          transform: scale(.75);
}
#logo-button .r { top: -4px; left:  -8px; }
#logo-button .g { top: 0;    left: -22px; }
#game-over-panel { position: absolute; }
#game-over-panel h1 {
  color: #1b1464;
  font-family: 'Cooper Std','Cooper Black','Arial Black',sans-serif;
  font-size: 2.4em;
  position: relative;
  top: 40px;
  width: 300px;
  text-align: center;
  text-shadow: -1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff,0 2px 5px rgba(0,0,0,.5);
}
#start-button {
  background: rgb(246,248,249);
  background: -moz-linear-gradient(top,rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(246,248,249,1)),color-stop(50%,rgba(229,235,238,1)),color-stop(51%,rgba(215,222,227,1)),color-stop(100%,rgba(245,247,249,1)));
  background: -webkit-linear-gradient(top,rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
  background: -o-linear-gradient(top,rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
  background: -ms-linear-gradient(top,rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
  background: linear-gradient(to bottom,rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6f8f9',endColorstr='#f5f7f9',GradientType=0);
  border: 1px solid rgba(0,0,0,.5);
  color: #00357a;
  font-size: 1.6em;
  display: block;
  position: absolute;
  padding: 8px 10px;
  top: 172px;
  left: 60px;
  width: 160px;
  height: 32px;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 -1px 0 rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.95);
  -webkit-border-radius: 6px;
     -moz-border-radius: 6px;
          border-radius: 6px;
  -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.3),inset 0 1px 0 rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.8);
     -moz-box-shadow: 0 1px 0 rgba(255,255,255,.3),inset 0 1px 0 rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.8);
          box-shadow: 0 1px 0 rgba(255,255,255,.3),inset 0 1px 0 rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.8);
  -webkit-animation: color-rotate 3s linear 0s infinite;
     -moz-animation: color-rotate 3s linear 0s infinite;
          animation: color-rotate 3s linear 0s infinite;
}
@-webkit-keyframes color-rotate {
  0%   { color: rgb(192,8,28); }
  33%  { color: rgb(8,176,48); }
  66%  { color: rgb(48,8,192); }
  100% { color: rgb(192,8,28); }
}
@-moz-keyframes color-rotate {
  0%   { color: rgb(192,8,28); }
  33%  { color: rgb(8,176,48); }
  66%  { color: rgb(48,8,192); }
  100% { color: rgb(192,8,28); }
}
@keyframes color-rotate {
  0%   { color: rgb(192,8,28); }
  33%  { color: rgb(8,176,48); }
  66%  { color: rgb(48,8,192); }
  100% { color: rgb(192,8,28); }
}
.row {
  border-bottom: 1px solid rgba(255,255,255,.2);
  height: 39px;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.2);
     -moz-box-shadow: inset 0 -1px 0 rgba(0,0,0,.2);
          box-shadow: inset 0 -1px 0 rgba(0,0,0,.2);
}
.col {
  border-right: 1px solid rgba(255,255,255,.2);
  float: left;
  width: 37px;
  height: 40px;
  -webkit-box-shadow: inset -1px 0 0 rgba(0,0,0,.2);
     -moz-box-shadow: inset -1px 0 0 rgba(0,0,0,.2);
          box-shadow: inset -1px 0 0 rgba(0,0,0,.2);
}
.row:last-child,.col:last-child {
  border: none;
  -webkit-box-shadow: none;
     -moz-box-shadow: none;
          box-shadow: none;
}
.block {
  border: 1px solid rgba(0,0,0,.2);
  color: #e8e8e8;
  cursor: pointer;
  font-size: 2.2em;
  font-weight: bold;
  line-height: 1em;
  text-align: center;
  text-shadow: 0 -1px 0 rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.3);
  text-rendering: optimizeLegibility;
  position: absolute;
  top: 0;
  left: 0;
  width: 34px;
  height: 36px;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 1px 2px rgba(0,0,0,.9);
     -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 1px 2px rgba(0,0,0,.9);
          box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 1px 2px rgba(0,0,0,.9);
  -webkit-backface-visibility: hidden;
     -moz-backface-visibility: hidden;
      -ms-backface-visibility: hidden;
       -o-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate(0,0);
     -moz-transform: translate(0,0);
      -ms-transform: translate(0,0);
       -o-transform: translate(0,0);
          transform: translate(0,0);
  -webkit-transition: -webkit-transform .2s linear,opacity .2s ease;
     -moz-transition:    -moz-transform .2s linear,opacity .2s ease;
      -ms-transition:     -ms-transform .2s linear,opacity .2s ease;
       -o-transition:      -o-transform .2s linear,opacity .2s ease;
          transition:         transform .2s linear,opacity .2s ease;
}
.r {
  background: rgb(242,40,60);
  background: -moz-linear-gradient(top,rgba(242,40,60,1) 0%,rgba(242,120,120,1) 40%,rgba(240,10,20,1) 41%,rgba(192,8,28,1) 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(242,40,60,1)),color-stop(40%,rgba(242,120,120,1)),color-stop(41%,rgba(240,10,20,1)),color-stop(100%,rgba(192,8,28,1)));
  background: -webkit-linear-gradient(top,rgba(242,40,60,1) 0%,rgba(242,120,120,1) 40%,rgba(240,10,20,1) 41%,rgba(192,8,28,1) 100%);
  background: -o-linear-gradient(top,rgba(242,40,60,1) 0%,rgba(242,120,120,1) 40%,rgba(240,10,20,1) 41%,rgba(192,8,28,1) 100%);
  background: -ms-linear-gradient(top,rgba(242,40,60,1) 0%,rgba(242,120,120,1) 40%,rgba(240,10,20,1) 41%,rgba(192,8,28,1) 100%);
  background: linear-gradient(to bottom,rgba(242,40,60,1) 0%,rgba(242,120,120,1) 40%,rgba(240,10,20,1) 41%,rgba(192,8,28,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2283c',endColorstr='#c0081c',GradientType=0);
}
.r.selected {
  -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(192,8,28,1),inset 0 0 8px 10px rgba(255,255,255,.6);
     -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(192,8,28,1),inset 0 0 8px 10px rgba(255,255,255,.6);
          box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(192,8,28,1),inset 0 0 8px 10px rgba(255,255,255,.6);
  -webkit-animation: pulsate-r .3s ease 0s infinite alternate;
     -moz-animation: pulsate-r .3s ease 0s infinite alternate;
          animation: pulsate-r .3s ease 0s infinite alternate;
}
@-webkit-keyframes pulsate-r {
  0%   { -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(192,8,28,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% { -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(192,8,28,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
@-moz-keyframes pulsate-r {
  0%   {    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(192,8,28,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% {    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(192,8,28,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
@keyframes pulsate-r {
  0%   {         box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(192,8,28,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% {         box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(192,8,28,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
.g {
  background: rgb(20,224,40);
  background: -moz-linear-gradient(top,rgba(20,224,40,1) 0%,rgba(120,224,120,1) 40%,rgba(10,208,20,1) 41%,rgba(8,176,48,1) 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(20,224,40,1)),color-stop(40%,rgba(120,224,120,1)),color-stop(41%,rgba(10,208,20,1)),color-stop(100%,rgba(8,176,48,1)));
  background: -webkit-linear-gradient(top,rgba(20,224,40,1) 0%,rgba(120,224,120,1) 40%,rgba(10,208,20,1) 41%,rgba(8,176,48,1) 100%);
  background: -o-linear-gradient(top,rgba(20,224,40,1) 0%,rgba(120,224,120,1) 40%,rgba(10,208,20,1) 41%,rgba(8,176,48,1) 100%);
  background: -ms-linear-gradient(top,rgba(20,224,40,1) 0%,rgba(120,224,120,1) 40%,rgba(10,208,20,1) 41%,rgba(8,176,48,1) 100%);
  background: linear-gradient(to bottom,rgba(20,224,40,1) 0%,rgba(120,224,120,1) 40%,rgba(10,208,20,1) 41%,rgba(8,176,48,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#14e028',endColorstr='#08b030',GradientType=0);
}
.g.selected {
  -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(8,176,48,1),inset 0 0 8px 10px rgba(255,255,255,.6);
     -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(8,176,48,1),inset 0 0 8px 10px rgba(255,255,255,.6);
          box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(8,176,48,1),inset 0 0 8px 10px rgba(255,255,255,.6);
  -webkit-animation: pulsate-g .3s ease 0s infinite alternate;
     -moz-animation: pulsate-g .3s ease 0s infinite alternate;
          animation: pulsate-g .3s ease 0s infinite alternate;
}
@-webkit-keyframes pulsate-g {
  0%   { -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(8,176,48,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% { -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(8,176,48,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
@-moz-keyframes pulsate-g {
  0%   {    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(8,176,48,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% {    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(8,176,48,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
@keyframes pulsate-g {
  0%   {         box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(8,176,48,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% {         box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(8,176,48,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
.b {
  background: rgb(100,80,240);
  background: -moz-linear-gradient(top,rgba(100,80,240,1) 0%,rgba(140,140,255,1) 40%,rgba(80,40,240,1) 41%,rgba(48,8,192,1) 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(100,80,240,1)),color-stop(40%,rgba(140,140,255,1)),color-stop(41%,rgba(80,40,240,1)),color-stop(100%,rgba(48,8,192,1)));
  background: -webkit-linear-gradient(top,rgba(100,80,240,1) 0%,rgba(140,140,255,1) 40%,rgba(80,40,240,1) 41%,rgba(48,8,192,1) 100%);
  background: -o-linear-gradient(top,rgba(100,80,240,1) 0%,rgba(140,140,255,1) 40%,rgba(80,40,240,1) 41%,rgba(48,8,192,1) 100%);
  background: -ms-linear-gradient(top,rgba(100,80,240,1) 0%,rgba(140,140,255,1) 40%,rgba(80,40,240,1) 41%,rgba(48,8,192,1) 100%);
  background: linear-gradient(to bottom,rgba(100,80,240,1) 0%,rgba(140,140,255,1) 40%,rgba(80,40,240,1) 41%,rgba(48,8,192,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6450f0',endColorstr='#3008c0',GradientType=0);
}
.b.selected {
  -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(48,8,192,1),inset 0 0 8px 10px rgba(255,255,255,.6);
     -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(48,8,192,1),inset 0 0 8px 10px rgba(255,255,255,.6);
          box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(48,8,192,1),inset 0 0 8px 10px rgba(255,255,255,.6);
  -webkit-animation: pulsate-b .3s ease 0s infinite alternate;
     -moz-animation: pulsate-b .3s ease 0s infinite alternate;
          animation: pulsate-b .3s ease 0s infinite alternate;
}
@-webkit-keyframes pulsate-b {
  0%   { -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(48,8,192,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% { -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(48,8,192,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
@-moz-keyframes pulsate-b {
  0%   {    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(48,8,192,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% {    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(48,8,192,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
@keyframes pulsate-b {
  0%   {         box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 4px 2px rgba(48,8,192,.8),inset 0 0 4px 6px  rgba(255,255,255,.3); }
  100% {         box-shadow: inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.3),0 0 8px 6px rgba(48,8,192,1),inset 0 0 8px 10px rgba(255,255,255,.6); }
}
