:root {
  --point-coin-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='7' y1='5' x2='34' y2='36' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23fff3a1'/%3E%3Cstop offset='.42' stop-color='%23ffc83d'/%3E%3Cstop offset='1' stop-color='%23d88a00'/%3E%3C/linearGradient%3E%3ClinearGradient id='h' x1='12' y1='10' x2='30' y2='31' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23fff7c9'/%3E%3Cstop offset='1' stop-color='%23f0aa16'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='20' cy='20' r='18' fill='url(%23g)' stroke='%23a86600' stroke-width='2'/%3E%3Ccircle cx='20' cy='20' r='13' fill='url(%23h)' stroke='%23c27b00' stroke-width='1.5'/%3E%3Cpath d='M15 12h7.2c4 0 6.6 2.2 6.6 5.8 0 3.8-2.6 6-6.8 6h-2.8V29H15V12Zm4.2 3.6v4.7h2.7c1.8 0 2.8-.8 2.8-2.4 0-1.5-1-2.3-2.8-2.3h-2.7Z' fill='%23825600'/%3E%3Ccircle cx='8.3' cy='14' r='1.3' fill='%23fff8c9'/%3E%3Ccircle cx='31.4' cy='25.8' r='1.2' fill='%23a86600'/%3E%3C/svg%3E");
}

.show-generation-cost-badges #points::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  vertical-align: -4px;
  background: var(--point-coin-icon) center / contain no-repeat;
  filter: drop-shadow(0 2px 2px rgba(126, 81, 0, 0.2));
}

button[data-generation-cost]::after {
  content: attr(data-generation-cost);
  display: inline-block;
  box-sizing: border-box;
  margin-left: 8px;
  padding: 3px 8px 3px 27px;
  border: 1px solid rgba(210, 146, 16, 0.62);
  border-radius: 999px;
  color: #765000;
  background-color: rgba(255, 248, 215, 0.96);
  background-image: var(--point-coin-icon);
  background-position: 6px center;
  background-repeat: no-repeat;
  background-size: 17px 17px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75),
    0 2px 6px rgba(123, 82, 0, 0.12);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
  white-space: nowrap;
  vertical-align: 1px;
}

button[data-generation-cost]:disabled::after {
  opacity: 0.72;
  filter: grayscale(0.18);
}

.bm-generation-cost-display {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto auto minmax(120px, auto);
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  border: 1px solid rgba(69, 116, 102, 0.24);
  border-radius: 12px;
  background: rgba(239, 249, 246, 0.85);
}

.bm-generation-cost-display b,
.bm-generation-cost-display small {
  display: block;
}

.bm-generation-cost-display small {
  margin-top: 3px;
  color: #61766f;
}

.bm-generation-cost-display button {
  padding: 9px 14px;
  border: 1px solid #75aa9a;
  border-radius: 9px;
  color: #174f41;
  background: #fff;
  cursor: pointer;
}

.bm-generation-cost-display em {
  color: #397361;
  font-style: normal;
}

.bm-switch {
  position: relative;
  display: inline-flex;
  width: 48px;
  height: 26px;
}

.bm-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.bm-switch span {
  width: 100%;
  border-radius: 999px;
  background: #aabcb7;
  cursor: pointer;
  transition: 0.18s ease;
}

.bm-switch span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 5px rgba(17, 61, 49, 0.28);
  transition: 0.18s ease;
}

.bm-switch input:checked + span {
  background: #087d61;
}

.bm-switch input:checked + span::after {
  transform: translateX(22px);
}

@media (max-width: 760px) {
  button[data-generation-cost]::after {
    margin-left: 5px;
    padding-right: 6px;
    font-size: 11px;
  }
  .bm-generation-cost-display {
    grid-template-columns: 1fr auto;
  }
  .bm-generation-cost-display button,
  .bm-generation-cost-display em {
    grid-column: 1 / -1;
  }
}
