/*!
 * @@persagy2/meri-design v1.4.9-extend.2
 * (c) 2019-2020 xiongshuang
 * Released under the MIT License.
 * 2022-12-07 10:33:25
 */
.p-modal-main-not-full
  border-radius: 4px

.p-modal-main-default
  width: 600px
  min-height: 288px

.p-modal-main-small
  width: 420px

.p-modal-main-middle
  width: 840px

.p-modal-main-large
  width: 1260px

.p-modal-main-full
  width: 100%

.p-modal-main-full .p-title-full-text
  width: 50%

.p-modal-main-full .p-left-handle
  display: flex
  align-items: center
  justify-content: flex-end
  padding-right: 16px
  width: 50%
  text-align: right
  vertical-align: middle

.p-modal-main-tip
  top: 120px
  left: 50%
  margin-left: -210px
  border-radius: 4px
  width: 420px

.p-modal-main-tip .p-modal-info-svg
  width: 24px
  height: 24px

.p-modal-main-tip .p-modal-info-svg svg
  width: 24px
  height: 24px

.p-modal-main-tip .p-modal-title
  border: 0

.p-modal-main-tip .p-modal-content
  width: calc(100% - 32px)
  min-height: auto

.p-modal-main-tip .p-modal-content .p-modal-content-main-text
  margin-top: 24px
  font-size: 14px
  color: $grey-900
  line-height: 22px

.p-modal-main-tip .p-modal-content .p-modal-content-main-text-has-title
  margin-top: 8px
  color: $grey-600

.p-modal-main-tip .p-modal-content .p-modal-content-main-text-no-title
  font-size: 16px

.p-modal-main-tip-svg
  position: relative

.p-modal-main-tip-svg .p-modal-info-svg
  position: absolute
  top: 24px
  left: 32px

.p-modal-main-tip-svg .p-modal-title
  padding-top: 8px
  padding-left: 72px

.p-modal-main-tip-svg .p-modal-content
  padding-left: 72px

.p-loading16px
  display: inline-block
  width: 100%
  height: 100%
  line-height: 100%
  text-align: center

.p-loading16px .p-loading16px-line
  width: 100%
  height: 100%
  min-width: 12px
  min-height: 12px
  animation: loading16px .5s linear infinite

@keyframes loading16px
  0%
    transform: rotate(0)
  100%
    transform: rotate(360deg)
@keyframes loading16px
  0%
    transform: rotate(0)
  100%
    transform: rotate(360deg)
@keyframes loading16px
  0%
    transform: rotate(0)
  100%
    transform: rotate(360deg)
@keyframes loading16px
  0%
    transform: rotate(0)
  100%
    transform: rotate(360deg)
.p-icon
  text-align: center
  cursor: pointer
  font-size: 0

.p-icon + .p-icon
  margin-left: 8px

.p-icon svg
  vertical-align: middle

.p-icon svg path
  transition: fill .3s

.p-button
  position: relative
  display: inline-flex
  align-items: center
  justify-content: center
  padding-left: 8px
  padding-right: 8px
  background-color: $theme
  border-width: 1px
  border-style: solid
  border-radius: 4px
  transition: all .36s
  font-size: 0
  text-align: center

.p-button:after
  content: ''
  color: transparent

.p-button:before
  content: ''
  color: transparent

.p-button+.p-button
  margin-left: 12px

.p-button .p-btn-text
  overflow: hidden
  white-space: nowrap
  text-overflow: ellipsis
  position: relative
  z-index: 1
  user-select: none

.p-button .p-button-loading
  display: inline-block
  margin-left: 4px
  vertical-align: middle

.p-button-large
  max-width: 128px
  min-width: 80px
  height: 40px
  line-height: 38px

.p-button-large .p-btn-text
  font-size: 16px

.p-button-large .p-button-loading
  width: 20px
  height: 20px

.p-button-medium
  max-width: 116px
  min-width: 80px
  height: 32px
  line-height: 30px

.p-button-medium .p-btn-text
  font-size: 14px

.p-button-medium .p-button-loading
  width: 16px
  height: 16px

.p-button-small
  max-width: 108px
  min-width: 60px
  height: 28px
  line-height: 26px

.p-button-small .p-btn-text
  font-size: 14px

.p-button-small .p-button-loading
  width: 12px
  height: 12px

.p-button-default,
.p-button-icon-text
  background-color: $theme
  border-color: $grey-400
  color: $grey-900
  cursor: pointer

.p-button-default .p-button-loading path,
.p-button-icon-text .p-button-loading path
  fill: $grey-900

.p-button-default:hover,
.p-button-icon-text:hover
  border-color: $blue-500
  color: $blue-500

.p-button-default:active,
.p-button-icon-text:active
  border-color: $blue-600
  color: $blue-600

.p-button-default::after,
.p-button-icon-text::after
  background: radial-gradient(circle,$grey-200 10%,transparent 10%)

.p-button-default .loading path,
.p-button-icon-text .loading path
  stroke: $grey-400

.p-button-primary
  background-color: $blue-500
  border-color: $blue-500
  color: $white
  cursor: pointer

.p-button-primary:hover
  background-color: $blue-400
  border-color: $blue-400

.p-button-primary:active
  background-color: $blue-600
  border-color: $blue-600

.p-button-primary::after
  background: radial-gradient(circle,$blue-300 10%,transparent 10%)

.p-button-error
  background-color: $red-500
  border-color: $red-500
  color: $white
  cursor: pointer

.p-button-error:hover
  background-color: $red-400
  border-color: $red-400

.p-button-error:active
  background-color: $red-600
  border-color: $red-600

.p-button-error::after
  background: radial-gradient(circle,$red-300 10%,transparent 10%)

.p-button-disabled,
.p-button-default-disabled,
.p-button-primary-disabled,
.p-button-error-disabled
  background-color: $grey-200
  color: $grey-400
  cursor: not-allowed
  border-color: $grey-200

.p-button-disabled:hover,
.p-button-default-disabled:hover,
.p-button-primary-disabled:hover,
.p-button-error-disabled:hover
  background-color: $grey-200
  border-color: $grey-200
  color: $grey-400

.p-button-disabled:active,
.p-button-default-disabled:active,
.p-button-primary-disabled:active,
.p-button-error-disabled:active
  background-color: $grey-200
  border-color: $grey-200
  color: $grey-400

.p-button-text-blue
  border-style: none
  color: $blue-500
  cursor: pointer

.p-button-text-blue:hover
  color: $blue-500

.p-button-text-blue:active
  color: $blue-600

.p-button-text-red
  border-style: none
  color: $red-500
  cursor: pointer

.p-button-text-red:hover
  color: $red-400

.p-button-text-red:active
  color: $red-600

.min-size
  min-width: 0

.p-button-icon,
.p-button-icon-border
  border-color: $grey-400
  padding: 0
  cursor: pointer

.p-button-icon path,
.p-button-icon-border path
  fill: $grey-900
  transition: all .36s

.p-button-icon .p-icon svg,
.p-button-icon-border .p-icon svg
  width: 100% !important
  height: 100% !important

.p-button-icon
  border-color: transparent

.p-button-icon:hover
  color: $blue-500

.p-button-icon:hover path
  fill: $blue-500

.p-button-icon:active
  color: $blue-600

.p-button-icon:active path
  fill: $blue-600

.p-button-icon::after
  color: $blue-500

.p-button-icon::after path
  fill: $blue-500

.p-button-icon-border:hover
  border-color: $blue-500
  color: $blue-500

.p-button-icon-border:hover path
  fill: $blue-500

.p-button-icon-border:active
  border-color: $blue-600
  color: $blue-600

.p-button-icon-border:active path
  fill: $blue-600

.p-button-icon-border::after
  border-color: $blue-500
  color: $blue-500

.p-button-icon-border::after path
  fill: $blue-500

.p-button-icon.p-button-large,
.p-button-icon-border.p-button-large
  width: 40px
  min-width: 40px

.p-button-icon.p-button-large .p-icon,
.p-button-icon-border.p-button-large .p-icon
  width: 24px
  height: 24px
  line-height: 24px

.p-button-icon.p-button-medium,
.p-button-icon-border.p-button-medium
  width: 32px
  min-width: 32px

.p-button-icon.p-button-medium .p-icon,
.p-button-icon-border.p-button-medium .p-icon
  width: 16px
  height: 16px
  line-height: 16px

.p-button-icon.p-button-small,
.p-button-icon-border.p-button-small
  width: 28px
  min-width: 28px

.p-button-icon.p-button-small .p-icon,
.p-button-icon-border.p-button-small .p-icon
  width: 12px
  height: 12px
  line-height: 12px

.p-button-icon-text
  border-color: transparent

.p-button-icon-text:hover
  border-color: transparent

.p-button-icon-text path
  fill: $grey-900
  transition: all .36s

.p-button-icon-text:hover
  color: $blue-500

.p-button-icon-text:hover path
  fill: $blue-500

.p-button-icon-text:active
  color: $blue-600

.p-button-icon-text:active path
  fill: $blue-600

.p-button-icon-text::after
  color: $blue-500

.p-button-icon-text::after path
  fill: $blue-500

.p-button-icon-text .p-icon
  margin-right: 4px

.p-button-icon-text .p-icon svg
  width: 100% !important
  height: 100% !important

.p-button-icon-text.p-button-large .p-icon
  width: 20px
  height: 20px
  line-height: 20px

.p-button-icon-text.p-button-medium .p-icon
  width: 16px
  height: 16px
  line-height: 16px

.p-button-icon-text.p-button-small .p-icon
  width: 12px
  height: 12px
  line-height: 12px

.p-button-icon-border-disabled
  background-color: $grey-200
  color: $grey-400
  cursor: not-allowed
  border-color: $grey-200

.p-button-icon-border-disabled svg
  cursor: not-allowed

.p-button-icon-border-disabled svg path
  fill: $grey-400

.p-button-icon-border-disabled:hover
  border-color: $grey-200

.p-button-icon-border-disabled:hover path
  fill: $grey-400

.p-button-icon-disabled
  color: $grey-400
  cursor: not-allowed

.p-button-icon-disabled svg
  cursor: not-allowed

.p-button-icon-disabled svg path
  fill: $grey-400

.p-button-icon-disabled:hover path
  fill: $grey-400

.p-button-icon-text-disabled
  color: $grey-400
  cursor: not-allowed

.p-button-icon-text-disabled svg
  cursor: not-allowed

.p-button-icon-text-disabled svg path
  fill: $grey-400

.p-button-icon-text-disabled:hover
  color: $grey-400

.p-button-icon-text-disabled:hover path
  fill: $grey-400

.p-button-text
  border-color: transparent
  cursor: pointer
  color: $grey-900

.p-button-text:hover
  color: $blue-500
  border-color: transparent

.p-button-text:active
  color: $blue-600

.p-button-text-disabled,
.p-button-text-blue-disabled,
.p-button-text-red-disabled
  cursor: not-allowed
  color: $grey-400

.p-button-text-disabled:hover,
.p-button-text-blue-disabled:hover,
.p-button-text-red-disabled:hover
  color: $grey-400

.opacityInUiOut-enter-active
  animation: opacityInUi .3s ease-out

.opacityInUiOut-leave-active
  animation: opacityOutUi .3s ease-in

@keyframes opacityInUi
  from
    opacity: 0
  to
    opacity: 1
@keyframes opacityInUi
  from
    opacity: 0
  to
    opacity: 1
@keyframes opacityInUi
  from
    opacity: 0
  to
    opacity: 1
@keyframes opacityInUi
  from
    opacity: 0
  to
    opacity: 1
@keyframes opacityOutUi
  from
    opacity: 1
  to
    opacity: 0
@keyframes opacityOutUi
  from
    opacity: 1
  to
    opacity: 0
@keyframes opacityOutUi
  from
    opacity: 1
  to
    opacity: 0
@keyframes opacityOutUi
  from
    opacity: 1
  to
    opacity: 0
.bounceInUiOut-enter-active
  animation: bounceInUi .3s ease-out

.bounceInUiOut-leave-active
  animation: bounceOutUi .3s ease-in

@keyframes bounceInUi
  from
    opacity: 0
    transform: translate3d(0,24px,0)
  to
    opacity: 1
    transform: translate3d(0,0,0)
@keyframes bounceInUi
  from
    opacity: 0
    transform: translate3d(0,24px,0)
  to
    opacity: 1
    transform: translate3d(0,0,0)
@keyframes bounceInUi
  from
    opacity: 0
    transform: translate3d(0,24px,0)
  to
    opacity: 1
    transform: translate3d(0,0,0)
@keyframes bounceInUi
  from
    opacity: 0
    transform: translate3d(0,24px,0)
  to
    opacity: 1
    transform: translate3d(0,0,0)
@keyframes bounceOutUi
  from
    opacity: 1
    transform: translate3d(0,0,0)
  to
    opacity: 0
    transform: translate3d(0,24px,0)
@keyframes bounceOutUi
  from
    opacity: 1
    transform: translate3d(0,0,0)
  to
    opacity: 0
    transform: translate3d(0,24px,0)
@keyframes bounceOutUi
  from
    opacity: 1
    transform: translate3d(0,0,0)
  to
    opacity: 0
    transform: translate3d(0,24px,0)
@keyframes bounceOutUi
  from
    opacity: 1
    transform: translate3d(0,0,0)
  to
    opacity: 0
    transform: translate3d(0,24px,0)
.bounceInUiOutScale-enter-active
  animation: bounceInUiScale .3s ease-out

.bounceInUiOutScale-leave-active
  animation: bounceOutUiScale .3s ease-in

@keyframes bounceInUiScale
  from
    opacity: 0
    transform: scale(.9)
  to
    opacity: 1
    transform: scale(1)
@keyframes bounceInUiScale
  from
    opacity: 0
    transform: scale(.9)
  to
    opacity: 1
    transform: scale(1)
@keyframes bounceInUiScale
  from
    opacity: 0
    transform: scale(.9)
  to
    opacity: 1
    transform: scale(1)
@keyframes bounceInUiScale
  from
    opacity: 0
    transform: scale(.9)
  to
    opacity: 1
    transform: scale(1)
@keyframes bounceOutUiScale
  from
    opacity: 1
    transform: scale(1)
  to
    opacity: 0
    transform: scale(.9)
@keyframes bounceOutUiScale
  from
    opacity: 1
    transform: scale(1)
  to
    opacity: 0
    transform: scale(.9)
@keyframes bounceOutUiScale
  from
    opacity: 1
    transform: scale(1)
  to
    opacity: 0
    transform: scale(.9)
@keyframes bounceOutUiScale
  from
    opacity: 1
    transform: scale(1)
  to
    opacity: 0
    transform: scale(.9)
.p-modal-bg
  position: fixed
  left: 0
  top: 0
  background-color: $theme-transparency
  width: 100%
  height: 100%
  z-index: 5000

.p-modal-main
  position: fixed
  background-color: $theme
  box-shadow: $modal-shadow-bottom
  z-index: 5000

.p-modal-main-full
  top: 0
  left: 0
  width: 100%
  height: 100%

.p-modal-main-max
  top: 60px

.p-modal-title
  position: relative
  display: flex
  justify-content: space-between
  padding-left: 32px
  padding-right: 28px
  border-bottom: 1px solid $grey-300
  width: 100%
  height: 56px

.p-modal-title .p-title-text
  max-width: calc(100% - 80px)
  line-height: 55px
  color: $grey-900
  font-size: 16px
  font-weight: 600
  overflow: hidden
  text-overflow: ellipsis
  white-space: nowrap

.p-modal-title .p-modal-title-icon
  display: inline-block
  width: 16px
  height: 55px
  line-height: 55px

.p-modal-title .p-modal-title-icon svg
  vertical-align: middle
  cursor: pointer

.p-modal-title .p-modal-title-icon svg:hover path
  fill: $blue-500
  transition: fill .36s

.p-modal-content
  width: 100%
  overflow-y: auto

.p-modal-content-full
  max-height: calc(100vh - 56px)

.p-modal-content-max-height
  max-height: calc(100vh - 252px)

.p-modal-content-default
  min-height: 156px

.p-modal-content-middle
  min-height: 360px

.p-modal-content-small
  min-height: 77px

.p-modal-handle
  padding: 24px 32px 20px
  width: 100%
  text-align: right
  font-size: 0

.p-modal-handle-shadow
  box-shadow: $box-shadow-top

