/* [BACKGROUND] */
#numpad-back {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  visibility: hidden;
  opacity: 0;
  transition: 0.1s;
  z-index:50;
}
#numpad-back.show {
  visibility: visible;
  opacity: 1;
}

/* [NUMPAD] */

#numpad-wrap {
    max-width: 420px;
    margin: 70px auto;
    padding: 10px;
    background: #ddd;
    border: 1px solid #000;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* [NUMBER DISPLAY] */
#numpad-display {
    box-sizing: border-box;
    width: 100%;
    padding: 5px;
    font-size: 3em;
    text-align: center;
    margin-bottom: 10px;
}

/* [NUMBER BUTTONS] */
#numpad-btns {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.numpad-btn {
  box-sizing: border-box;
  width: 25%;
  padding: 10px;
  border: 1px solid #aaa;
  background: #fff;
  color: #000;
  text-align: center;
  font-size: 3em;
}
.numpad-btn.zero {
  width: 50%;
}
.numpad-btn.zeroN {
  width: 75%;
}
.numpad-btn.ninja {
  display: none;
}
.numpad-btn.ng {
  background: #333;
  color:#fff;
}
.numpad-btn.cx {
  background: #B23025;
  border: 1px solid #C73D32;
  color:#fff;
}
.numpad-btn.ok {
  background: #1FA83A;
  border: 1px solid #1FC72D;
  color:#fff;
}
.numpad-btn:hover {
  cursor: pointer;
}