@keyframes loading-rotate {
  100% {
    transform: rotate(1turn);
  }
}
.ant-switch {
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  position: relative;
  align-self: center;
  min-width: 102rpx;
  height: 62rpx;
  border: 4rpx solid var(--switch-border-color, #e5e5e5);
  border-radius: 31rpx;
  background: #ffffff;
  overflow: hidden;
  line-height: 62rpx;
}
.ant-switch-checked {
  background: var(--switch-fill, #1677ff);
  border-color: var(--switch-fill, #1677ff);
}
.ant-switch-checked .ant-switch-handle {
  left: calc(100% - (62rpx - 2 * 4rpx));
}
.ant-switch-checked .ant-switch-inner {
  color: #ffffff;
  justify-content: flex-start;
}
.ant-switch-disabled {
  opacity: 0.4;
  pointer-events: none;
}
.ant-switch-readonly {
  pointer-events: none;
}
.ant-switch-loading {
  pointer-events: none;
}
.ant-switch-loading ant-icon {
  animation: loading-rotate 1s linear infinite;
  font-size: 10px;
  line-height: 1;
}
.ant-switch-loading-icon {
  font-size: 20rpx;
  color: var(--switch-loading-color, #1677ff);
}
.ant-switch-handle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 54rpx;
  height: 54rpx;
  border-radius: 50%;
  background: var(--switch-handle-bg, #ffffff);
  position: absolute;
  top: 0;
  left: 0;
  transition: all 200ms;
  box-shadow: 0 0 2px 0 var(--color-black-fade-20, rgba(0, 0, 0, 0.2)), 0 2px 11.5px 0 var(--color-black-fade-8, rgba(0, 0, 0, 0.08)), -1px 2px 2px 0 var(--color-black-fade-10, rgba(0, 0, 0, 0.1));
}
.ant-switch-inner {
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  color: var(--switch-inner-color, #999999);
  transition: margin 200ms;
  font-size: 30rpx;
  padding: 0 14rpx;
  min-width: 108rpx;
  box-sizing: border-box;
}
.ant-switch-inner:empty {
  display: none;
}
.ant-switch-small {
  min-width: 72rpx;
  height: 42rpx;
  border-radius: 21rpx;
}
.ant-switch-small .ant-switch-handle {
  width: 34rpx;
  height: 34rpx;
}
.ant-switch-small .ant-switch-inner {
  font-size: 16rpx;
  padding: 0 10rpx;
  min-width: 72rpx;
}
.ant-switch-small.ant-switch-checked .ant-switch-handle {
  left: calc(100% - (42rpx - 2 * 4rpx));
}
.ant-switch-x-small {
  min-width: 52rpx;
  height: 32rpx;
  border-radius: 16rpx;
}
.ant-switch-x-small .ant-switch-handle {
  width: 24rpx;
  height: 24rpx;
}
.ant-switch-x-small .ant-switch-inner {
  font-size: 10rpx;
  padding: 0 6rpx;
  min-width: 56rpx;
}
.ant-switch-x-small.ant-switch-checked .ant-switch-handle {
  left: calc(100% - (32rpx - 2 * 4rpx));
}
