/*! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */
*, :after, :before {
    background-repeat: no-repeat;
    box-sizing: inherit
}

:after, :before {
    text-decoration: inherit;
    vertical-align: inherit
}

html {
    box-sizing: border-box;
    cursor: default;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

article, aside, footer, header, nav, section {
    display: block
}

body {
    margin: 0
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

figcaption, figure, main {
    display: block
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

nav ol, nav ul {
    list-style: none
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: inherit;
    font-weight: bolder
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

::-moz-selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

::selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

audio, canvas, iframe, img, svg, video {
    vertical-align: middle
}

audio, video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

svg {
    fill: currentColor
}

svg:not(:root) {
    overflow: hidden
}

table {
    border-collapse: collapse
}

button, input, optgroup, select, textarea {
    margin: 0
}

button, input, select, textarea {
    background-color: transparent;
    color: inherit;
    font-size: inherit;
    line-height: inherit
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

[type=reset], [type=submit], button, html [type=button] {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: 1px dotted ButtonText
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto;
    resize: vertical
}

[type=checkbox], [type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details, menu {
    display: block
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

[tabindex], a, area, button, input, label, select, summary, textarea {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

[hidden] {
    display: none
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-hidden=false][hidden]:not(:focus) {
    clip: rect(0, 0, 0, 0);
    display: inherit;
    position: absolute
}

[aria-disabled] {
    cursor: default
}

#mountNode, body, html {
    height: 100%;
    background-color: #f8f8f8
}

a, a:focus, a:hover {
    text-decoration: none
}

p, ul {
    padding: 0;
    margin: 0
}

ul {
    list-style: none
}

body, input {
    font: 14px/1.5 PingFang SC, PingFang-SC-Regular, Helvetica Neue, Helvetica, Arial, Microsoft Yahei, Hiragino Sans GB, Heiti SC, WenQuanYi Micro Hei, sans-serif;
    font-weight: 300
}

:lang(zh) body {
    font-family: PingFang SC, PingFang-SC-Regular, Helvetica Neue, Helvetica, Arial, Microsoft Yahei, Hiragino Sans GB, Heiti SC, WenQuanYi Micro Hei, sans-serif
}

:lang(en) body {
    font-family: Helvetica Neue, Helvetica, Arial, PingFang SC, PingFang-SC-Regular, Microsoft Yahei, Hiragino Sans GB, Heiti SC, WenQuanYi Micro Hei, sans-serif
}

.pull-left {
    float: left
}

.pull-right {
    float: right
}

.hide {
    display: none !important
}

.show {
    display: block !important
}

.invisible {
    visibility: hidden
}

.clearfix {
    zoom: 1
}

.clearfix:after, .clearfix:before {
    content: " ";
    display: table
}

.clearfix:after {
    clear: both
}

:focus {
    outline: 0
}

.Container .rc-table table {
    border-collapse: collapse
}

.listview {
    position: relative
}

.listview.lv-lg .lv-item:hover {
    background-color: #f4f7fa
}

.lv-bordered .lv-item {
    border-bottom: 1px solid #f0f0f0
}

.lv-item .lv-item-actions .iconfont {
    margin-left: 20px;
    cursor: pointer
}

.media-body > a {
    display: block
}

.lv-item {
    padding: 24px 0;
    background-color: #fff;
    color: #303030;
    overflow: hidden
}

.lv-item-left, .lv-item-right {
    height: 100%
}

.lv-item.media .media-body-left a {
    display: inline-block;
    height: 100%;
    width: 100%;
    color: #aeaeae
}

.public-notice {
    position: fixed;
    z-index: 999;
    width: 100%;
    top: 48px
}

.listview:not(.lv-lg):not(.lv-message) .lv-item {
    padding: 10px 20px
}

.listview.lv-lg .lv-item:hover {
    background-color: #ffffdb
}

.listview .lv-item {
    position: relative;
    display: block;
    transition: background-color;
    transition-duration: .3s
}

.listview .lv-item .lv-small {
    font-size: 12px;
    color: #a9a9a9;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    width: 100%
}

.listview .lv-item .checkbox, .listview .lv-item.media {
    margin: 0
}

.listview .lv-item .lv-actions {
    position: absolute;
    right: 15px;
    top: 10px
}

@media (max-width: 480px) {
    .listview .lv-item .lv-actions {
        right: 7px
    }
}

.listview .lv-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block
}

.listview a.lv-item:hover {
    background: #ecf9ff
}

.listview [class*=lv-img] {
    border-radius: 50%
}

.listview .lv-img {
    width: 48px;
    height: 48px
}

.listview .lv-img-sm {
    width: 35px;
    height: 35px
}

.listview.lv-bordered .lv-item:not(:last-child) {
    border-bottom: 1px solid #f0f0f0
}

.listview .lv-attrs {
    list-style: none;
    padding: 0;
    margin: 5px 0 0
}

.listview .lv-attrs > li {
    display: inline-block;
    padding: 2px 10px 3px;
    font-size: 12px;
    margin-top: 5px;
    margin-right: 2px
}

.listview .lv-attrs > li:not(.info):not(.primary):not(.warning):not(.danger) {
    border: 1px solid #dedede;
    background: #fff;
    color: #5e5e5e
}

.listview .lv-attrs > li.info {
    border: 1px solid #00bcd4;
    background: #00bcd4;
    color: #fff
}

.listview .lv-attrs > li.primary {
    border: 1px solid #2196f3;
    background: #2196f3;
    color: #fff
}

.listview .lv-attrs > li.warning {
    border: 1px solid #ff9800;
    background: #ff9800;
    color: #fff
}

.listview .lv-attrs > li.danger {
    border: 1px solid #f44336;
    background: #f44336;
    color: #fff
}

.listview .lv-attrs > li > a {
    display: block
}

.listview:not(.lv-message) .lv-title {
    color: #000
}

[class*=lv-img] {
    border-radius: 50%
}

.lv-img {
    width: 48px;
    height: 48px
}

.lv-img-sm {
    width: 35px;
    height: 35px
}

.lv-header {
    text-align: center;
    padding: 15px 10px 13px;
    line-height: 100%;
    text-transform: uppercase;
    border-bottom: 1px solid #f0f0f0;
    font-weight: 500;
    color: #4c4c4c;
    margin-bottom: 10px
}

.lv-header .actions {
    position: absolute;
    top: 6px;
    right: 8px;
    z-index: 10
}

.lvh-search {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 4;
    background: #fff;
    display: none
}

.lvh-search:before {
    content: "\F1C3";
    font-family: Material-Design-Iconic-Font;
    position: absolute;
    left: 24px;
    top: 17px;
    font-size: 22px
}

.lvhs-input {
    border: 0;
    padding: 0 26px 0 55px;
    height: 63px;
    font-size: 18px;
    width: 100%;
    font-weight: 100;
    background: #fff;
    border-bottom: 1px solid #eee
}

.lvh-search-close {
    font-style: normal;
    position: absolute;
    top: 23px;
    right: 22px;
    font-size: 17px;
    width: 18px;
    height: 18px;
    background-color: #adadad;
    line-height: 100%;
    color: #fff;
    text-align: center;
    cursor: pointer;
    border-radius: 50%
}

.lvh-search-close:hover {
    background: #333
}

.lv-header-alt {
    position: relative;
    background: #f8f8f8;
    padding: 15px
}

.lv-header-alt .lv-actions {
    z-index: 3;
    float: right;
    margin-top: 3px;
    position: relative
}

.lv-header-alt .lv-actions > li > a {
    margin: 0 3px
}

.lvh-label {
    color: #818181;
    display: inline-block;
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    padding: 0 6px;
    line-height: 33px;
    vertical-align: middle;
    float: left
}

.lv-footer {
    display: block;
    text-align: center;
    padding: 7px 10px 8px;
    border-top: 1px solid #f0f0f0;
    line-height: 100%;
    font-size: 11px;
    margin-top: 20px;
    color: #828282
}

a.lv-footer:hover {
    color: #050505
}

.ant-motion-collapse {
    overflow: hidden
}

.ant-motion-collapse-active {
    transition: height .2s ease-out
}

.fade-appear, .fade-enter, .fade-leave {
    animation-duration: .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
}

.fade-appear, .fade-enter {
    opacity: 0
}

.fade-appear, .fade-enter, .fade-leave {
    animation-timing-function: linear
}

@keyframes antFadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes antFadeOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

.move-up-appear, .move-up-enter, .move-up-leave {
    animation-duration: .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
}

.move-up-appear, .move-up-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.move-up-leave {
    animation-timing-function: cubic-bezier(.6, .04, .98, .34)
}

.move-down-appear, .move-down-enter, .move-down-leave {
    animation-duration: .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
}

.move-down-appear, .move-down-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.move-down-leave {
    animation-timing-function: cubic-bezier(.6, .04, .98, .34)
}

.move-left-appear, .move-left-enter, .move-left-leave {
    animation-duration: .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
}

.move-left-appear, .move-left-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.move-left-leave {
    animation-timing-function: cubic-bezier(.6, .04, .98, .34)
}

.move-right-appear, .move-right-enter, .move-right-leave {
    animation-duration: .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
}

.move-right-appear, .move-right-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.move-right-leave {
    animation-timing-function: cubic-bezier(.6, .04, .98, .34)
}

@keyframes antMoveDownIn {
    0% {
        transform-origin: 0 0;
        transform: translateY(100%);
        opacity: 0
    }
    to {
        transform-origin: 0 0;
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes antMoveDownOut {
    0% {
        transform-origin: 0 0;
        transform: translateY(0);
        opacity: 1
    }
    to {
        transform-origin: 0 0;
        transform: translateY(100%);
        opacity: 0
    }
}

@keyframes antMoveLeftIn {
    0% {
        transform-origin: 0 0;
        transform: translateX(-100%);
        opacity: 0
    }
    to {
        transform-origin: 0 0;
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes antMoveLeftOut {
    0% {
        transform-origin: 0 0;
        transform: translateX(0);
        opacity: 1
    }
    to {
        transform-origin: 0 0;
        transform: translateX(-100%);
        opacity: 0
    }
}

@keyframes antMoveRightIn {
    0% {
        opacity: 0;
        transform-origin: 0 0;
        transform: translateX(100%)
    }
    to {
        opacity: 1;
        transform-origin: 0 0;
        transform: translateX(0)
    }
}

@keyframes antMoveRightOut {
    0% {
        transform-origin: 0 0;
        transform: translateX(0);
        opacity: 1
    }
    to {
        transform-origin: 0 0;
        transform: translateX(100%);
        opacity: 0
    }
}

@keyframes antMoveUpIn {
    0% {
        transform-origin: 0 0;
        transform: translateY(-100%);
        opacity: 0
    }
    to {
        transform-origin: 0 0;
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes antMoveUpOut {
    0% {
        transform-origin: 0 0;
        transform: translateY(0);
        opacity: 1
    }
    to {
        transform-origin: 0 0;
        transform: translateY(-100%);
        opacity: 0
    }
}

.slide-up-appear, .slide-up-enter, .slide-up-leave {
    animation-duration: .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
}

.slide-up-appear, .slide-up-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.23, 1, .32, 1)
}

.slide-up-leave {
    animation-timing-function: cubic-bezier(.755, .05, .855, .06)
}

.slide-down-appear, .slide-down-enter, .slide-down-leave {
    animation-duration: .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
}

.slide-down-appear, .slide-down-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.23, 1, .32, 1)
}

.slide-down-leave {
    animation-timing-function: cubic-bezier(.755, .05, .855, .06)
}

.slide-left-appear, .slide-left-enter, .slide-left-leave {
    animation-duration: .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
}

.slide-left-appear, .slide-left-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.23, 1, .32, 1)
}

.slide-left-leave {
    animation-timing-function: cubic-bezier(.755, .05, .855, .06)
}

.slide-right-appear, .slide-right-enter, .slide-right-leave {
    animation-duration: .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
}

.slide-right-appear, .slide-right-enter {
    opacity: 0;
    animation-timing-function: cubic-bezier(.23, 1, .32, 1)
}

.slide-right-leave {
    animation-timing-function: cubic-bezier(.755, .05, .855, .06)
}

@keyframes antSlideUpIn {
    0% {
        opacity: 0;
        transform-origin: 0 0;
        transform: scaleY(.8)
    }
    to {
        opacity: 1;
        transform-origin: 0 0;
        transform: scaleY(1)
    }
}

@keyframes antSlideUpOut {
    0% {
        opacity: 1;
        transform-origin: 0 0;
        transform: scaleY(1)
    }
    to {
        opacity: 0;
        transform-origin: 0 0;
        transform: scaleY(.8)
    }
}

@keyframes antSlideDownIn {
    0% {
        opacity: 0;
        transform-origin: 100% 100%;
        transform: scaleY(.8)
    }
    to {
        opacity: 1;
        transform-origin: 100% 100%;
        transform: scaleY(1)
    }
}

@keyframes antSlideDownOut {
    0% {
        opacity: 1;
        transform-origin: 100% 100%;
        transform: scaleY(1)
    }
    to {
        opacity: 0;
        transform-origin: 100% 100%;
        transform: scaleY(.8)
    }
}

@keyframes antSlideLeftIn {
    0% {
        opacity: 0;
        transform-origin: 0 0;
        transform: scaleX(.8)
    }
    to {
        opacity: 1;
        transform-origin: 0 0;
        transform: scaleX(1)
    }
}

@keyframes antSlideLeftOut {
    0% {
        opacity: 1;
        transform-origin: 0 0;
        transform: scaleX(1)
    }
    to {
        opacity: 0;
        transform-origin: 0 0;
        transform: scaleX(.8)
    }
}

@keyframes antSlideRightIn {
    0% {
        opacity: 0;
        transform-origin: 100% 0;
        transform: scaleX(.8)
    }
    to {
        opacity: 1;
        transform-origin: 100% 0;
        transform: scaleX(1)
    }
}

@keyframes antSlideRightOut {
    0% {
        opacity: 1;
        transform-origin: 100% 0;
        transform: scaleX(1)
    }
    to {
        opacity: 0;
        transform-origin: 100% 0;
        transform: scaleX(.8)
    }
}

.swing-appear, .swing-enter {
    animation-duration: .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%, to {
        transform: translateX(0)
    }
    20% {
        transform: translateX(-10px)
    }
    40% {
        transform: translateX(10px)
    }
    60% {
        transform: translateX(-5px)
    }
    80% {
        transform: translateX(5px)
    }
}

.zoom-appear, .zoom-enter, .zoom-leave {
    animation-duration: .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
}

.zoom-appear, .zoom-enter {
    -ms-transform: scale(0);
    transform: scale(0);
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.zoom-leave {
    animation-timing-function: cubic-bezier(.78, .14, .15, .86)
}

.zoom-big-appear, .zoom-big-enter, .zoom-big-leave {
    animation-duration: .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
}

.zoom-big-appear, .zoom-big-enter {
    -ms-transform: scale(0);
    transform: scale(0);
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.zoom-big-leave {
    animation-timing-function: cubic-bezier(.78, .14, .15, .86)
}

.zoom-up-appear, .zoom-up-enter, .zoom-up-leave {
    animation-duration: .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
}

.zoom-up-appear, .zoom-up-enter {
    -ms-transform: scale(0);
    transform: scale(0);
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.zoom-up-leave {
    animation-timing-function: cubic-bezier(.78, .14, .15, .86)
}

.zoom-down-appear, .zoom-down-enter, .zoom-down-leave {
    animation-duration: .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
}

.zoom-down-appear, .zoom-down-enter {
    -ms-transform: scale(0);
    transform: scale(0);
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.zoom-down-leave {
    animation-timing-function: cubic-bezier(.78, .14, .15, .86)
}

.zoom-left-appear, .zoom-left-enter, .zoom-left-leave {
    animation-duration: .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
}

.zoom-left-appear, .zoom-left-enter {
    -ms-transform: scale(0);
    transform: scale(0);
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.zoom-left-leave {
    animation-timing-function: cubic-bezier(.78, .14, .15, .86)
}

.zoom-right-appear, .zoom-right-enter, .zoom-right-leave {
    animation-duration: .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
}

.zoom-right-appear, .zoom-right-enter {
    -ms-transform: scale(0);
    transform: scale(0);
    animation-timing-function: cubic-bezier(.08, .82, .17, 1)
}

.zoom-right-leave {
    animation-timing-function: cubic-bezier(.78, .14, .15, .86)
}

@keyframes antZoomIn {
    0% {
        opacity: 0;
        transform: scale(0)
    }
    to {
        transform: scale(1)
    }
}

@keyframes antZoomOut {
    0% {
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform: scale(0)
    }
}

@keyframes antZoomBigIn {
    0% {
        opacity: 0;
        transform: scale(.8)
    }
    to {
        transform: scale(1)
    }
}

@keyframes antZoomBigOut {
    0% {
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform: scale(.8)
    }
}

@keyframes antZoomUpIn {
    0% {
        opacity: 0;
        transform-origin: 50% 0;
        transform: scale(.8)
    }
    to {
        transform-origin: 50% 0;
        transform: scale(1)
    }
}

@keyframes antZoomUpOut {
    0% {
        transform-origin: 50% 0;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform-origin: 50% 0;
        transform: scale(.8)
    }
}

@keyframes antZoomLeftIn {
    0% {
        opacity: 0;
        transform-origin: 0 50%;
        transform: scale(.8)
    }
    to {
        transform-origin: 0 50%;
        transform: scale(1)
    }
}

@keyframes antZoomLeftOut {
    0% {
        transform-origin: 0 50%;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform-origin: 0 50%;
        transform: scale(.8)
    }
}

@keyframes antZoomRightIn {
    0% {
        opacity: 0;
        transform-origin: 100% 50%;
        transform: scale(.8)
    }
    to {
        transform-origin: 100% 50%;
        transform: scale(1)
    }
}

@keyframes antZoomRightOut {
    0% {
        transform-origin: 100% 50%;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform-origin: 100% 50%;
        transform: scale(.8)
    }
}

@keyframes antZoomDownIn {
    0% {
        opacity: 0;
        transform-origin: 50% 100%;
        transform: scale(.8)
    }
    to {
        transform-origin: 50% 100%;
        transform: scale(1)
    }
}

@keyframes antZoomDownOut {
    0% {
        transform-origin: 50% 100%;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform-origin: 50% 100%;
        transform: scale(.8)
    }
}

.layout {
    position: relative;
    min-height: 100%;
    padding-bottom: 60px
}

.layout, .layout-box {
    width: 100%;
    min-width: 1265px;
    background: #f8f8f8
}

.layout-box {
    height: 100%
}

.breadcrumb-container, .layout-with-header-only .header {
    box-shadow: 0 2px 4px rgba(0, 0, 0, .05)
}

.breadcrumb-container {
    position: fixed;
    width: 100%;
    height: 28px;
    min-width: 1265px;
    line-height: 28px;
    background: #fff;
    z-index: 9;
    top: 44px;
    left: 0;
    padding: 0 24px
}

.breadcrumb-container .icon-path-arrow {
    display: inline-block;
    font-size: 12px;
    font-size: 10px \9;
    -ms-transform: scale(.83333) rotate(0deg);
    transform: scale(.83333) rotate(0deg);
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=$costheta, M12=$negsintheta, M21=$sintheta, M22=$costheta)";
    zoom: 1;
    color: #9b9b9b;
    width: 12px
}

:root .breadcrumb-container .icon-path-arrow {
    -webkit-filter: none;
    filter: none;
    font-size: 12px
}

.layout-content-breadcrumb {
    position: relative;
    width: 100%;
    background: #f8f8f8;
    padding-top: 72px
}

.layout-content-breadcrumb-step {
    position: relative;
    width: 100%;
    background: #f8f8f8;
    padding-top: 132px
}

.header-layout-content {
    position: relative;
    width: 100%;
    padding-top: 44px
}

.step-container {
    position: fixed;
    height: 60px;
    width: 100%;
    min-width: 1265px;
    z-index: 7;
    background: #fff;
    text-align: center;
    border-bottom: 2px solid #e0e0e0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .05);
    top: 72px
}

.step-container .step-navs {
    height: 100%;
    width: 800px;
    margin: 0 auto
}

.step-container .step-navs .step {
    position: relative;
    display: inline-block;
    height: 58px;
    width: 160px;
    font-size: 12px;
    color: silver
}

.step-container .step-navs .step i {
    font-size: 24px;
    display: block;
    line-height: 1;
    padding: 7px 0 2px
}

.step-container .step-navs .step:hover {
    background: hsla(0, 0%, 70%, .2);
    cursor: pointer
}

.step-container .step-navs .step:before {
    content: ""
}

.step-container .step-navs .step:after {
    position: absolute;
    bottom: -9px;
    left: 50%;
    margin-left: -8px;
    display: block;
    width: 16px;
    height: 16px;
    line-height: 16px;
    border-radius: 50%;
    background: #e0e0e0;
    color: #fff;
    font-size: 12px
}

.step-container .step-navs .step.step-current {
    color: #2086e0;
    background: hsla(0, 0%, 70%, .1)
}

.step-container .step-navs .step.step-current:after {
    background: #2086e0
}

.step-container .step-navs .step.step-current:before {
    position: absolute;
    bottom: -2px;
    display: block;
    width: 100%;
    height: 2px;
    background: #2086e0
}

.step-container .step-navs .step.step-current:hover {
    background: hsla(0, 0%, 70%, .2)
}

.step-container .step-navs .step.step-active {
    color: #2fa666
}

.step-container .step-navs .step.step-active:after {
    background: #2fa666
}

.step-container .step-navs .step.step-disabled {
    background: none;
    cursor: not-allowed
}

.step-container .step-navs .step-available {
    color: #999
}

.step-container .step-navs .step-available:after {
    background: #999
}

.step-container .step-navs .step-1:after {
    content: "1"
}

.step-container .step-navs .step-2:after {
    content: "2"
}

.step-container .step-navs .step-3:after {
    content: "3"
}

.step-container .step-navs .step-4:after {
    content: "4"
}

.step-container .step-navs .step-5:after {
    content: "5"
}

.navbar-content {
    position: relative;
    width: 100%;
    padding-top: 28px
}

.navbar-content .sidebar {
    top: 72px
}

.sidebar {
    position: fixed;
    left: 0;
    top: 44px;
    bottom: 0;
    width: 200px;
    background: #fff;
    background: #fdfdfd;
    color: #bbb;
    z-index: 6;
    overflow-x: hidden;
    overflow-y: auto
}

.sidebar-layout-container {
    position: relative
}

.sidebar-layout-padding {
    padding-left: 200px
}

.step-navs-content {
    position: relative;
    padding-top: 60px
}

.step-navs-content .sidebar {
    top: 132px
}

.step-navs-content .sidebar-layout-container {
    padding-left: 0
}

.content {
    font-size: 0;
    text-align: center;
    vertical-align: top;
    background-color: #f8f8f8
}

.content-box {
    display: inline-block;
    width: 880px
}

.navback {
    padding-top: 50px
}

.navback-box {
    position: fixed;
    width: 100%;
    margin-top: -50px;
    height: 50px;
    min-width: 1265px;
    background: #fff;
    color: #666;
    z-index: 5;
    box-shadow: 0 0 0 3px #f4f4f4
}

.navback-link {
    position: absolute;
    left: -132px;
    display: block;
    margin: 10px 0;
    color: #666;
    cursor: pointer;
    line-height: 30px;
    font-size: 12px
}

.navback-link .iconfont {
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    font-size: 16px;
    color: #ccc
}

.navback-link span {
    vertical-align: middle
}

.navback-center {
    position: absolute;
    width: 960px;
    left: 0;
    right: 0;
    margin: auto
}

.navback-center:before {
    content: "";
    position: absolute;
    width: 1px;
    height: 20px;
    margin-top: 15px;
    margin-left: -20px;
    border-right: 1px solid #e0e0e0
}

.navback-header {
    float: left;
    line-height: 50px;
    color: #000;
    font-size: 14px;
    font-weight: 500
}

.navback-actions {
    float: right;
    line-height: 50px
}

.navback-content {
    padding: 32px 0;
    width: 960px;
    margin: 0 auto
}

.layout-content {
    padding-left: 200px
}

.container-with-title-sidebar .container-head {
    position: fixed;
    top: 72px;
    left: 0;
    height: 50px;
    width: 100%;
    min-width: 1265px;
    z-index: 7;
    background: #fff;
    box-shadow: 0 0 4px rgba(0, 0, 0, .1);
    zoom: 1
}

.container-with-title-sidebar .container-head-left {
    float: left;
    width: 200px;
    height: 50px;
    padding: 0;
    margin: 0
}

.container-with-title-sidebar .container-head-title {
    float: left;
    padding: 0;
    font-weight: 400;
    font-size: 14px;
    margin: 0 24px 0 20px;
    line-height: 50px
}

.container-with-title-sidebar .container-head-actions {
    float: left
}

.container-with-title-sidebar .container-head:before {
    content: "";
    width: 1px;
    height: 20px;
    position: absolute;
    left: 200px;
    top: 15px;
    border-right: 1px solid #e0e0e0
}

.container-with-title-sidebar .sidebar {
    top: 122px;
    box-shadow: 2px 0 4px rgba(0, 0, 0, .1)
}

.container-with-title-sidebar .container-actions {
    line-height: 50px
}

.container-with-title-sidebar .container-main {
    width: 960px;
    margin: 74px 0 0 232px
}

.container-with-title-sidebar .container-main-operation {
    width: 100%;
    padding: 50px 0 0 200px
}

.container-with-title-sidebar .container-main:after {
    content: "";
    display: table;
    clear: both
}

.header {
    height: 44px;
    width: 100%;
    position: fixed;
    z-index: 10;
    left: 0;
    top: 0;
    padding-right: 10px;
    font-size: 14px;
    background: #fff
}

.header-inner {
    list-style: none;
    padding: 0;
    height: 100%;
    min-width: 1265px;
    margin: 0;
    position: relative;
    text-align: center
}

.header-inner li.active a {
    color: #000
}

.header-inner li.active:after {
    content: "";
    display: block;
    height: 0;
    width: 100%;
    margin-top: -3px;
    border-bottom: 3px solid #f60;
    bottom: 0;
    position: relative
}

.header-inner .logo {
    padding: 8px 0 8px 24px;
    text-align: center;
    width: 100px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.header-inner .logo-icon {
    margin: 0;
    color: #fff;
    font-size: 16px;
    display: block;
    min-width: 64px;
    height: 28px
}

.header-inner .logo-icon img {
    height: 28px
}

.header-inner .logo-default {
    width: 112px;
    height: 28px;
    background: url(../images/header/tuya_logo@2x.ce709080.png) 50%/cover no-repeat
}

.header-inner .header-nav-container {
    display: inline-block;
    font-size: 16px
}

.header-inner .header-nav-container > a li {
    display: inline-block;
    height: 100%;
    line-height: 44px;
    padding: 0 24px;
    font-size: 14px;
    font-weight: 400
}

.header-inner .header-nav-container > a li:hover {
    background: #f8f8f8
}

.header-inner .header-nav-container > a li.active:hover {
    background: #fff
}

.header-inner .header-user-info {
    top: 0;
    right: 6px;
    position: absolute
}

.header-inner .header-user-info > li {
    position: relative;
    padding: 12px 0 0;
    float: left;
    font-size: 12px
}

.header-inner .header-nav-container a, .header-inner .header-user-info a {
    color: #666
}

.header-inner .header-nav-container a:hover, .header-inner .header-user-info a:hover {
    color: #000
}

.header-inner .header-nav-user {
    cursor: pointer
}

.header-inner .header-user-navigation li:hover a {
    color: #2086e0
}

.header-inner .header-lang-dropdown {
    font-size: 12px;
    color: #666
}

.header-inner .header-lang-dropdown:hover {
    cursor: pointer
}

.header-inner .tuya-dropdown-trigger {
    font-size: 12px;
    color: #666
}

.header-inner .tuya-dropdown-trigger, .header-inner .tuya-dropdown-trigger span {
    display: inline-block;
    vertical-align: middle
}

.header-inner .tuya-dropdown-trigger .flag-en, .header-inner .tuya-dropdown-trigger .flag-zh {
    display: inline-block;
    vertical-align: middle;
    margin-right: 4px;
    width: 24px;
    height: 16px
}

.header-inner .tuya-dropdown-trigger .flag-en {
    background: url(../imgs/flag_en@2x.d6d5181c843fd1aeb88eb91d1e51f283.png) 50%/cover no-repeat
}

.header-inner .tuya-dropdown-trigger .flag-zh {
    background: url(../imgs/flag_cn@2x.b7430a04fa3afd0a1aaccaf3553ef41b.png) 50%/cover no-repeat
}

.header-title {
    height: 44px;
    line-height: 24px;
    text-align: left;
    width: 1000px;
    margin: 0 auto;
    padding: 10px 0
}

.header-title-txt {
    height: 24px;
    padding: 0 20px;
    border-left: 1px solid #e0e0e0;
    font-size: 14px;
    color: #000;
    font-weight: 400
}

.tuya-dropdown-menu-item span {
    display: inline-block;
    vertical-align: middle
}

.tuya-dropdown-menu-item .flag-en {
    background: url(../imgs/flag_en@2x.d6d5181c843fd1aeb88eb91d1e51f283.png) 50%/cover no-repeat
}

.tuya-dropdown-menu-item .flag-en, .tuya-dropdown-menu-item .flag-zh {
    display: inline-block;
    vertical-align: middle;
    margin-right: 8px;
    width: 24px;
    height: 16px
}

.tuya-dropdown-menu-item .flag-zh {
    background: url(../imgs/flag_cn@2x.b7430a04fa3afd0a1aaccaf3553ef41b.png) 50%/cover no-repeat
}

.header-support {
    position: fixed;
    top: 199px;
    right: 0;
    display: block;
    width: 28px;
    padding: 5px;
    font-size: 12px;
    line-height: 13px;
    text-align: center;
    background-image: linear-gradient(#81c2f0, #327ade);
    border-radius: 1px;
    color: #fff
}

.header-support:hover {
    cursor: pointer
}

.header-support i {
    display: block;
    margin: 6px 0
}

.header-support span {
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    letter-spacing: 2px
}

.header-lang-dropdown .icon-arrow, .header-nav-user .icon-arrow {
    display: inline-block;
    width: 22px;
    font-size: 12px;
    color: #ccc;
    margin-left: -3px;
    -ms-transform: scale(.35);
    transform: scale(.35)
}

.header-user-info .tuya-dropdown-trigger:hover {
    color: #2086e0
}

.header-nav-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #f67e30;
    margin: 0 5px 0 3px
}

.header-nav-new {
    color: #f67e30;
    font-size: 11px;
    float: right
}

#footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    line-height: 18px;
    padding: 9px 0;
    background-color: #f8f8f8;
    text-align: center
}

#footer .copyright, #footer .timezone {
    display: inline-block;
    vertical-align: middle;
    line-height: 18px;
    color: #9b9b9b;
    font-size: 12px
}

#footer .timezone {
    margin-left: 16px
}

#footer .timezone .ant-select-selection {
    border: none;
    color: #9b9b9b;
    font-size: 12px;
    background-color: #f8f8f8
}

#footer .timezone .ant-select-selection__rendered {
    padding-left: 2px
}

#footer .timezone .ant-select-dropdown-menu-item {
    padding: 7px 0
}

#footer .footer-lang-dropdown {
    display: inline-block;
    list-style: none;
    margin-left: -10px
}

#footer .footer-lang-dropdown:hover {
    cursor: pointer
}

#footer .tuya-dropdown-trigger {
    display: inline-block;
    vertical-align: middle;
    font-size: 12px;
    color: #9b9b9b
}

#footer .footer-menu-item:hover {
    background: hsla(0, 0%, 60%, .1);
    color: #ff6000
}

#footer .footer-lang-arrow {
    left: 82px;
    top: 11px
}

.sidebar-container {
    width: 200px;
    height: 100%;
    position: fixed;
    background: #fdfdfd;
    color: #bbb;
    z-index: 6;
    overflow-x: hidden;
    overflow-y: auto;
    box-shadow: 2px 0 1px rgba(0, 0, 0, .1)
}

.sidebar-container .choose-box-container {
    height: 56px;
    padding: 1px 0;
    border-bottom: 1px solid #e8e8e8
}

.sidebar-container-no-shadow {
    box-shadow: none
}

.sidebar-header {
    width: 100%;
    height: 56px;
    border-bottom: 1px solid #e0e0e0;
    padding: 8px 0;
    position: relative
}

.sidebar-header a {
    color: #bbb
}

.sidebar-header span {
    margin-left: 8px
}

.sidebar-header-inner {
    height: 40px;
    line-height: 40px;
    padding-left: 20px;
    box-sizing: border-box
}

.sidebar-header-inner.active {
    line-height: 38px;
    color: #f66000;
    position: relative;
    border-width: 1px 0;
    border-color: #f5a623;
    border-style: solid
}

.sidebar-header-inner.active:hover {
    color: #f66000
}

.sidebar-header-inner.active:before {
    content: "";
    display: block;
    width: 4px;
    height: 40px;
    position: absolute;
    left: 0;
    top: -1px;
    background: #f66000
}

.sidebar-header-inner:hover {
    color: #f2f2f2;
    background: #393941;
    cursor: pointer
}

.sidebar-header-inner:hover a {
    color: #f2f2f2
}

.sidebar-list {
    list-style: none;
    padding: 0;
    margin: 20px 0 0;
    display: inline-block;
    width: 100%
}

.sidebar-list a {
    color: #bbb
}

.sidebar-list a:hover {
    color: #f2f2f2
}

.sidebar-list li {
    padding-left: 20px;
    height: 40px;
    line-height: 38px;
    box-sizing: border-box;
    color: #666
}

.sidebar-list li .text, .sidebar-list li > span {
    display: inline-block;
    vertical-align: bottom
}

.sidebar-list li > span {
    width: 140px;
    height: 38px;
    margin-left: 8px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.sidebar-list li i {
    display: inline-block;
    width: 16px
}

.sidebar-list li.active {
    line-height: 38px;
    color: #f66000;
    position: relative;
    background: #f4f4f4;
    font-weight: 400
}

.sidebar-list li.active:before {
    content: "";
    display: block;
    width: 2px;
    height: 40px;
    position: absolute;
    left: 0;
    background: #f66000
}

.sidebar-list li:hover {
    background: #f0f0f0;
    cursor: pointer;
    color: #f66000
}

.sidebar-content {
    position: relative;
    padding-bottom: 50px;
    min-height: 100%
}

.sidebar-timezone {
    position: absolute;
    bottom: 10px;
    width: 140px;
    margin-left: 10px
}

.sidebar-timezone-box {
    width: 140px
}

.sidebar-timezone-box .ant-select-selection {
    background: none;
    border-color: #ccc
}

.sidebar-timezone .ant-select-dropdown-menu-item {
    padding: 7px 0 7px 4px
}

.choose-modal-panel .choose-box, .sidebar-container .choose-box {
    width: 140px;
    height: 31px;
    line-height: 31px;
    padding: 0 0 0 8px;
    margin: 12px 10px;
    border: 1px solid #ccc;
    position: relative;
    border-radius: 2px;
    color: #333;
    background: #fff
}

.choose-modal-panel .choose-box span, .sidebar-container .choose-box span {
    display: inline-block;
    width: 130px;
    height: 22px;
    padding-right: 18px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px
}

.choose-modal-panel .choose-box:hover, .sidebar-container .choose-box:hover {
    cursor: pointer
}

.choose-modal-panel .choose-box:after, .sidebar-container .choose-box:after {
    content: "";
    position: absolute;
    right: 5px;
    top: 12px;
    width: 12px;
    height: 6px;
    font-size: 12px;
    background: url(../imgs/ty_console_drop_arrow@2x.d00a6adb41e0a3715c4860c1a661a4e3.png) 50%/cover no-repeat
}

.choose-modal .ant-modal-close, .choose-modal .ant-modal-footer {
    display: none
}

.choose-modal .ant-modal-content {
    box-shadow: none
}

.choose-modal .ant-modal-body {
    padding: 8px 0;
    background: none
}

.choose-modal .choose-list {
    list-style: none;
    background: #fff;
    max-height: 400px;
    overflow-y: auto;
    border-radius: 5px;
    padding: 8px 0;
    margin: 0 0 0 8px
}

.choose-modal .choose-list-all {
    line-height: 48px
}

.choose-modal .choose-list-all .icon {
    display: inline-block;
    width: 48px;
    height: 48px;
    background: url(../imgs/all_products@2x.e042c5eaef6ad03d8a1d240416dbc7a9.png) 50%/48px 40px no-repeat;
    margin-left: 0
}

.choose-modal .choose-list li {
    height: 48px;
    font-size: 14px;
    word-wrap: break-word;
    word-break: break-all;
    padding: 0 0 0 12px;
    overflow: hidden
}

.choose-modal .choose-list li img {
    width: 48px;
    height: 48px;
    vertical-align: middle
}

.choose-modal .choose-list li span {
    width: 140px;
    height: 48px;
    line-height: 48px;
    margin-left: 12px;
    vertical-align: middle
}

.choose-modal .choose-list li .create-new-icon {
    width: 40px;
    height: 40px;
    background: url(../imgs/add_new@2x.ecc5dda6670fecf4abad6d66b3561be3.png) 50%/cover no-repeat;
    display: inline-block;
    margin: 4px 4px 4px 16px;
    vertical-align: middle
}

.choose-modal .choose-list li .create-new-icon + span {
    margin-top: 4px
}

.choose-modal .choose-list li:hover {
    cursor: pointer;
    background: #3b78e7;
    color: #fff
}

.choose-modal .choose-list li:last-child .create-btn {
    color: #178bfe;
    font-size: 14px;
    font-weight: 400;
    line-height: 48px
}

.choose-modal .choose-list li:last-child .create-btn .iconfont {
    font-size: 20px;
    vertical-align: middle;
    margin: 0 14px
}

.choose-modal .choose-list li:last-child .create-btn:hover {
    color: #fff
}

.choose-modal .choose-list::-webkit-scrollbar {
    width: 5px
}

.choose-modal .choose-list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: #bfbfbf
}

.choose-modal .products-loading {
    width: 240px;
    height: 120px;
    background: url(../imgs/loading.5d6e6d61772d9ce74addce1cbce8c8d7.gif) no-repeat 50%
}

.choose-modal .ant-modal-content {
    background-color: hsla(0, 0%, 100%, 0)
}

.select-location {
    width: 140px;
    height: 32px;
    margin: 4px 10px 0 23px
}

.select-location span {
    margin: 0
}

.select-location-box {
    margin: 0;
    padding: 0;
    width: 100%
}

.select-location-box .ant-select-selection {
    height: 32px;
    background-color: inherit;
    border-color: #eee;
    color: #333;
    font-size: 14px;
    border-radius: 2px
}

.select-location-box .ant-select-selection--single .select-location-box .ant-select-selection__rendered {
    height: 32px;
    line-height: 32px
}

.select-location-box .ant-select-selection .ant-select-arrow:before {
    content: "";
    position: absolute;
    right: 0;
    top: -4px;
    width: 13px;
    height: 8px;
    font-size: 12px;
    background: url(../imgs/ty_console_drop_arrow@2x.d00a6adb41e0a3715c4860c1a661a4e3.png) 50%/cover no-repeat
}

.layout-content-breadcrumb-step .sidebar-container {
    top: 132px;
    bottom: 0;
    height: auto
}

.subheader-wrapper {
    position: fixed;
    left: 0;
    padding: 0 0 0 200px;
    z-index: 8;
    width: 100%;
    height: 56px
}

.subheader {
    background: #fff;
    border-bottom: 1px solid #e8e8e8;
    width: 100%;
    height: 56px;
    line-height: 55px;
    font-size: 14px
}

.subheader .icon-help {
    float: left;
    color: #e0e0e0;
    margin: 0 0 0 6px;
    font-size: 20px;
    vertical-align: middle
}

.subheader .icon-help:hover {
    cursor: pointer
}

.title {
    margin: 0 0 0 32px;
    padding: 0;
    color: #333;
    font-weight: 300;
    float: left
}

.action {
    color: #178bfe;
    font-size: 14px;
    font-weight: 400;
    cursor: pointer;
    display: inline-block;
    margin-right: 32px
}

.action .iconfont {
    font-size: 18px;
    vertical-align: middle;
    color: inherit
}

.action .action-text {
    margin-left: 12px;
    vertical-align: middle
}

.action-disable {
    color: #ccc;
    opacity: .3;
    cursor: not-allowed
}

.action-before {
    float: left;
    margin: 0 0 0 32px
}

.action-left {
    float: left;
    margin: 0 0 0 40px
}

.action-right {
    float: right;
    margin: 0 32px 0 0
}

.description {
    position: absolute;
    height: 40px;
    width: 100%;
    top: 12px;
    line-height: 39px;
    font-size: 12px;
    color: #666;
    background: #fff;
    padding-left: 32px;
    animation-fill-mode: forwards;
    z-index: -1;
    transition: top .5s;
    border-bottom: 1px solid #f2f2f2;
    overflow: hidden
}

.description .icon-bulb {
    color: #ffd000;
    margin: 0 3px
}

.description i {
    display: inline-block;
    width: 16px
}

.description.expand {
    top: 56px
}

.description a {
    color: #178bfe
}

.feedback-container {
    position: fixed;
    bottom: 24px;
    right: 12px;
    z-index: 9999
}

.feedback-btn {
    display: inline-block;
    width: 40px;
    height: 40px;
    padding: 0 10px;
    overflow: hidden;
    border-radius: 20px;
    cursor: pointer;
    color: #fff;
    text-align: left;
    background: #489be4
}

.feedback-btn:hover {
    background: #328ad7;
    width: auto;
    padding-right: 14px
}

.feedback-btn:hover span {
    margin-left: 8px
}

.feedback-btn i {
    font-size: 20px;
    line-height: 40px;
    vertical-align: top
}

.feedback-btn span {
    margin-left: 12px;
    font-size: 12px;
    line-height: 40px
}

.feedback-modal .ant-modal-body {
    padding: 15px 40px
}

.feedback-success-modal .ant-modal-body {
    background: #fff;
    text-align: center
}

.feedback-success-modal .ant-modal-body h3 {
    font-size: 16px;
    color: #4a4a4a
}

.feedback-success-modal .ant-modal-body p {
    font-size: 14px;
    color: #9b9b9b
}

.feedback-form textarea {
    resize: none
}

.feedback-form-desc {
    color: #9b9b9b;
    margin-bottom: 15px
}

.feedback-form-save {
    margin-left: 80px;
    margin-top: -16px
}

.feedback-footer {
    font-size: 12px
}

.feedback-footer:after {
    content: "";
    display: table;
    clear: both
}

.feedback-footer li {
    display: inline-block;
    vertical-align: middle;
    margin: 0 30px 0 0;
    text-align: left
}

.feedback-footer li:first-child {
    margin: 0 3px 0 -42px
}

.feedback-footer li:last-child {
    margin: 0
}

.feedback-footer li p {
    height: 18px;
    margin: 2px 0
}

.feedback-footer li li > p {
    color: #4a4a4a
}

.feedback-footer li a > p {
    color: #2086e0
}

.feedback-footer-qq img {
    height: 18px
}

.feedback-footer-qq-service {
    background: url(../imgs/qq_service@2x.c123b39eaefa369adf2d777ac64c4b46.png) 0/auto 100% no-repeat;
    width: 64px
}

.zhiChi .zhiFeedback {
    position: fixed;
    right: 10px;
    bottom: 24px;
    height: 168px
}

.zhiChi .phone, .zhiChi .zhiCustomBtn {
    width: 66px;
    height: 80px;
    text-align: center;
    cursor: pointer;
    color: #fff;
    background: #489be4;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, .15)
}

.zhiChi .phone:hover, .zhiChi .zhiCustomBtn:hover {
    background: #328ad7
}

.zhiChi .phone i, .zhiChi .zhiCustomBtn i {
    display: inline-block;
    margin-top: 9px;
    font-size: 24px;
    line-height: 40px;
    vertical-align: top
}

.zhiChi .phone p, .zhiChi .zhiCustomBtn p {
    font-size: 12px
}

.zhiChi .zhiCustomBtn {
    margin-top: 8px
}

.ZCChatFrame {
    bottom: 24px !important;
    right: 96px !important
}

@font-face {
    font-family: iconfont;
    src: url(//at.alicdn.com/t/font_50089_71w16ft4ubit3xr.eot);
    src: url(//at.alicdn.com/t/font_50089_71w16ft4ubit3xr.eot#iefix) format("embedded-opentype"), url(//at.alicdn.com/t/font_50089_71w16ft4ubit3xr.woff) format("woff"), url(//at.alicdn.com/t/font_50089_71w16ft4ubit3xr.ttf) format("truetype"), url(//at.alicdn.com/t/font_50089_71w16ft4ubit3xr.svg#iconfont) format("svg")
}

.iconfont {
    font-family: iconfont !important;
    font-size: 16px;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-calendar:before {
    content: "\E621"
}

.icon-edit:before {
    content: "\E613"
}

.icon-right:before {
    content: "\E610"
}

.icon-qcode:before {
    content: "\E61B"
}

.icon-close:before {
    content: "\E611"
}

.icon-delete:before {
    content: "\E614"
}

.icon-add:before {
    content: "\E615"
}

.icon-qq:before {
    content: "\E64F"
}

.icon-alert:before {
    content: "\E61E"
}

.icon-support:before {
    content: "\E600"
}

.icon-statistics:before {
    content: "\E601"
}

.icon-success:before {
    content: "\E612"
}

.icon-handler-down:before {
    content: "\E61F"
}

.icon-debug-flow:before {
    content: "\E602"
}

.icon-copy:before {
    content: "\E603"
}

.icon-file:before {
    content: "\E604"
}

.icon-upgrade:before {
    content: "\E605"
}

.icon-interface:before {
    content: "\E606"
}

.icon-enterprise:before {
    content: "\E607"
}

.icon-apply:before {
    content: "\E608"
}

.icon-failure:before {
    content: "\E609"
}

.icon-help:before {
    content: "\E60A"
}

.icon-user:before {
    content: "\E60B"
}

.icon-android:before {
    content: "\E60C"
}

.icon-muc:before {
    content: "\E60D"
}

.icon-drop-down:before {
    content: "\E60E"
}

.icon-apple:before {
    content: "\E60F"
}

.icon-help-full:before {
    content: "\E616"
}

.icon-help-sm:before {
    content: "\E618"
}

.icon-download:before {
    content: "\E617"
}

.icon-required:before {
    content: "\E619"
}

.icon-debug-tools:before {
    content: "\E61A"
}

.icon-tools:before {
    content: "\E61C"
}

.icon-sdk:before {
    content: "\E61D"
}

.icon-loading:before {
    content: "\E650"
}

.icon-handler-up:before {
    content: "\E620"
}

.icon-package-manage:before {
    content: "\E622"
}

.icon-product-info:before {
    content: "\E623"
}

.icon-dp:before {
    content: "\E624"
}

.icon-mcu-upgrade:before {
    content: "\E625"
}

.icon-virtual:before {
    content: "\E626"
}

.icon-template-manage:before {
    content: "\E627"
}

.icon-message:before {
    content: "\E628"
}

.icon-exp:before {
    content: "\E629"
}

.icon-feedback:before {
    content: "\E62A"
}

.icon-lang:before {
    content: "\E62B"
}

.icon-app-info:before {
    content: "\E62C"
}

.icon-mcu:before {
    content: "\E62D"
}

.icon-stat-area:before {
    content: "\E62E"
}

.icon-wrench:before {
    content: "\E62F"
}

.icon-stat-fault:before {
    content: "\E630"
}

.icon-stat-lively:before {
    content: "\E631"
}

.icon-stat-active:before {
    content: "\E632"
}

.icon-document:before {
    content: "\E633"
}

.icon-jion:before {
    content: "\E634"
}

.icon-mcu-new:before {
    content: "\E635"
}

.icon-enterprise1:before {
    content: "\E636"
}

.icon-apply-fill:before {
    content: "\E637"
}

.icon-stat-profile:before {
    content: "\E638"
}

.icon-app_manage:before {
    content: "\E639"
}

.icon-subaccount:before {
    content: "\E63B"
}

.icon-device:before {
    content: "\E63C"
}

.icon-control:before {
    content: "\E63D"
}

.icon-delivery:before {
    content: "\E63E"
}

.icon-clock:before {
    content: "\E63F"
}

.icon-bulb:before {
    content: "\E640"
}

.icon-uiconfig:before {
    content: "\E641"
}

.icon-drag:before {
    content: "\E642"
}

.icon-save:before {
    content: "\E643"
}

.icon-add-bordered:before {
    content: "\E644"
}

.icon-bluetooth:before {
    content: "\E645"
}

.icon-arrow-down:before {
    content: "\E646"
}

.icon-help-small:before {
    content: "\E647"
}

.icon-arrow-up:before {
    content: "\E648"
}

.icon-wifi:before {
    content: "\E649"
}

.icon-gprs:before {
    content: "\E64A"
}

.icon-link:before {
    content: "\E64B"
}

.icon-plus:before {
    content: "\E64C"
}

.icon-arrow-right:before {
    content: "\E64D"
}

.icon-arrow-left:before {
    content: "\E64E"
}

.icon-map:before {
    content: "\E8A6"
}

.icon-save-s:before {
    content: "\E8A7"
}

.icon-message-push:before {
    content: "\E8A8"
}

.icon-pack:before {
    content: "\E8A9"
}

.icon-app-config:before {
    content: "\E8AA"
}

.icon-apple1:before {
    content: "\E8AB"
}

.icon-code:before {
    content: "\E8AC"
}

.icon-ok:before {
    content: "\E8AD"
}

.icon-Android:before {
    content: "\E8AE"
}

.icon-certification:before {
    content: "\E8AF"
}

.icon-third-part:before {
    content: "\E8B0"
}

.icon-youjian:before {
    content: "\E8B2"
}

.icon-xiaoxi:before {
    content: "\E8B3"
}

.icon-back:before {
    content: "\E8B4"
}

.icon-alarm:before {
    content: "\E8B1"
}

.icon-bufenyonghu:before {
    content: "\E8B5"
}

.icon-menu:before {
    content: "\E8B6"
}

.icon-suoyouyonghu:before {
    content: "\E8B7"
}

.icon-dealer:before {
    content: "\E8E6"
}

.icon-link_device:before {
    content: "\E909"
}

.icon-device-debug:before {
    content: "\E919"
}

.icon-check:before {
    content: "\E91A"
}

.icon-diamond:before {
    content: "\E91B"
}

.icon-app-ui:before {
    content: "\E91C"
}

.icon-production:before {
    content: "\E91D"
}

.icon-function:before {
    content: "\E91E"
}

.icon-shang:before {
    content: "\E91F"
}

.icon-xia:before {
    content: "\E920"
}

.icon-navback:before {
    content: "\E921"
}

.icon-dot-arrow:before {
    content: "\E922"
}

.icon-resource:before {
    content: "\E923"
}

.icon-upload:before {
    content: "\E924"
}

.icon-yuyin:before {
    content: "\E925"
}

.icon-peiwang:before {
    content: "\E926"
}

.icon-jingbao:before {
    content: "\E927"
}

.icon-ota:before {
    content: "\E928"
}

.icon-purchase:before {
    content: "\E929"
}

.icon-release:before {
    content: "\E92A"
}

.icon-test:before {
    content: "\E92B"
}

.icon-jump:before {
    content: "\E92C"
}

.icon-wifi1:before {
    content: "\E9A8"
}

.icon-Bluetooth:before {
    content: "\E9A9"
}

.icon-rgps:before {
    content: "\E9AA"
}

.icon-gou_fuzhi:before {
    content: "\E9AB"
}

.icon-arrow:before {
    content: "\E9AE"
}

.icon-path-arrow:before {
    content: "\E9AF"
}

.icon-account:before {
    content: "\E9B0"
}

.icon-order:before {
    content: "\E9B1"
}

.icon-company:before {
    content: "\E9B2"
}

.icon-sub-account:before {
    content: "\E9B3"
}

.icon-contact-email:before {
    content: "\E9B4"
}

.icon-add-round:before {
    content: "\E9BC"
}

.icon-feedback-bubble:before {
    content: "\E9CD"
}

.icon-echo:before {
    content: "\E9D0"
}

.icon-googlehome:before {
    content: "\E9D1"
}

.icon-rss:before {
    content: "\E9D6"
}

.icon-cref:before {
    content: "\E9DB"
}

.icon-app:before {
    content: "\E9DC"
}

.icon-custom-made-copy:before {
    content: "\E9DE"
}

.icon-empty-box:before {
    content: "\E9DF"
}

.icon-app-brush:before {
    content: "\E9E0"
}

.icon-google-play:before {
    content: "\E9E1"
}

.icon-zoomout:before {
    content: "\E63A"
}

.icon-zoomin:before {
    content: "\E651"
}

.icon-new_arrow_left:before {
    content: "\E9E2"
}

.icon-new_arrow_right:before {
    content: "\E9E3"
}

.icon-app-user:before {
    content: "\E9E8"
}

.icon-device-log:before {
    content: "\E9E9"
}

.icon-phonecall:before {
    content: "\E9EA"
}

.icon-msg-bubble:before {
    content: "\E9EB"
}

.icon-couponx:before {
    content: "\E9EC"
}

.rc-trigger-popup {
    position: absolute;
    left: -9999px;
    top: -9999px;
    z-index: 1050
}

.rc-trigger-popup-hidden {
    display: none
}

.rc-trigger-popup-zoom-appear, .rc-trigger-popup-zoom-enter {
    opacity: 0;
    animation-duration: .3s;
    animation-fill-mode: both;
    animation-timing-function: cubic-bezier(.18, .89, .32, 1.28);
    animation-play-state: paused
}

.rc-trigger-popup-zoom-leave {
    animation-duration: .3s;
    animation-fill-mode: both;
    animation-timing-function: cubic-bezier(.6, -.3, .74, .05);
    animation-play-state: paused
}

.rc-trigger-popup-zoom-appear.rc-trigger-popup-zoom-appear-active, .rc-trigger-popup-zoom-enter.rc-trigger-popup-zoom-enter-active {
    animation-name: rcTriggerZoomIn;
    animation-play-state: running
}

.rc-trigger-popup-zoom-leave.rc-trigger-popup-zoom-leave-active {
    animation-name: rcTriggerZoomOut;
    animation-play-state: running
}

@keyframes rcTriggerZoomIn {
    0% {
        opacity: 0;
        transform-origin: 50% 50%;
        transform: scale(0)
    }
    to {
        opacity: 1;
        transform-origin: 50% 50%;
        transform: scale(1)
    }
}

@keyframes rcTriggerZoomOut {
    0% {
        opacity: 1;
        transform-origin: 50% 50%;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform-origin: 50% 50%;
        transform: scale(0)
    }
}

.rc-trigger-popup-mask {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: #373737;
    background-color: rgba(55, 55, 55, .6);
    height: 100%;
    filter: alpha(opacity=50);
    z-index: 1050
}

.rc-trigger-popup-mask-hidden {
    display: none
}

.rc-trigger-popup-fade-appear, .rc-trigger-popup-fade-enter {
    opacity: 0
}

.rc-trigger-popup-fade-appear, .rc-trigger-popup-fade-enter, .rc-trigger-popup-fade-leave {
    animation-duration: .3s;
    animation-fill-mode: both;
    animation-timing-function: cubic-bezier(.55, 0, .55, .2);
    animation-play-state: paused
}

.rc-trigger-popup-fade-appear.rc-trigger-popup-fade-appear-active, .rc-trigger-popup-fade-enter.rc-trigger-popup-fade-enter-active {
    animation-name: rcTriggerMaskFadeIn;
    animation-play-state: running
}

.rc-trigger-popup-fade-leave.rc-trigger-popup-fade-leave-active {
    animation-name: rcDialogFadeOut;
    animation-play-state: running
}

@keyframes rcTriggerMaskFadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes rcDialogFadeOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}