.bcm,
.bcm *,
.bcm *::before,
.bcm *::after {
  box-sizing: border-box;
}
.bcm {
  isolation: isolate;
  font-family: "Plus Jakarta Sans", "Segoe UI", Arial, sans-serif !important;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: normal;
  text-transform: none;
}
.bcm button {
  all: unset;
  box-sizing: border-box !important;
  font-family: inherit !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}
.bcm button:focus-visible {
  outline: 3px solid #fff !important;
  outline-offset: 3px !important;
}
.bcm button:active {
  transform: translateY(2px) scale(0.98);
}
.bcm .bcm-sound-toggle {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  border: 1px solid #ffffff55 !important;
  border-radius: 50% !important;
  background: #160c3d88 !important;
  color: #fff !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  box-shadow:
    inset 0 1px #ffffff40,
    0 7px 18px #0004 !important;
}
.bcm-modal button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 170px !important;
  min-height: 48px !important;
  margin: 12px auto 8px !important;
  padding: 10px 24px !important;
  border: 1px solid #ffbed5 !important;
  border-bottom: 4px solid #ad2854 !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #ff83af, #f53f79) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-shadow: 0 2px #9c2350 !important;
  box-shadow:
    0 10px 24px #e8387c55,
    inset 0 1px #fff8 !important;
}
.bcm .bcm-controls button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 36px !important;
  padding: 7px 9px !important;
  border-radius: 10px !important;
  background: #ffffff08 !important;
  color: #c8c1e6 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}
.bcm .bcm-controls button:hover {
  background: #ffffff14 !important;
  color: #fff !important;
}
.bcm h1,
.bcm h2,
.bcm p,
.bcm small,
.bcm b,
.bcm span {
  font-family: inherit !important;
}
.bcm-board-wrap {
  contain: layout paint style;
}
.bcm button[disabled] {
  cursor: not-allowed !important;
  pointer-events: none !important;
}
.bcm-map button {
  all: unset;
  box-sizing: border-box !important;
  font-family: inherit !important;
  cursor: pointer !important;
}
.bcm-map-head > button {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #ffffff4d !important;
  border-bottom: 1px solid #ffffff4d !important;
  border-radius: 50% !important;
  background: #1d1743cc !important;
  color: #fff !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  box-shadow:
    inset 0 1px #ffffff40,
    0 7px 18px #0004 !important;
}
.bcm-levels > button {
  display: grid !important;
  place-items: center !important;
  min-width: 0 !important;
  min-height: 64px !important;
  padding: 7px 3px !important;
  border: 1px solid #ffffff2e !important;
  border-bottom: 4px solid #37245f !important;
  border-radius: 15px !important;
  background: linear-gradient(180deg, #7050c4, #473180) !important;
  color: #fff !important;
  text-align: center !important;
  box-shadow:
    0 8px 13px #0b06294d,
    inset 0 1px #ffffff59 !important;
}
.bcm-levels > button.current {
  border-color: #ffed8c !important;
  border-bottom-color: #bd7130 !important;
  background: linear-gradient(180deg, #ffc967, #f28d43) !important;
  box-shadow:
    0 0 0 3px #fff3,
    0 10px 22px #ff9f4659,
    inset 0 1px #fff9 !important;
}
.bcm-levels > button[disabled] {
  opacity: 0.42 !important;
  filter: saturate(0.3) !important;
}
.bcm-levels > button b {
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}
.bcm-levels > button small {
  margin-top: 4px !important;
  color: #ffe8a3 !important;
  font-size: 7px !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
}
@media (max-width: 430px) {
  .bcm .bcm-controls button {
    font-size: 11px !important;
    padding-inline: 7px !important;
  }
  .bcm-modal button {
    min-height: 44px !important;
    margin: 10px auto 6px !important;
    padding: 9px 20px !important;
    font-size: 14px !important;
  }
  .bcm-map-head > button {
    min-height: 42px !important;
  }
}
