@import 'pure-min.css';
.font-normal {
  font-family: 'Lato', Helvetica, Arial, sans-serif, 'Microsoft YaHei UI';
}
.font-number {
  font-family: 'Raleway', 'Lato', Helvetica, Arial, sans-serif, 'Microsoft YaHei UI';
}
html {
  font-family: 'Lato', Helvetica, Arial, sans-serif, 'Microsoft YaHei UI';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: white;
  height: 100%;
  width: 100%;
  overflow: hidden;
  user-select: none;
  background-color: #444;
}
body {
  height: 100%;
  width: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  background-color: #444;
}
#app {
  height: 100%;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  margin: 0;
  padding: 0;
  background-color: #444;
}
.scoreboard {
  max-width: 200px;
  margin: 20px auto;
}
.scoreboard .desc,
.scoreboard .name {
  margin: 10px 0;
}
.scoreboard .name {
  text-transform: capitalize;
  text-align: left;
  line-height: 20px;
}
.scoreboard .desc {
  text-align: right;
}
.scoreboard .desc .score {
  font-family: 'Raleway', 'Lato', Helvetica, Arial, sans-serif, 'Microsoft YaHei UI';
  font-size: 20px;
}
.scoreboard .desc .text {
  font-size: 12px;
  opacity: .6;
  margin-left: 6px;
}
.menu.centered {
  text-align: center;
  margin: 0 auto;
  position: relative;
  top: 30%;
  transform: perspective(1px) translateY(-50%);
}
.menu h1 {
  font-family: 'Raleway', 'Lato', Helvetica, Arial, sans-serif, 'Microsoft YaHei UI';
  letter-spacing: 8px;
}
.footer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 20px 30px;
  text-align: center;
  font-size: 14px;
}
.footer a {
  color: rgba(255, 255, 255, 0.1);
  text-decoration: none;
  transition: 0.3s ease-in-out;
}
.footer a:hover {
  color: rgba(255, 255, 255, 0.5);
}
.button {
  border-bottom: 1px solid #fff;
  display: inline-block;
  transition: 0.3s ease-in-out;
  padding: 5px 18px;
  margin: 5px;
  cursor: pointer;
  opacity: .5;
  color: #fff;
  text-decoration: none;
}
.button:hover:not(.disabled) {
  opacity: 1;
}
.button.disabled {
  opacity: .3;
  cursor: default;
}
.button.block {
  display: block;
  max-width: 180px;
  margin: 10px auto;
  text-align: left;
  padding: 10px 0;
}
.button.borderless {
  border: 0;
}
.button .text,
.button i {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
}
.button i {
  opacity: .7;
}
.buttons {
  text-align: center;
  margin: 10px;
}
.button.big,
.buttons.big .button {
  font-size: 1.5em;
}
.corner {
  background: rgba(255, 255, 255, 0.1);
  width: 120px;
  height: 120px;
  position: absolute;
  bottom: -40px;
  border-radius: 120px;
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.3);
  transition: 0.3s ease-in-out;
  -webkit-tap-highlight-color: transparent;
}
.corner.left {
  left: -40px;
  text-align: right;
}
.corner.right {
  right: -40px;
  text-align: left;
}
.corner.center {
  text-align: center;
  left: calc(50% - 60px);
  bottom: -50px;
}
.corner.small {
  transform: scale(0.4, 0.4);
}
.corner.small .mi {
  margin: 15px;
  font-size: 4em;
}
.corner.medium {
  width: 60px;
  height: 60px;
}
.corner.medium .mi {
  margin: 10px;
  font-size: 40px;
}
.corner.fixed {
  position: fixed;
  text-align: center;
}
.corner.disabled {
  opacity: .3;
  transform: scale(0.75, 0.75);
  background: rgba(255, 255, 255, 0.06);
  cursor: default;
}
.corner.disabled .mi {
  opacity: .4;
}
.corner .mi {
  margin: 25px;
  font-size: 3em;
  opacity: .8;
}
.toolbar {
  position: absolute;
  text-align: center;
  width: 300px;
  height: 50px;
  left: calc(50% - 150px);
  bottom: 0;
  -webkit-tap-highlight-color: transparent;
}
.toolbar .title {
  font-size: 10px;
  margin-bottom: 6px;
  opacity: .2;
}
.toolbar .mi {
  position: relative;
  font-size: 1.5em;
  opacity: .3;
  cursor: pointer;
  margin: 0 8px;
  transition: opacity 0.3s ease-in-out;
}
.toolbar .mi label {
  font-family: monospace;
  position: absolute;
  left: 22px;
  top: 0;
  font-size: 12px;
}
.toolbar .mi:hover:not(.disabled) {
  opacity: .6;
}
.toolbar .mi.disabled {
  opacity: .1;
  cursor: default;
}
.modal {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.9);
  overflow: hidden;
}
.modal .centered {
  text-align: center;
  margin: 0 auto;
  position: relative;
  top: 30%;
  transform: perspective(1px) translateY(-50%);
}
.modal .filled {
  width: 100%;
  height: 100%;
  border: 0;
}
.modal .close {
  position: fixed;
  top: 5px;
  right: 5px;
  padding: 10px;
  cursor: pointer;
}
blockquote {
  margin-left: 0;
  padding: 0 1em;
  border-left: .25em solid #afafaf;
  opacity: .8;
}
@media only screen and (min-width: 950px) and (max-width: 1129px), only screen and (min-width: 1129px) {
  .tooltip:hover:before {
    top: -34px;
    opacity: 1;
  }
  .tooltip:hover:after {
    top: -10px;
    opacity: 1;
  }
  .tooltip:before {
    font-family: 'Lato', Helvetica, Arial, sans-serif, 'Microsoft YaHei UI';
    position: absolute;
    top: -30px;
    left: -24px;
    background: #ffffff;
    width: 80px;
    font-size: 14px;
    padding: 5px 0;
    border-radius: 3px;
    color: #222;
    content: attr(data-tooltip);
    opacity: 0;
    transition: .3s;
  }
  .tooltip:after {
    position: absolute;
    width: 0;
    height: 0;
    top: -6px;
    right: 6px;
    border-top: 6px solid #ffffff;
    border-right: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    content: "";
    opacity: 0;
    transition: .3s;
  }
}
.scaler {
  padding: 50px;
  margin: 0 auto;
  position: relative;
  top: 50%;
  transition: 0.3s ease-in-out;
  transform: perspective(1px) translateY(-50%);
}
.scaler.disabled {
  opacity: .6;
  pointer-events: none;
}
svg.board {
  display: block;
  overflow: visible;
  transform-origin: top left;
}
g.hex {
  pointer-events: visiblePainted;
  transition: 0.2s ease-in-out;
  opacity: .9;
}
g.hex polygon {
  fill: #f4f4f1;
  stroke: #c7c7c7;
  stroke-width: 1;
  transition: 0.2s ease-in-out;
}
g.hex text {
  font-size: 20px;
  text-anchor: middle;
  transform: translate(0, 7px);
}
g.hex.disabled,
g.hex:hover {
  opacity: 1;
}
svg.current {
  position: fixed;
  height: 100px;
  width: 86.6px;
  bottom: 30px;
  right: 30px;
  overflow: visible;
}
svg.current polygon {
  stroke: #444;
  stroke-width: 3px;
  transition: 0.2s ease-in-out;
}
.cursor {
  position: absolute;
  top: -1000px;
  left: -1000px;
}
.cursor svg {
  transform-origin: left top;
  transform: scale(0.3, 0.3);
  opacity: 1;
}
.cursor svg polygon {
  stroke: #5e5e5e;
  stroke-width: 2;
}
/* =============== Material Icons =============== */
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: local('Material Icons'), local('MaterialIcons-Regular'), url('icons/MaterialIcons-Regular.woff2') format('woff2'), url('icons/MaterialIcons-Regular.woff') format('woff'), url('icons/MaterialIcons-Regular.ttf') format('truetype');
}
.material-icons,
.mi,
mi {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;
  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;
  /* Support for IE. */
  font-feature-settings: 'liga';
}
