@font-face {
  font-family: "SansitaOneRegular";
  src: url("font/sansitaone-webfont.woff") format("woff"),
       url("font/sansitaone-webfont.svg#SansitaOneRegular") format("svg"); // only for Android
  font-weight: normal;
  font-style: normal;
}

html, body {
  font-family: SansitaOneRegular;
  font-size: 18px;

  /* http://maximilianhoffmann.com/posts/better-font-rendering-on-osx */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  background-color: #444;
  color:  #fff;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#description {
  padding: 1em;

  h1 {
    font-size: 3em;
    text-align: center;
  }

  h2, p {
    font-family: sans-serif;
  }

  p.icon {
    text-align: center;
  }

  a:link, a:visited {
    color: #ccc;
  }

  a:hover, a:active {
    color: #fdd;
  }
}

#board {
  stroke-width: 0;
}

#play, #tutorial {
  .title {
    font-size: 34px;
    text-anchor: end;
    fill: #fff;
    stroke-width: 0;
  }

  .scoreLabel, .levelLabel, .livesLabel {
    text-anchor: end;
    fill: #ccc;
    stroke-width: 0;
  }

  .score, .level, .lives {
    transition: all 1s ease-out;
    fill: #eee;
    stroke-width: 0;

    &.changeDown {
      fill: #c0392b;
    }

    &.changeUp {
      fill: #27ae60;
    }
  }
}

.pauseButton {
  pointer-events: visible;

  .fullarea {
    pointer-events: visible;
    fill: #fff;
    opacity: 0;
  }

  .icon {
    stroke-width: 0;
    fill: #fff;
    opacity: 0.7;
  }
}

.ball {
  text {
    font-size: 16px;
    text-anchor: middle;
    fill: #fff;
    stroke-width: 0;
  }
}

.ball1 {
  fill: #f39c12;
  stroke: #e67e22;
}

.ball2 {
  fill: #2ecc71;
  stroke: #27ae60;
}

.ball3 {
  fill: #3498db;
  stroke: #2980b9;
}

.ball4 {
  fill: #9b59b6;
  stroke: #8e44ad;
}

.ball5 {
  fill: #aa8866;
  stroke: #776655;
}

.ball6 {
  fill: #e74c3c;
  stroke: #c0392b;
}

#playable {
  pointer-events: none;

  &:hover {
    cursor: pointer;
  }
}

.panelBackground {
  pointer-events: visible;
  fill: transparent;
}

#main {
  .title {
    font-size: 96px;
    text-anchor: middle;
    stroke-width: 0;
    fill: #fff;
  }
}

#difficulty, #gameOver, #pause, #scores, #settings {
  .title {
    font-size: 48px;
    text-anchor: middle;
    fill: #fff;
    stroke-width: 0;
  }
}

#gameOver {
  .score {
    font-size: 34px;
    text-anchor: middle;
    fill: #eee;
  }
}

#scores {
  .highscores {
    font-size: 18px;
    text-anchor: end;
    fill: #eee;

    .thisone {
      fill: #3c3;
    }
  }
}

.button {
  pointer-events: visible;

  text {
    font-size: 18px;
    text-anchor: middle;
    fill: #333;
    stroke-width: 0;
  }

  rect {
    fill: #ddd;
    stroke-width: 3;
    stroke: #666;
  }

  &:hover {
    cursor: pointer;

    rect {
      fill: #fff;
      stroke-width: 3;
      stroke: #888;
    }
  }
}

.label {
  text-anchor: end;
  fill: #fff;
}

.copyright, .website, .version {
  font-size: 10px;
  fill: #888;
  stroke-width: 0;
}

.copyright {
  text-anchor: start;
}

.website {
  text-anchor: middle;
}

.version {
  text-anchor: end;
}

.step {
  text {
    font-weight: normal;
    fill: #333;
  }

  rect, path {
    fill: #aaa;
    fill-opacity: 1;
    stroke-width: 0;
    stroke: #aaa;
  }
}

#installButton {
  display: none;
}
