.px-input-number {
  --input-number-size: var(--px-medium-size);
  z-index: 0;
  position: relative;
  background-color: transparent;
  border-color: transparent;
  border-width: var(--px-bit);
  border-style: solid;
  color: var(--px-neutral-10);
  display: flex;
  box-sizing: border-box;
  height: var(--input-number-size);
  transition: 0.25s;
  flex-grow: 1;
}
.px-input-number-inner {
  height: 100%;
  border: 0;
  background-color: transparent;
  box-sizing: border-box;
  width: 100%;
  line-height: 1.5;
  font-family: var(--px-font);
  padding: 0;
}
.px-input-number-inner:focus-visible {
  outline: none;
}
.px-input-number-inner:disabled {
  color: var(--px-neutral-10);
}
.px-input-number-inner::placeholder {
  color: var(--px-neutral-8);
  opacity: 1;
}
.px-input-number__large {
  --input-number-size: var(--px-large-size);
}
.px-input-number__small {
  --input-number-size: var(--px-small-size);
}
.px-input-number.px-input-number__small {
  padding-right: 8px;
  padding-left: 8px;
  font-size: 12px;
}
.px-input-number.px-input-number__small .px-input-number-inner {
  font-size: 12px;
}
.px-input-number.px-input-number__small.px-input-number__inner {
  padding-right: calc(8px + 1px + 1 * var(--px-bit));
}
.px-input-number.px-input-number__small.px-input-number__inner:last-child {
  padding-right: 8px;
}
.px-input-number.px-input-number__small .px-input-number-close-wrapper .px-input-number-icon-placeholder {
  width: 12px;
  height: 12px;
}
.px-input-number.px-input-number__small .px-input-number-close-wrapper .px-input-number-icon {
  width: 12px;
  height: 12px;
}
.px-input-number.px-input-number__small .px-input-number-setting-prefix-wrapper .px-input-number-icon,
.px-input-number.px-input-number__small .px-input-number-setting-suffix-wrapper .px-input-number-icon,
.px-input-number.px-input-number__small .px-input-number-loading-wrapper .px-input-number-icon {
  width: 12px;
  height: 12px;
}
.px-input-number.px-input-number__medium {
  padding-right: 8px;
  padding-left: 8px;
  font-size: 14px;
}
.px-input-number.px-input-number__medium .px-input-number-inner {
  font-size: 14px;
}
.px-input-number.px-input-number__medium.px-input-number__inner {
  padding-right: calc(8px + 1px + 1 * var(--px-bit));
}
.px-input-number.px-input-number__medium.px-input-number__inner:last-child {
  padding-right: 8px;
}
.px-input-number.px-input-number__medium .px-input-number-close-wrapper .px-input-number-icon-placeholder {
  width: 14px;
  height: 14px;
}
.px-input-number.px-input-number__medium .px-input-number-close-wrapper .px-input-number-icon {
  width: 14px;
  height: 14px;
}
.px-input-number.px-input-number__medium .px-input-number-setting-prefix-wrapper .px-input-number-icon,
.px-input-number.px-input-number__medium .px-input-number-setting-suffix-wrapper .px-input-number-icon,
.px-input-number.px-input-number__medium .px-input-number-loading-wrapper .px-input-number-icon {
  width: 14px;
  height: 14px;
}
.px-input-number.px-input-number__large {
  padding-right: 12px;
  padding-left: 12px;
  font-size: 15px;
}
.px-input-number.px-input-number__large .px-input-number-inner {
  font-size: 15px;
}
.px-input-number.px-input-number__large.px-input-number__inner {
  padding-right: calc(12px + 1px + 1 * var(--px-bit));
}
.px-input-number.px-input-number__large.px-input-number__inner:last-child {
  padding-right: 12px;
}
.px-input-number.px-input-number__large .px-input-number-close-wrapper .px-input-number-icon-placeholder {
  width: 15px;
  height: 15px;
}
.px-input-number.px-input-number__large .px-input-number-close-wrapper .px-input-number-icon {
  width: 15px;
  height: 15px;
}
.px-input-number.px-input-number__large .px-input-number-setting-prefix-wrapper .px-input-number-icon,
.px-input-number.px-input-number__large .px-input-number-setting-suffix-wrapper .px-input-number-icon,
.px-input-number.px-input-number__large .px-input-number-loading-wrapper .px-input-number-icon {
  width: 15px;
  height: 15px;
}
.px-input-number__disabled {
  cursor: not-allowed;
}
.px-input-number__disabled .px-input-number-inner:disabled {
  cursor: not-allowed;
  color: var(--px-neutral-8);
}
.px-input-number-setting-prefix-wrapper,
.px-input-number-setting-suffix-wrapper,
.px-input-number-prefix-wrapper,
.px-input-number-suffix-wrapper,
.px-input-number-loading-wrapper,
.px-input-number-close-wrapper {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.px-input-number-setting-prefix-wrapper,
.px-input-number-prefix-wrapper {
  margin-right: 8px;
}
.px-input-number-setting-suffix-wrapper,
.px-input-number-suffix-wrapper,
.px-input-number-loading-wrapper,
.px-input-number-close-wrapper {
  margin-left: 8px;
}
.px-input-number-close-wrapper .px-input-number-icon {
  cursor: pointer;
  fill: var(--px-neutral-8);
  transition: 0.25s;
}
.px-input-number-close-wrapper .px-input-number-icon:hover {
  fill: var(--px-neutral-7);
}
.px-input-number-close-wrapper .px-input-number-icon:active {
  fill: var(--px-neutral-9);
}
.px-input-number-loading-wrapper .px-input-number-icon {
  fill: var(--px-primary-6);
}
.px-input-number-prefix-wrapper,
.px-input-number-suffix-wrapper {
  color: var(--px-neutral-10);
}
.px-input-number-setting-prefix-wrapper .px-input-number-icon,
.px-input-number-setting-suffix-wrapper .px-input-number-icon {
  cursor: pointer;
  fill: var(--px-neutral-8);
  transition: 0.25s;
  margin-right: 8px;
}
.px-input-number-setting-prefix-wrapper .px-input-number-icon:hover,
.px-input-number-setting-suffix-wrapper .px-input-number-icon:hover {
  fill: var(--px-primary-6);
}
.px-input-number-setting-prefix-wrapper .px-input-number-icon:active,
.px-input-number-setting-suffix-wrapper .px-input-number-icon:active {
  fill: var(--px-neutral-9);
}
.px-input-number-setting-prefix-wrapper .px-input-number-icon:last-of-type,
.px-input-number-setting-suffix-wrapper .px-input-number-icon:last-of-type {
  margin-right: 0;
}
.px-input-number-setting-prefix-wrapper .px-input-number-icon.px-input-number-icon__disabled,
.px-input-number-setting-suffix-wrapper .px-input-number-icon.px-input-number-icon__disabled {
  cursor: not-allowed;
  fill: var(--px-neutral-7);
}
.px-input-number-setting-prefix-wrapper__reverse,
.px-input-number-setting-suffix-wrapper__reverse {
  flex-direction: row-reverse;
}
.px-input-number-setting-prefix-wrapper__reverse .px-input-number-icon,
.px-input-number-setting-suffix-wrapper__reverse .px-input-number-icon {
  margin-right: 0;
  margin-left: 8px;
}
.px-input-number-setting-prefix-wrapper__reverse .px-input-number-icon:last-of-type,
.px-input-number-setting-suffix-wrapper__reverse .px-input-number-icon:last-of-type {
  margin-right: 0;
  margin-left: 0;
}
.px-input-number-canvas {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  pointer-events: none;
}
