@charset "utf-8";
* { margin: 0px; padding: 0; }
body { width: 100%; min-width: 1200px; background-color: #f2f2f2; color: #333; font-family: Helvetica Neue, helvetica, arial, PingFang SC, Hiragino Sans GB, Heiti SC, Microsoft YaHei, WenQuanYi Micro Hei, sans-serif; }
a { cursor: pointer; }
a:hover { text-decoration: none; }
table { border-collapse: collapse; }

/* login */
@media (min-width:640px) {
    .login-container { width: 300px; padding: 60px 120px; }
}
@media (max-width:639px) {
    .login-container { width: 70%; padding: 60px 10%; }
}
.particles { background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; width: 100%; height: 99vh; position: absolute; top: 0; left: 0; }
.login-container { height: auto; position: relative; top: 50%; transform: translateY(-50%); margin: 0 auto; background: #fff; border-radius: 5px; box-shadow: 0px 0px 10px 5px #4664d1; }
.login { width: 100%; height: 100vh; background: radial-gradient(at center, #4664d1, #2c49b3); }
.login-title { margin-bottom: 20px; font-size: 22px; font-weight: 700; text-align: center; }
.login .layui-tabs-header { display: flex; font-size: 16px; font-weight: 700; color: #333; text-align: center; border: none; }
.login .layui-tabs-header::after,
.layui-tabs-scroll::after { border-bottom: none; }
.login .layui-tabs-header li { width: 50%; }
.login .layui-tabs-header .layui-this { color: #4664d1; }
.login .layui-tabs-header .layui-this::after { border-bottom-color: #4664d1; }
.login .layui-tabs-header li:hover { color: #4664d1; }

/*common*/
.coder-tc { text-align: center !important; }
.coder-icon { width: 14px; height: 14px; }
.coder-line-height { line-height: 30px; }
.coder-view-image { cursor: pointer; }

/*header*/
.coder-header { width: 100%; height: 60px; border-bottom: 1px solid #eee; background-color: white; display: flex; align-items: center; }
.coder-header-logo { width: 200px; text-align: center; }
.coder-header-logo img { height: 30px; padding: 15px 0; }
.coder-header-menu { margin-left: auto; margin-right: 20px; display: flex; }
.coder-header-menu a { margin-left: 20px; line-height: 60px; }
.coder-header-menu .layui-form-select { margin-top: 10px; z-index: 20010518; }

/* main */
.coder-main { display: flex; height: calc(100vh - 61px); }

/* sidebar */
.coder-sidebar { width: 200px; border-right: 1px solid #eee; background-color: #fff; overflow-y: auto; }
.coder-sidebar-content { padding-top: 20px; }
.coder-sidebar .layui-nav-tree { background: #fff; }
.coder-sidebar .layui-nav-tree .layui-nav-item a { height: 50px; line-height: 50px; color: #333; }
.coder-sidebar .layui-nav-tree .layui-nav-item > a { padding: 0 20px; }
.coder-sidebar .layui-nav-tree .layui-nav-item > a > i { margin-right: 5px; }
.coder-sidebar .layui-nav-tree .layui-nav-item > a .layui-nav-more { padding: 0; }
.coder-sidebar .layui-nav-tree .layui-nav-itemed > a { color: #333 !important; }
.coder-sidebar .layui-nav-tree .layui-nav-itemed > .layui-nav-child { padding: 0; line-height: 50px; background: #fff !important; }
.coder-sidebar .layui-nav-tree .layui-nav-child { background: #fff; }
.coder-sidebar .layui-nav-tree .layui-nav-child dd a { padding-left: 43px; }
.coder-sidebar .layui-nav-tree .layui-this,
.coder-sidebar .layui-nav-tree .layui-this a { background-color: #4664D1 !important; color: #fff !important; }

/* content */
.coder-content { padding: 20px; width: calc(100% - 242px); overflow-x: hidden; overflow-y: auto; }
.coder-box { padding: 20px; background-color: #fff; border-radius: 5px; }
.coder-search { position: relative; padding: 20px; margin-bottom: 15px; background: #f4f4f7; border-radius: 5px; z-index: 19890804; }
.coder-search .layui-form-item:last-child { margin-bottom: 0px; }
.coder-search .layui-form-item .layui-form-label { padding: 9px 0; }
.coder-search .layui-form-item .layui-input-block { margin-left: 90px; }
.coder-search .layui-form-item .layui-input-block input { border-radius: 5px; }
.coder-search > .layui-inline { margin: 5px 10px 5px 0; }
.coder-tabs .layui-tabs-header { display: flex; }
.coder-tabs .layui-tabs-header .coder-back { color: #c2c2c2; padding-left: 0; }
.coder-tabs .layui-tabs-header .coder-back::after { border-bottom-color: #fff; }
.coder-tabs .layui-tabs-header .coder-tabs-state { margin-left: auto; margin-top: 5px; font-size: 14px; }
.coder-index { height: 291px; }
.coder-index li { line-height: 57px; border-bottom: 1px dashed #ddd; }
.coder-index li a { display: flex; width: 100%; }
.coder-index li a .coder-index-line { margin-top: 22px; width: 3px; height: 15px; display: block; }
.coder-index li a .coder-index-title { margin-left: 10px; }
.coder-index li a .coder-index-value { margin-left: auto; }
.coder-device { width: calc(100% - 40px); display: flex; }
.coder-device-pic { width: 255px; }
.coder-device-pic img { width: 100%; }
.coder-device-state { width: calc(100% - 280px); margin-left: 20px; }
.coder-device .layui-table { background: none; margin: 0; }
.coder-device .layui-table td { border: 1px solid #fff; }
.coder-device .device-item-status { min-height:140px; }

/*map*/
.map-main { width: 100%; height: 630px; z-index: 1; overflow: hidden; }
.map-search-input,
.map-search-input:hover,
.map-search-input:focus { border-color: #4664d1 !important; }

/*echarts*/
.coder-echarts { width: 100%; height: 300px; }
.coder-echarts-store { width: 100%; height: 300px; margin-bottom: 30px; }

/*upload*/
.upload { width: 150px; height: 150px; line-height: 150px; text-align: center; border: 1px dashed #e2e2e2; cursor: pointer; }
.upload p { margin-top: 40px; line-height: 30px; color: #ccc; }
.upload p i { font-size: 50px; color: #009688; }
.upload-view { width: 150px; height: 150px; line-height: 150px; text-align: center; border: 1px dashed #e2e2e2; position: relative; }
.upload-view img { max-width: 140px; max-height: 140px; vertical-align: middle; display: inline; }
.upload-del { position: absolute; left: 135px; top: -15px; width: 30px; height: 30px; line-height: 30px; cursor: pointer; z-index: 100; }
.upload-del i { font-size: 30px; color: #ff5722; }

/*phone*/
.phone { width: 100%; background-color: #f4f4f7; color: #333; font-size: 12px; line-height: 180%; }
.phone-header { width: 90%; padding: 0 5%; height: 50px; line-height: 50px; background: #fff; display: flex; }
.phone-header a.back { display: block; width: 50px; }
.phone-header span { display: block; width: calc(100% - 100px); text-align: center; font-size: 14px; font-weight: bold; }
.phone-container { width: 90%; margin: 0 auto; padding: 20px 0; }
.phone-coder-box { width: calc(100% - 40px); height: auto; padding: 0 20px; background: #fff; border-radius: 10px; }
.phone-coder-none { text-align: center; color: #999; }
.phone-coder-box-list { padding: 5px 0; }
.phone-coder-box-list li { padding: 15px 0; border-top: 1px dashed #d8d8d8; }
.phone-coder-box-list li:first-child { border-top: none; }
.phone-coder-box-list li a { display: flex; flex-wrap: wrap; }
.phone-coder-box-list li p { width: 50%; height: 25px; line-height: 25px; font-size: 14px; }
.phone-coder-box-list li p:nth-child(2n) { text-align: right; }

/*layui*/
.layui-font-blue { color: #4664d1 !important; }
.layui-bg-blue { background-color: #4664d1 !important; }
.layui-btn-sm { line-height: 28px; }
.layui-btn-xs { line-height: 20px; }
.layui-btn-primary:hover { border-color: #d2d2d2; }
.layui-tabs { margin-top: 0; margin-bottom: 20px !important; }
.layui-tabs-header li:hover,
.layui-tabs-header .layui-this { color: #4664d1; }
.layui-tabs-header .layui-this::after { border-bottom-color: #4664d1; }
.layui-tabs-header li span { position: relative; padding: 0 6px; font-size: 12px; text-align: center; background-color: #333; color: #fff; border-radius: 8px; height: 18px; line-height: 18px; margin-left: 5px; }
.layui-form-select dl dd.layui-this { background: #4664D1; color: #fff; }
.layui-table td { word-break: break-all; }
.layui-table img { max-width: 80px; max-height: 25px; display: inline; }
.layui-table-tool-self .layui-inline i.layui-icon { margin-left: -1px; }
.layui-layer .layui-layer-content { overflow: visible !important; }