.fes-modal {
  margin: 0;
  padding: 0;
  outline: none;
  color: var(--f-text-color);
  font-size: var(--f-font-size-base);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
  font-variant: tabular-nums;
  line-height: 22px;
  font-feature-settings: 'tnum';
}
.fes-modal-open {
  position: fixed;
  overflow: hidden;
}
.fes-modal-mask {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  background: var(--f-mask-color);
}
.fes-modal-container {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 0;
  overflow: auto;
}
.fes-modal-container.fes-modal-no-header .fes-modal-wrapper {
  padding-top: calc(var(--f-padding-middle) + var(--f-padding-large));
}
.fes-modal-container.fes-modal-vertical-center {
  align-items: center;
}
.fes-modal-container.fes-modal-center {
  text-align: center;
}
.fes-modal-container.fes-modal-center .fes-modal-wrapper {
  padding: calc(var(--f-padding-middle) + var(--f-padding-xsmall)) var(--f-padding-middle);
}
.fes-modal-container.fes-modal-center .fes-modal-header {
  justify-content: center;
}
.fes-modal-container.fes-modal-center .fes-modal-footer {
  text-align: center;
}
.fes-modal-container.fes-modal-global .fes-modal-body {
  padding-left: calc(var(--f-padding-xsmall) + calc(var(--f-font-size-base) + 6px));
}
.fes-modal-fullscreen {
  padding: 0;
}
.fes-modal-fullscreen .fes-modal-wrapper {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border-radius: 0;
}
.fes-modal-fullscreen .fes-modal-body {
  flex: 1;
}
.fes-modal-wrapper {
  position: relative;
  box-sizing: border-box;
  padding: calc(var(--f-padding-middle) + var(--f-padding-xsmall));
  background: var(--f-body-bg-color);
  border-radius: var(--f-border-radius-base);
  box-shadow: 0 2px var(--f-shadow-radius) var(--f-shadow-color);
}
.fes-modal-header {
  position: relative;
  --f-modal-header-icon-color: inherit;
  display: flex;
  align-items: center;
  padding-bottom: var(--f-padding-middle);
  color: var(--f-head-color);
  font-weight: 500;
  font-size: calc(var(--f-font-size-base) + 2px);
}
.fes-modal-header .fes-modal-icon {
  display: flex;
  align-items: center;
  padding-right: var(--f-padding-xsmall);
  color: var(--f-modal-header-icon-color);
  font-size: calc(var(--f-font-size-base) + 6px);
}
.fes-modal-header .fes-modal-status-info {
  --f-modal-header-icon-color: var(--f-primary-color);
}
.fes-modal-header .fes-modal-status-success {
  --f-modal-header-icon-color: var(--f-success-color);
}
.fes-modal-header .fes-modal-status-error {
  --f-modal-header-icon-color: var(--f-danger-color);
}
.fes-modal-header .fes-modal-status-confirm,
.fes-modal-header .fes-modal-status-warning {
  --f-modal-header-icon-color: var(--f-warning-color);
}
.fes-modal-header .fes-modal-close {
  top: auto;
  padding: 0;
  line-height: 0;
}
.fes-modal-body {
  padding: var(--f-padding-xsmall) 0;
  color: var(--f-sub-head-color);
  font-size: var(--f-font-size-base);
}
.fes-modal-footer {
  padding-top: var(--f-padding-middle);
  text-align: right;
}
.fes-modal-footer .btn-margin {
  margin-right: var(--f-padding-middle);
}
.fes-modal-no-header .fes-modal-body {
  padding-top: 0;
}
.fes-modal-no-footer .fes-modal-body {
  padding-bottom: 0;
}
.fes-modal-close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 var(--f-padding-middle);
  color: var(--f-sub-head-color);
  font-size: calc(var(--f-font-size-base) + 2px);
  line-height: 40px;
  cursor: pointer;
}
.fes-modal-mask-fade-leave-active,
.fes-modal-mask-fade-enter-active {
  transition: opacity 0.3s cubic-bezier(0.9, 0, 0.3, 0.7);
}
.fes-modal-mask-fade-leave-to,
.fes-modal-mask-fade-enter-from {
  opacity: 0;
}
.fes-modal-fade-leave-active,
.fes-modal-fade-enter-active {
  transition: all 0.3s cubic-bezier(0.7, 0.3, 0.1, 1);
}
.fes-modal-fade-leave-to,
.fes-modal-fade-enter-from {
  transform: scale(0);
  opacity: 0;
}
