#keyboardInputMaster {
  position: absolute;
  font: normal 12px Arial, sans-serif;
  background: #ddd;
  border: 1px solid #888;
  border-radius: 0.5em;
  box-shadow: 0 2px 10px #444;
  z-index: 1000000;
  opacity: 0.97;
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
}

#keyboardInputMaster .mk-header {
  background: #999;
  padding: 0.25em 0.4em;
  border-radius: 0.5em 0.5em 0 0;
  text-align: right;
  white-space: nowrap;
}

#keyboardInputMaster .mk-header .mk-btn,
#keyboardInputMaster .mk-header strong {
  display: inline-block;
  padding: 0 0.45em;
  height: 1.5em;
  line-height: 1.5em;
  background: #ccc;
  border-top: 1px solid #e5e5e5;
  border-right: 1px solid #5d5d5d;
  border-bottom: 1px solid #5d5d5d;
  border-left: 1px solid #e5e5e5;
  border-radius: 0.3em;
  cursor: pointer;
  margin-left: 0.3em;
  color: #000;
  font: normal 11px Arial, sans-serif;
}

#keyboardInputMaster .mk-header strong {
  font-weight: bold;
}

#keyboardInputMaster .mk-header .mk-btn:hover,
#keyboardInputMaster .mk-header strong:hover {
  background: #bbb;
}

#keyboardInputMaster .mk-body {
  padding: 0.25em 0.4em;
}

#keyboardInputMaster .mk-row {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  margin: 2px 0;
  white-space: nowrap;
}

#keyboardInputMaster .mk-lang {
  display: inline-block;
  font-size: 10px;
  font-weight: bold;
  color: #555;
  min-width: 2.8em;
  text-align: right;
  padding-right: 0.35em;
  flex-shrink: 0;
}

#keyboardInputMaster .mk-divider {
  display: inline-block;
  width: 1px;
  min-height: 1.4em;
  background: #aaa;
  margin: 0 0.3em;
  flex-shrink: 0;
  align-self: stretch;
}

#keyboardInputMaster .mk-key {
  display: inline-block;
  font-family: 'Arial Unicode MS', 'Lucida Console', monospace;
  font-size: 12px;
  padding: 0 0.3em;
  height: 1.7em;
  line-height: 1.7em;
  margin: 1px;
  background: #eee;
  border-top: 1px solid #e5e5e5;
  border-right: 1px solid #5d5d5d;
  border-bottom: 1px solid #5d5d5d;
  border-left: 1px solid #e5e5e5;
  border-radius: 0.2em;
  cursor: pointer;
  min-width: 1.1em;
  text-align: center;
  color: #000;
  flex-shrink: 0;
}

#keyboardInputMaster .mk-key:hover {
  background: #ccc;
}

#keyboardInputMaster .mk-key:active {
  border-top-color: #555;
  border-left-color: #555;
  border-right-color: #d5d5d5;
  border-bottom-color: #d5d5d5;
  background: #bbb;
}

#keyboardInputMaster .mk-footer {
  text-align: center;
  padding: 0.2em 0.4em 0.35em;
  border-top: 1px solid #bbb;
}

#keyboardInputMaster .mk-footer .mk-btn {
  display: inline-block;
  padding: 0 0.7em;
  height: 1.6em;
  line-height: 1.6em;
  background: #ccc;
  border-top: 1px solid #e5e5e5;
  border-right: 1px solid #5d5d5d;
  border-bottom: 1px solid #5d5d5d;
  border-left: 1px solid #e5e5e5;
  border-radius: 0.3em;
  cursor: pointer;
  margin: 0 0.25em;
  color: #000;
  font: normal 11px Arial, sans-serif;
}

#keyboardInputMaster .mk-footer .mk-btn:hover { background: #bbb; }

#keyboardInputMaster .mk-footer .mk-btn:active {
  border-top-color: #555;
  border-left-color: #555;
  border-right-color: #d5d5d5;
  border-bottom-color: #d5d5d5;
}

#keyboardInputMaster .mk-footer .mk-space {
  min-width: 4em;
}

.keyboardInputInitiator {
  margin: 0 3px;
  vertical-align: middle;
  cursor: pointer;
}
