body, html { width: 100%; height: 100%; }
input::-ms-clear, input::-ms-reveal { display: none; }
*, ::after, ::before { box-sizing: border-box; }
html { font-family: sans-serif; line-height: 1.15; text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section { display: block; }
body { margin: 0px; color: rgba(0, 0, 0, 0.65); font-size: 12px; 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: 1.5; background-color: rgb(255, 255, 255); font-feature-settings: "tnum"; }
[tabindex="-1"]:focus { outline: none !important; }
hr { box-sizing: content-box; height: 0px; overflow: visible; }
h1, h2, h3, h4, h5, h6 { margin-top: 0px; margin-bottom: 0.5em; color: rgba(0, 0, 0, 0.85); font-weight: 500; }
p { margin-top: 0px; margin-bottom: 1em; }
abbr[data-original-title], abbr[title] { text-decoration: underline dotted; border-bottom: 0px; cursor: help; }
address { margin-bottom: 1em; font-style: normal; line-height: inherit; }
input[type="number"], input[type="password"], input[type="text"], textarea { appearance: none; }
dl, ol, ul { margin-top: 0px; margin-bottom: 1em; }
ol ol, ol ul, ul ol, ul ul { margin-bottom: 0px; }
dt { font-weight: 500; }
dd { margin-bottom: 0.5em; margin-left: 0px; }
blockquote { margin: 0px 0px 1em; }
dfn { font-style: italic; }
b, strong { font-weight: bolder; }
small { font-size: 80%; }
sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
a { color: rgb(24, 144, 255); text-decoration: none; background-color: transparent; outline: none; cursor: pointer; transition: color 0.3s; }
a:hover { color: rgb(64, 169, 255); }
a:active { color: rgb(9, 109, 217); }
a:active, a:hover { text-decoration: none; outline: 0px; }
a[disabled] { color: rgba(0, 0, 0, 0.25); cursor: not-allowed; pointer-events: none; }
code, kbd, pre, samp { font-size: 1em; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; }
pre { margin-top: 0px; margin-bottom: 1em; overflow: auto; }
figure { margin: 0px 0px 1em; }
img { vertical-align: middle; border-style: none; }
svg:not(:root) { overflow: hidden; }
[role="button"], a, area, button, input:not([type="range"]), label, select, summary, textarea { touch-action: manipulation; }
table { border-collapse: collapse; }
caption { padding-top: 0.75em; padding-bottom: 0.3em; color: rgba(0, 0, 0, 0.45); text-align: left; caption-side: bottom; }
th { text-align: inherit; }
button, input, optgroup, select, textarea { margin: 0px; color: inherit; font-size: inherit; font-family: inherit; line-height: inherit; }
button, input { overflow: visible; }
button, select { text-transform: none; }
[type="reset"], [type="submit"], button, html [type="button"] { appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0px; }
input[type="date"], input[type="datetime-local"], input[type="month"], input[type="time"] { appearance: listbox; }
textarea { overflow: auto; resize: vertical; }
fieldset { min-width: 0px; margin: 0px; padding: 0px; border: 0px; }
legend { display: block; width: 100%; max-width: 100%; margin-bottom: 0.5em; padding: 0px; color: inherit; font-size: 1.5em; line-height: inherit; white-space: normal; }
progress { vertical-align: baseline; }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { outline-offset: -2px; appearance: none; }
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { appearance: none; }
::-webkit-file-upload-button { font: inherit; appearance: button; }
output { display: inline-block; }
summary { display: list-item; }
template { display: none; }
[hidden] { display: none !important; }
mark { padding: 0.2em; background-color: rgb(254, 255, 230); }
::selection { color: rgb(255, 255, 255); background: rgb(24, 144, 255); }
.clearfix { zoom: 1; }
.clearfix::after, .clearfix::before { display: table; content: ""; }
.clearfix::after { clear: both; }
.anticon { display: inline-block; color: inherit; font-style: normal; line-height: 0; text-align: center; text-transform: none; vertical-align: -0.125em; text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; }
.anticon > * { line-height: 1; }
.anticon svg { display: inline-block; }
.anticon::before { display: none; }
.anticon .anticon-icon { display: block; }
.anticon[tabindex] { cursor: pointer; }
.anticon-spin::before { display: inline-block; animation: 1s linear 0s infinite normal none running loadingCircle; }
.anticon-spin { display: inline-block; animation: 1s linear 0s infinite normal none running loadingCircle; }
.fade-appear, .fade-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.fade-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.fade-appear.fade-appear-active, .fade-enter.fade-enter-active { animation-name: antFadeIn; animation-play-state: running; }
.fade-leave.fade-leave-active { animation-name: antFadeOut; animation-play-state: running; pointer-events: none; }
.fade-appear, .fade-enter { opacity: 0; animation-timing-function: linear; }
.fade-leave { animation-timing-function: linear; }
@keyframes antFadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes antFadeOut { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
.move-up-appear, .move-up-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-up-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-up-appear.move-up-appear-active, .move-up-enter.move-up-enter-active { animation-name: antMoveUpIn; animation-play-state: running; }
.move-up-leave.move-up-leave-active { animation-name: antMoveUpOut; animation-play-state: running; pointer-events: none; }
.move-up-appear, .move-up-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-up-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
.move-down-appear, .move-down-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-down-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-down-appear.move-down-appear-active, .move-down-enter.move-down-enter-active { animation-name: antMoveDownIn; animation-play-state: running; }
.move-down-leave.move-down-leave-active { animation-name: antMoveDownOut; animation-play-state: running; pointer-events: none; }
.move-down-appear, .move-down-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-down-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
.move-left-appear, .move-left-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-left-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-left-appear.move-left-appear-active, .move-left-enter.move-left-enter-active { animation-name: antMoveLeftIn; animation-play-state: running; }
.move-left-leave.move-left-leave-active { animation-name: antMoveLeftOut; animation-play-state: running; pointer-events: none; }
.move-left-appear, .move-left-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-left-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
.move-right-appear, .move-right-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-right-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-right-appear.move-right-appear-active, .move-right-enter.move-right-enter-active { animation-name: antMoveRightIn; animation-play-state: running; }
.move-right-leave.move-right-leave-active { animation-name: antMoveRightOut; animation-play-state: running; pointer-events: none; }
.move-right-appear, .move-right-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-right-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
@keyframes antMoveDownIn { 
  0% { transform: translateY(100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveDownOut { 
  0% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateY(100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antMoveLeftIn { 
  0% { transform: translateX(-100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveLeftOut { 
  0% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateX(-100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antMoveRightIn { 
  0% { transform: translateX(100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveRightOut { 
  0% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateX(100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antMoveUpIn { 
  0% { transform: translateY(-100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveUpOut { 
  0% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateY(-100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes loadingCircle { 
  100% { transform: rotate(1turn); }
}
[ant-click-animating-without-extra-node="true"], [ant-click-animating="true"] { position: relative; }
html { --antd-wave-shadow-color: #1890ff; }
.ant-click-animating-node, [ant-click-animating-without-extra-node="true"]::after { position: absolute; inset: 0px; display: block; border-radius: inherit; box-shadow: 0 0 0 0 var(--antd-wave-shadow-color); opacity: 0.2; animation: 2s cubic-bezier(0.08, 0.82, 0.17, 1) 0s 1 normal forwards running fadeEffect, 0.4s cubic-bezier(0.08, 0.82, 0.17, 1) 0s 1 normal running waveEffect; content: ""; pointer-events: none; }
@keyframes waveEffect { 
  100% { box-shadow: 0 0 0 6px var(--antd-wave-shadow-color); }
}
@keyframes fadeEffect { 
  100% { opacity: 0; }
}
.slide-up-appear, .slide-up-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-up-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-up-appear.slide-up-appear-active, .slide-up-enter.slide-up-enter-active { animation-name: antSlideUpIn; animation-play-state: running; }
.slide-up-leave.slide-up-leave-active { animation-name: antSlideUpOut; animation-play-state: running; pointer-events: none; }
.slide-up-appear, .slide-up-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-up-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
.slide-down-appear, .slide-down-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-down-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-down-appear.slide-down-appear-active, .slide-down-enter.slide-down-enter-active { animation-name: antSlideDownIn; animation-play-state: running; }
.slide-down-leave.slide-down-leave-active { animation-name: antSlideDownOut; animation-play-state: running; pointer-events: none; }
.slide-down-appear, .slide-down-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-down-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
.slide-left-appear, .slide-left-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-left-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-left-appear.slide-left-appear-active, .slide-left-enter.slide-left-enter-active { animation-name: antSlideLeftIn; animation-play-state: running; }
.slide-left-leave.slide-left-leave-active { animation-name: antSlideLeftOut; animation-play-state: running; pointer-events: none; }
.slide-left-appear, .slide-left-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-left-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
.slide-right-appear, .slide-right-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-right-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-right-appear.slide-right-appear-active, .slide-right-enter.slide-right-enter-active { animation-name: antSlideRightIn; animation-play-state: running; }
.slide-right-leave.slide-right-leave-active { animation-name: antSlideRightOut; animation-play-state: running; pointer-events: none; }
.slide-right-appear, .slide-right-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-right-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
@keyframes antSlideUpIn { 
  0% { transform: scaleY(0.8); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: scaleY(1); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antSlideUpOut { 
  0% { transform: scaleY(1); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: scaleY(0.8); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antSlideDownIn { 
  0% { transform: scaleY(0.8); transform-origin: 100% 100%; opacity: 0; }
  100% { transform: scaleY(1); transform-origin: 100% 100%; opacity: 1; }
}
@keyframes antSlideDownOut { 
  0% { transform: scaleY(1); transform-origin: 100% 100%; opacity: 1; }
  100% { transform: scaleY(0.8); transform-origin: 100% 100%; opacity: 0; }
}
@keyframes antSlideLeftIn { 
  0% { transform: scaleX(0.8); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: scaleX(1); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antSlideLeftOut { 
  0% { transform: scaleX(1); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: scaleX(0.8); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antSlideRightIn { 
  0% { transform: scaleX(0.8); transform-origin: 100% 0px; opacity: 0; }
  100% { transform: scaleX(1); transform-origin: 100% 0px; opacity: 1; }
}
@keyframes antSlideRightOut { 
  0% { transform: scaleX(1); transform-origin: 100% 0px; opacity: 1; }
  100% { transform: scaleX(0.8); transform-origin: 100% 0px; opacity: 0; }
}
.swing-appear, .swing-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.swing-appear.swing-appear-active, .swing-enter.swing-enter-active { animation-name: antSwingIn; animation-play-state: running; }
@keyframes antSwingIn { 
  0%, 100% { transform: translateX(0px); }
  20% { transform: translateX(-10px); }
  40% { transform: translateX(10px); }
  60% { transform: translateX(-5px); }
  80% { transform: translateX(5px); }
}
.zoom-appear, .zoom-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-appear.zoom-appear-active, .zoom-enter.zoom-enter-active { animation-name: antZoomIn; animation-play-state: running; }
.zoom-leave.zoom-leave-active { animation-name: antZoomOut; animation-play-state: running; pointer-events: none; }
.zoom-appear, .zoom-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-big-appear, .zoom-big-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-appear.zoom-big-appear-active, .zoom-big-enter.zoom-big-enter-active { animation-name: antZoomBigIn; animation-play-state: running; }
.zoom-big-leave.zoom-big-leave-active { animation-name: antZoomBigOut; animation-play-state: running; pointer-events: none; }
.zoom-big-appear, .zoom-big-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-big-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-big-fast-appear, .zoom-big-fast-enter { animation-duration: 0.1s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-fast-leave { animation-duration: 0.1s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-fast-appear.zoom-big-fast-appear-active, .zoom-big-fast-enter.zoom-big-fast-enter-active { animation-name: antZoomBigIn; animation-play-state: running; }
.zoom-big-fast-leave.zoom-big-fast-leave-active { animation-name: antZoomBigOut; animation-play-state: running; pointer-events: none; }
.zoom-big-fast-appear, .zoom-big-fast-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-big-fast-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-up-appear, .zoom-up-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-up-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-up-appear.zoom-up-appear-active, .zoom-up-enter.zoom-up-enter-active { animation-name: antZoomUpIn; animation-play-state: running; }
.zoom-up-leave.zoom-up-leave-active { animation-name: antZoomUpOut; animation-play-state: running; pointer-events: none; }
.zoom-up-appear, .zoom-up-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-up-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-down-appear, .zoom-down-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-down-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-down-appear.zoom-down-appear-active, .zoom-down-enter.zoom-down-enter-active { animation-name: antZoomDownIn; animation-play-state: running; }
.zoom-down-leave.zoom-down-leave-active { animation-name: antZoomDownOut; animation-play-state: running; pointer-events: none; }
.zoom-down-appear, .zoom-down-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-down-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-left-appear, .zoom-left-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-left-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-left-appear.zoom-left-appear-active, .zoom-left-enter.zoom-left-enter-active { animation-name: antZoomLeftIn; animation-play-state: running; }
.zoom-left-leave.zoom-left-leave-active { animation-name: antZoomLeftOut; animation-play-state: running; pointer-events: none; }
.zoom-left-appear, .zoom-left-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-left-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-right-appear, .zoom-right-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-right-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-right-appear.zoom-right-appear-active, .zoom-right-enter.zoom-right-enter-active { animation-name: antZoomRightIn; animation-play-state: running; }
.zoom-right-leave.zoom-right-leave-active { animation-name: antZoomRightOut; animation-play-state: running; pointer-events: none; }
.zoom-right-appear, .zoom-right-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-right-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
@keyframes antZoomIn { 
  0% { transform: scale(0.2); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes antZoomOut { 
  0% { transform: scale(1); }
  100% { transform: scale(0.2); opacity: 0; }
}
@keyframes antZoomBigIn { 
  0% { transform: scale(0.8); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes antZoomBigOut { 
  0% { transform: scale(1); }
  100% { transform: scale(0.8); opacity: 0; }
}
@keyframes antZoomUpIn { 
  0% { transform: scale(0.8); transform-origin: 50% 0px; opacity: 0; }
  100% { transform: scale(1); transform-origin: 50% 0px; }
}
@keyframes antZoomUpOut { 
  0% { transform: scale(1); transform-origin: 50% 0px; }
  100% { transform: scale(0.8); transform-origin: 50% 0px; opacity: 0; }
}
@keyframes antZoomLeftIn { 
  0% { transform: scale(0.8); transform-origin: 0px 50%; opacity: 0; }
  100% { transform: scale(1); transform-origin: 0px 50%; }
}
@keyframes antZoomLeftOut { 
  0% { transform: scale(1); transform-origin: 0px 50%; }
  100% { transform: scale(0.8); transform-origin: 0px 50%; opacity: 0; }
}
@keyframes antZoomRightIn { 
  0% { transform: scale(0.8); transform-origin: 100% 50%; opacity: 0; }
  100% { transform: scale(1); transform-origin: 100% 50%; }
}
@keyframes antZoomRightOut { 
  0% { transform: scale(1); transform-origin: 100% 50%; }
  100% { transform: scale(0.8); transform-origin: 100% 50%; opacity: 0; }
}
@keyframes antZoomDownIn { 
  0% { transform: scale(0.8); transform-origin: 50% 100%; opacity: 0; }
  100% { transform: scale(1); transform-origin: 50% 100%; }
}
@keyframes antZoomDownOut { 
  0% { transform: scale(1); transform-origin: 50% 100%; }
  100% { transform: scale(0.8); transform-origin: 50% 100%; opacity: 0; }
}
.ant-motion-collapse-legacy { overflow: hidden; }
.ant-motion-collapse-legacy-active { transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; }
.ant-motion-collapse { overflow: hidden; transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; }
.ant-message { box-sizing: border-box; margin: 0px; padding: 0px; color: rgba(0, 0, 0, 0.65); font-size: 12px; font-variant: tabular-nums; line-height: 1.5; list-style: none; font-feature-settings: "tnum"; position: fixed; top: 16px; left: 0px; z-index: 1010; width: 100%; pointer-events: none; }
.ant-message-notice { padding: 8px; text-align: center; }
.ant-message-notice:first-child { margin-top: -8px; }
.ant-message-notice-content { display: inline-block; padding: 10px 16px; background: rgb(255, 255, 255); border-radius: 3px; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 12px; pointer-events: all; }
.ant-message-success .anticon { color: rgb(82, 196, 26); }
.ant-message-error .anticon { color: rgb(245, 34, 45); }
.ant-message-warning .anticon { color: rgb(250, 173, 20); }
.ant-message-info .anticon, .ant-message-loading .anticon { color: rgb(24, 144, 255); }
.ant-message .anticon { position: relative; top: 1px; margin-right: 8px; font-size: 14px; }
.ant-message-notice.move-up-leave.move-up-leave-active { overflow: hidden; animation-name: MessageMoveOut; animation-duration: 0.3s; }
@keyframes MessageMoveOut { 
  0% { max-height: 150px; padding: 8px; opacity: 1; }
  100% { max-height: 0px; padding: 0px; opacity: 0; }
}
body, html { width: 100%; height: 100%; }
input::-ms-clear, input::-ms-reveal { display: none; }
*, ::after, ::before { box-sizing: border-box; }
html { font-family: sans-serif; line-height: 1.15; text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section { display: block; }
body { margin: 0px; color: rgba(0, 0, 0, 0.65); font-size: 12px; 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: 1.5; background-color: rgb(255, 255, 255); font-feature-settings: "tnum"; }
[tabindex="-1"]:focus { outline: none !important; }
hr { box-sizing: content-box; height: 0px; overflow: visible; }
h1, h2, h3, h4, h5, h6 { margin-top: 0px; margin-bottom: 0.5em; color: rgba(0, 0, 0, 0.85); font-weight: 500; }
p { margin-top: 0px; margin-bottom: 1em; }
abbr[data-original-title], abbr[title] { text-decoration: underline dotted; border-bottom: 0px; cursor: help; }
address { margin-bottom: 1em; font-style: normal; line-height: inherit; }
input[type="number"], input[type="password"], input[type="text"], textarea { appearance: none; }
dl, ol, ul { margin-top: 0px; margin-bottom: 1em; }
ol ol, ol ul, ul ol, ul ul { margin-bottom: 0px; }
dt { font-weight: 500; }
dd { margin-bottom: 0.5em; margin-left: 0px; }
blockquote { margin: 0px 0px 1em; }
dfn { font-style: italic; }
b, strong { font-weight: bolder; }
small { font-size: 80%; }
sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
a { color: rgb(24, 144, 255); text-decoration: none; background-color: transparent; outline: none; cursor: pointer; transition: color 0.3s; }
a:hover { color: rgb(64, 169, 255); }
a:active { color: rgb(9, 109, 217); }
a:active, a:hover { text-decoration: none; outline: 0px; }
a[disabled] { color: rgba(0, 0, 0, 0.25); cursor: not-allowed; pointer-events: none; }
code, kbd, pre, samp { font-size: 1em; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; }
pre { margin-top: 0px; margin-bottom: 1em; overflow: auto; }
figure { margin: 0px 0px 1em; }
img { vertical-align: middle; border-style: none; }
svg:not(:root) { overflow: hidden; }
[role="button"], a, area, button, input:not([type="range"]), label, select, summary, textarea { touch-action: manipulation; }
table { border-collapse: collapse; }
caption { padding-top: 0.75em; padding-bottom: 0.3em; color: rgba(0, 0, 0, 0.45); text-align: left; caption-side: bottom; }
th { text-align: inherit; }
button, input, optgroup, select, textarea { margin: 0px; color: inherit; font-size: inherit; font-family: inherit; line-height: inherit; }
button, input { overflow: visible; }
button, select { text-transform: none; }
[type="reset"], [type="submit"], button, html [type="button"] { appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0px; }
input[type="date"], input[type="datetime-local"], input[type="month"], input[type="time"] { appearance: listbox; }
textarea { overflow: auto; resize: vertical; }
fieldset { min-width: 0px; margin: 0px; padding: 0px; border: 0px; }
legend { display: block; width: 100%; max-width: 100%; margin-bottom: 0.5em; padding: 0px; color: inherit; font-size: 1.5em; line-height: inherit; white-space: normal; }
progress { vertical-align: baseline; }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { outline-offset: -2px; appearance: none; }
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { appearance: none; }
::-webkit-file-upload-button { font: inherit; appearance: button; }
output { display: inline-block; }
summary { display: list-item; }
template { display: none; }
[hidden] { display: none !important; }
mark { padding: 0.2em; background-color: rgb(254, 255, 230); }
::selection { color: rgb(255, 255, 255); background: rgb(24, 144, 255); }
.clearfix { zoom: 1; }
.clearfix::after, .clearfix::before { display: table; content: ""; }
.clearfix::after { clear: both; }
.anticon { display: inline-block; color: inherit; font-style: normal; line-height: 0; text-align: center; text-transform: none; vertical-align: -0.125em; text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; }
.anticon > * { line-height: 1; }
.anticon svg { display: inline-block; }
.anticon::before { display: none; }
.anticon .anticon-icon { display: block; }
.anticon[tabindex] { cursor: pointer; }
.anticon-spin::before { display: inline-block; animation: 1s linear 0s infinite normal none running loadingCircle; }
.anticon-spin { display: inline-block; animation: 1s linear 0s infinite normal none running loadingCircle; }
.fade-appear, .fade-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.fade-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.fade-appear.fade-appear-active, .fade-enter.fade-enter-active { animation-name: antFadeIn; animation-play-state: running; }
.fade-leave.fade-leave-active { animation-name: antFadeOut; animation-play-state: running; pointer-events: none; }
.fade-appear, .fade-enter { opacity: 0; animation-timing-function: linear; }
.fade-leave { animation-timing-function: linear; }
@keyframes antFadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes antFadeOut { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}
.move-up-appear, .move-up-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-up-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-up-appear.move-up-appear-active, .move-up-enter.move-up-enter-active { animation-name: antMoveUpIn; animation-play-state: running; }
.move-up-leave.move-up-leave-active { animation-name: antMoveUpOut; animation-play-state: running; pointer-events: none; }
.move-up-appear, .move-up-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-up-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
.move-down-appear, .move-down-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-down-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-down-appear.move-down-appear-active, .move-down-enter.move-down-enter-active { animation-name: antMoveDownIn; animation-play-state: running; }
.move-down-leave.move-down-leave-active { animation-name: antMoveDownOut; animation-play-state: running; pointer-events: none; }
.move-down-appear, .move-down-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-down-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
.move-left-appear, .move-left-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-left-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-left-appear.move-left-appear-active, .move-left-enter.move-left-enter-active { animation-name: antMoveLeftIn; animation-play-state: running; }
.move-left-leave.move-left-leave-active { animation-name: antMoveLeftOut; animation-play-state: running; pointer-events: none; }
.move-left-appear, .move-left-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-left-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
.move-right-appear, .move-right-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-right-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.move-right-appear.move-right-appear-active, .move-right-enter.move-right-enter-active { animation-name: antMoveRightIn; animation-play-state: running; }
.move-right-leave.move-right-leave-active { animation-name: antMoveRightOut; animation-play-state: running; pointer-events: none; }
.move-right-appear, .move-right-enter { opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.move-right-leave { animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34); }
@keyframes antMoveDownIn { 
  0% { transform: translateY(100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveDownOut { 
  0% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateY(100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antMoveLeftIn { 
  0% { transform: translateX(-100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveLeftOut { 
  0% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateX(-100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antMoveRightIn { 
  0% { transform: translateX(100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveRightOut { 
  0% { transform: translateX(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateX(100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antMoveUpIn { 
  0% { transform: translateY(-100%); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antMoveUpOut { 
  0% { transform: translateY(0px); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: translateY(-100%); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes loadingCircle { 
  100% { transform: rotate(1turn); }
}
[ant-click-animating-without-extra-node="true"], [ant-click-animating="true"] { position: relative; }
html { --antd-wave-shadow-color: #1890ff; }
.ant-click-animating-node, [ant-click-animating-without-extra-node="true"]::after { position: absolute; inset: 0px; display: block; border-radius: inherit; box-shadow: 0 0 0 0 var(--antd-wave-shadow-color); opacity: 0.2; animation: 2s cubic-bezier(0.08, 0.82, 0.17, 1) 0s 1 normal forwards running fadeEffect, 0.4s cubic-bezier(0.08, 0.82, 0.17, 1) 0s 1 normal running waveEffect; content: ""; pointer-events: none; }
@keyframes waveEffect { 
  100% { box-shadow: 0 0 0 6px var(--antd-wave-shadow-color); }
}
@keyframes fadeEffect { 
  100% { opacity: 0; }
}
.slide-up-appear, .slide-up-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-up-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-up-appear.slide-up-appear-active, .slide-up-enter.slide-up-enter-active { animation-name: antSlideUpIn; animation-play-state: running; }
.slide-up-leave.slide-up-leave-active { animation-name: antSlideUpOut; animation-play-state: running; pointer-events: none; }
.slide-up-appear, .slide-up-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-up-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
.slide-down-appear, .slide-down-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-down-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-down-appear.slide-down-appear-active, .slide-down-enter.slide-down-enter-active { animation-name: antSlideDownIn; animation-play-state: running; }
.slide-down-leave.slide-down-leave-active { animation-name: antSlideDownOut; animation-play-state: running; pointer-events: none; }
.slide-down-appear, .slide-down-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-down-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
.slide-left-appear, .slide-left-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-left-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-left-appear.slide-left-appear-active, .slide-left-enter.slide-left-enter-active { animation-name: antSlideLeftIn; animation-play-state: running; }
.slide-left-leave.slide-left-leave-active { animation-name: antSlideLeftOut; animation-play-state: running; pointer-events: none; }
.slide-left-appear, .slide-left-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-left-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
.slide-right-appear, .slide-right-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-right-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.slide-right-appear.slide-right-appear-active, .slide-right-enter.slide-right-enter-active { animation-name: antSlideRightIn; animation-play-state: running; }
.slide-right-leave.slide-right-leave-active { animation-name: antSlideRightOut; animation-play-state: running; pointer-events: none; }
.slide-right-appear, .slide-right-enter { opacity: 0; animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.slide-right-leave { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
@keyframes antSlideUpIn { 
  0% { transform: scaleY(0.8); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: scaleY(1); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antSlideUpOut { 
  0% { transform: scaleY(1); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: scaleY(0.8); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antSlideDownIn { 
  0% { transform: scaleY(0.8); transform-origin: 100% 100%; opacity: 0; }
  100% { transform: scaleY(1); transform-origin: 100% 100%; opacity: 1; }
}
@keyframes antSlideDownOut { 
  0% { transform: scaleY(1); transform-origin: 100% 100%; opacity: 1; }
  100% { transform: scaleY(0.8); transform-origin: 100% 100%; opacity: 0; }
}
@keyframes antSlideLeftIn { 
  0% { transform: scaleX(0.8); transform-origin: 0px 0px; opacity: 0; }
  100% { transform: scaleX(1); transform-origin: 0px 0px; opacity: 1; }
}
@keyframes antSlideLeftOut { 
  0% { transform: scaleX(1); transform-origin: 0px 0px; opacity: 1; }
  100% { transform: scaleX(0.8); transform-origin: 0px 0px; opacity: 0; }
}
@keyframes antSlideRightIn { 
  0% { transform: scaleX(0.8); transform-origin: 100% 0px; opacity: 0; }
  100% { transform: scaleX(1); transform-origin: 100% 0px; opacity: 1; }
}
@keyframes antSlideRightOut { 
  0% { transform: scaleX(1); transform-origin: 100% 0px; opacity: 1; }
  100% { transform: scaleX(0.8); transform-origin: 100% 0px; opacity: 0; }
}
.swing-appear, .swing-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.swing-appear.swing-appear-active, .swing-enter.swing-enter-active { animation-name: antSwingIn; animation-play-state: running; }
@keyframes antSwingIn { 
  0%, 100% { transform: translateX(0px); }
  20% { transform: translateX(-10px); }
  40% { transform: translateX(10px); }
  60% { transform: translateX(-5px); }
  80% { transform: translateX(5px); }
}
.zoom-appear, .zoom-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-appear.zoom-appear-active, .zoom-enter.zoom-enter-active { animation-name: antZoomIn; animation-play-state: running; }
.zoom-leave.zoom-leave-active { animation-name: antZoomOut; animation-play-state: running; pointer-events: none; }
.zoom-appear, .zoom-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-big-appear, .zoom-big-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-appear.zoom-big-appear-active, .zoom-big-enter.zoom-big-enter-active { animation-name: antZoomBigIn; animation-play-state: running; }
.zoom-big-leave.zoom-big-leave-active { animation-name: antZoomBigOut; animation-play-state: running; pointer-events: none; }
.zoom-big-appear, .zoom-big-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-big-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-big-fast-appear, .zoom-big-fast-enter { animation-duration: 0.1s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-fast-leave { animation-duration: 0.1s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-big-fast-appear.zoom-big-fast-appear-active, .zoom-big-fast-enter.zoom-big-fast-enter-active { animation-name: antZoomBigIn; animation-play-state: running; }
.zoom-big-fast-leave.zoom-big-fast-leave-active { animation-name: antZoomBigOut; animation-play-state: running; pointer-events: none; }
.zoom-big-fast-appear, .zoom-big-fast-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-big-fast-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-up-appear, .zoom-up-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-up-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-up-appear.zoom-up-appear-active, .zoom-up-enter.zoom-up-enter-active { animation-name: antZoomUpIn; animation-play-state: running; }
.zoom-up-leave.zoom-up-leave-active { animation-name: antZoomUpOut; animation-play-state: running; pointer-events: none; }
.zoom-up-appear, .zoom-up-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-up-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-down-appear, .zoom-down-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-down-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-down-appear.zoom-down-appear-active, .zoom-down-enter.zoom-down-enter-active { animation-name: antZoomDownIn; animation-play-state: running; }
.zoom-down-leave.zoom-down-leave-active { animation-name: antZoomDownOut; animation-play-state: running; pointer-events: none; }
.zoom-down-appear, .zoom-down-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-down-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-left-appear, .zoom-left-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-left-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-left-appear.zoom-left-appear-active, .zoom-left-enter.zoom-left-enter-active { animation-name: antZoomLeftIn; animation-play-state: running; }
.zoom-left-leave.zoom-left-leave-active { animation-name: antZoomLeftOut; animation-play-state: running; pointer-events: none; }
.zoom-left-appear, .zoom-left-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-left-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.zoom-right-appear, .zoom-right-enter { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-right-leave { animation-duration: 0.2s; animation-fill-mode: both; animation-play-state: paused; }
.zoom-right-appear.zoom-right-appear-active, .zoom-right-enter.zoom-right-enter-active { animation-name: antZoomRightIn; animation-play-state: running; }
.zoom-right-leave.zoom-right-leave-active { animation-name: antZoomRightOut; animation-play-state: running; pointer-events: none; }
.zoom-right-appear, .zoom-right-enter { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1); }
.zoom-right-leave { animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86); }
@keyframes antZoomIn { 
  0% { transform: scale(0.2); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes antZoomOut { 
  0% { transform: scale(1); }
  100% { transform: scale(0.2); opacity: 0; }
}
@keyframes antZoomBigIn { 
  0% { transform: scale(0.8); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes antZoomBigOut { 
  0% { transform: scale(1); }
  100% { transform: scale(0.8); opacity: 0; }
}
@keyframes antZoomUpIn { 
  0% { transform: scale(0.8); transform-origin: 50% 0px; opacity: 0; }
  100% { transform: scale(1); transform-origin: 50% 0px; }
}
@keyframes antZoomUpOut { 
  0% { transform: scale(1); transform-origin: 50% 0px; }
  100% { transform: scale(0.8); transform-origin: 50% 0px; opacity: 0; }
}
@keyframes antZoomLeftIn { 
  0% { transform: scale(0.8); transform-origin: 0px 50%; opacity: 0; }
  100% { transform: scale(1); transform-origin: 0px 50%; }
}
@keyframes antZoomLeftOut { 
  0% { transform: scale(1); transform-origin: 0px 50%; }
  100% { transform: scale(0.8); transform-origin: 0px 50%; opacity: 0; }
}
@keyframes antZoomRightIn { 
  0% { transform: scale(0.8); transform-origin: 100% 50%; opacity: 0; }
  100% { transform: scale(1); transform-origin: 100% 50%; }
}
@keyframes antZoomRightOut { 
  0% { transform: scale(1); transform-origin: 100% 50%; }
  100% { transform: scale(0.8); transform-origin: 100% 50%; opacity: 0; }
}
@keyframes antZoomDownIn { 
  0% { transform: scale(0.8); transform-origin: 50% 100%; opacity: 0; }
  100% { transform: scale(1); transform-origin: 50% 100%; }
}
@keyframes antZoomDownOut { 
  0% { transform: scale(1); transform-origin: 50% 100%; }
  100% { transform: scale(0.8); transform-origin: 50% 100%; opacity: 0; }
}
.ant-motion-collapse-legacy { overflow: hidden; }
.ant-motion-collapse-legacy-active { transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; }
.ant-motion-collapse { overflow: hidden; transition: height 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.15s cubic-bezier(0.645, 0.045, 0.355, 1) !important; }
.ant-spin { box-sizing: border-box; margin: 0px; padding: 0px; font-size: 12px; font-variant: tabular-nums; line-height: 1.5; list-style: none; font-feature-settings: "tnum"; position: absolute; display: none; color: rgb(24, 144, 255); text-align: center; vertical-align: middle; opacity: 0; transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.ant-spin-spinning { position: static; display: inline-block; opacity: 1; }
.ant-spin-nested-loading { position: relative; }
.ant-spin-nested-loading > div > .ant-spin { position: absolute; top: 0px; left: 0px; z-index: 4; display: block; width: 100%; height: 100%; max-height: 400px; }
.ant-spin-nested-loading > div > .ant-spin .ant-spin-dot { position: absolute; top: 50%; left: 50%; margin: -10px; }
.ant-spin-nested-loading > div > .ant-spin .ant-spin-text { position: absolute; top: 50%; width: 100%; padding-top: 6px; text-shadow: rgb(255, 255, 255) 0px 1px 2px; }
.ant-spin-nested-loading > div > .ant-spin.ant-spin-show-text .ant-spin-dot { margin-top: -20px; }
.ant-spin-nested-loading > div > .ant-spin-sm .ant-spin-dot { margin: -7px; }
.ant-spin-nested-loading > div > .ant-spin-sm .ant-spin-text { padding-top: 3px; }
.ant-spin-nested-loading > div > .ant-spin-sm.ant-spin-show-text .ant-spin-dot { margin-top: -17px; }
.ant-spin-nested-loading > div > .ant-spin-lg .ant-spin-dot { margin: -16px; }
.ant-spin-nested-loading > div > .ant-spin-lg .ant-spin-text { padding-top: 12px; }
.ant-spin-nested-loading > div > .ant-spin-lg.ant-spin-show-text .ant-spin-dot { margin-top: -26px; }
.ant-spin-container { position: relative; transition: opacity 0.3s; }
.ant-spin-container::after { position: absolute; inset: 0px; z-index: 10; width: 100%; height: 100%; background: rgb(255, 255, 255); opacity: 0; transition: 0.3s; content: ""; pointer-events: none; }
.ant-spin-blur { clear: both; overflow: hidden; opacity: 0.5; user-select: none; pointer-events: none; }
.ant-spin-blur::after { opacity: 0.4; pointer-events: auto; }
.ant-spin-tip { color: rgba(0, 0, 0, 0.45); }
.ant-spin-dot { position: relative; display: inline-block; font-size: 20px; width: 1em; height: 1em; }
.ant-spin-dot-item { position: absolute; display: block; width: 9px; height: 9px; background-color: rgb(24, 144, 255); border-radius: 100%; transform: scale(0.75); transform-origin: 50% 50%; opacity: 0.3; animation: 1s linear 0s infinite alternate none running antSpinMove; }
.ant-spin-dot-item:first-child { top: 0px; left: 0px; }
.ant-spin-dot-item:nth-child(2) { top: 0px; right: 0px; animation-delay: 0.4s; }
.ant-spin-dot-item:nth-child(3) { right: 0px; bottom: 0px; animation-delay: 0.8s; }
.ant-spin-dot-item:nth-child(4) { bottom: 0px; left: 0px; animation-delay: 1.2s; }
.ant-spin-dot-spin { transform: rotate(45deg); animation: 1.2s linear 0s infinite normal none running antRotate; }
.ant-spin-sm .ant-spin-dot { font-size: 14px; }
.ant-spin-sm .ant-spin-dot i { width: 6px; height: 6px; }
.ant-spin-lg .ant-spin-dot { font-size: 32px; }
.ant-spin-lg .ant-spin-dot i { width: 14px; height: 14px; }
.ant-spin.ant-spin-show-text .ant-spin-text { display: block; }
@media (-ms-high-contrast:active), (-ms-high-contrast:none) {
  .ant-spin-blur { background: rgb(255, 255, 255); opacity: 0.5; }
}
@keyframes antSpinMove { 
  100% { opacity: 1; }
}
@keyframes antRotate { 
  100% { transform: rotate(405deg); }
}
.ant-spin { box-sizing: border-box; margin: 0px; padding: 0px; font-size: 12px; font-variant: tabular-nums; line-height: 1.5; list-style: none; font-feature-settings: "tnum"; position: absolute; display: none; color: rgb(24, 144, 255); text-align: center; vertical-align: middle; opacity: 0; transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86); }
.ant-spin-spinning { position: static; display: inline-block; opacity: 1; }
.ant-spin-nested-loading { position: relative; }
.ant-spin-nested-loading > div > .ant-spin { position: absolute; top: 0px; left: 0px; z-index: 4; display: block; width: 100%; height: 100%; max-height: 400px; }
.ant-spin-nested-loading > div > .ant-spin .ant-spin-dot { position: absolute; top: 50%; left: 50%; margin: -10px; }
.ant-spin-nested-loading > div > .ant-spin .ant-spin-text { position: absolute; top: 50%; width: 100%; padding-top: 6px; text-shadow: rgb(255, 255, 255) 0px 1px 2px; }
.ant-spin-nested-loading > div > .ant-spin.ant-spin-show-text .ant-spin-dot { margin-top: -20px; }
.ant-spin-nested-loading > div > .ant-spin-sm .ant-spin-dot { margin: -7px; }
.ant-spin-nested-loading > div > .ant-spin-sm .ant-spin-text { padding-top: 3px; }
.ant-spin-nested-loading > div > .ant-spin-sm.ant-spin-show-text .ant-spin-dot { margin-top: -17px; }
.ant-spin-nested-loading > div > .ant-spin-lg .ant-spin-dot { margin: -16px; }
.ant-spin-nested-loading > div > .ant-spin-lg .ant-spin-text { padding-top: 12px; }
.ant-spin-nested-loading > div > .ant-spin-lg.ant-spin-show-text .ant-spin-dot { margin-top: -26px; }
.ant-spin-container { position: relative; transition: opacity 0.3s; }
.ant-spin-container::after { position: absolute; inset: 0px; z-index: 10; width: 100%; height: 100%; background: rgb(255, 255, 255); opacity: 0; transition: 0.3s; content: ""; pointer-events: none; }
.ant-spin-blur { clear: both; overflow: hidden; opacity: 0.5; user-select: none; pointer-events: none; }
.ant-spin-blur::after { opacity: 0.4; pointer-events: auto; }
.ant-spin-tip { color: rgba(0, 0, 0, 0.45); }
.ant-spin-dot { position: relative; display: inline-block; font-size: 20px; width: 1em; height: 1em; }
.ant-spin-dot-item { position: absolute; display: block; width: 9px; height: 9px; background-color: rgb(24, 144, 255); border-radius: 100%; transform: scale(0.75); transform-origin: 50% 50%; opacity: 0.3; animation: 1s linear 0s infinite alternate none running antSpinMove; }
.ant-spin-dot-item:first-child { top: 0px; left: 0px; }
.ant-spin-dot-item:nth-child(2) { top: 0px; right: 0px; animation-delay: 0.4s; }
.ant-spin-dot-item:nth-child(3) { right: 0px; bottom: 0px; animation-delay: 0.8s; }
.ant-spin-dot-item:nth-child(4) { bottom: 0px; left: 0px; animation-delay: 1.2s; }
.ant-spin-dot-spin { transform: rotate(45deg); animation: 1.2s linear 0s infinite normal none running antRotate; }
.ant-spin-sm .ant-spin-dot { font-size: 14px; }
.ant-spin-sm .ant-spin-dot i { width: 6px; height: 6px; }
.ant-spin-lg .ant-spin-dot { font-size: 32px; }
.ant-spin-lg .ant-spin-dot i { width: 14px; height: 14px; }
.ant-spin.ant-spin-show-text .ant-spin-text { display: block; }
@media (-ms-high-contrast:active), (-ms-high-contrast:none) {
  .ant-spin-blur { background: rgb(255, 255, 255); opacity: 0.5; }
}
@keyframes antSpinMove { 
  100% { opacity: 1; }
}
@keyframes antRotate { 
  100% { transform: rotate(405deg); }
}
.colorWeak { filter: invert(80%); }
.ant-layout { min-height: 100vh; }
.ant-layout .ant-layout-header { height: 0.5rem; }
canvas { display: block; }
body { text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; background: rgb(51, 51, 51); }
.globalSpin { width: 100%; margin: 0.4rem 0px !important; }
ol, ul { list-style: none; }
::-webkit-scrollbar { width: 0.1rem; height: 0.1rem; background-color: rgb(239, 241, 246); }
::-webkit-scrollbar-thumb { background-color: rgb(197, 206, 219); border-radius: 0px; }
::-webkit-scrollbar-thumb:hover { background-color: rgb(136, 187, 243); }
.to_be_confirm, .to_execute { color: rgb(245, 34, 45); }
.arrival, .executed, .executionStatussuccess, .finished, .paid { color: rgb(32, 172, 55); }
.executionStatuspart_success, .part_pay, .to_pay { color: rgb(245, 34, 45); }
.executionStatusexecution, .refund, .running, .success, .to_confirm, .unfinished { color: rgb(246, 133, 23); }
.ant-notification-notice-with-icon .ant-notification-notice-description { word-break: break-word; }
.potential { color: rgb(32, 172, 55); }
.formal { color: rgb(246, 133, 23); }
.ant-popover { }
.pay-success { color: rgb(32, 172, 55); }
.pay-paying { color: rgb(246, 133, 23); }
.pay-to_pay { color: rgb(245, 34, 45); }
.pay-fail { color: rgb(67, 67, 67); }