.buttonWrapper {
  position: relative;
}

.button {
  position: relative;
  cursor: pointer;

  background: var(--fg-color);
  color: var(--bg-color);

  border: 1px solid transparent;
  box-shadow: 0 4px 4px 0 #00000010;
  transition-property: color, background-color, box-shadow;
  transition-duration: 0.15s;
  transition-timing-function: ease;
  padding: 12px 24px;
  line-height: 1.5em;
  border-radius: 5px;
  max-width: 100%;
  font-weight: 400;
  font-size: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  user-select: none;
  outline: none;
}

.buttonContent {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
}

.button:hover,
.button:focus {
  border-color: var(--fg-color);
  background-color: var(--bg-color);
  color: var(--fg-color);
}

.button:active {
  background-color: var(--bg-color-1);
}

.buttonWrapper:has(.button:disabled) {
  opacity: 0.3;
  cursor: not-allowed;
}

.buttonWrapper:has(.button:disabled) * {
  pointer-events: none;
}
