body {
    padding-top:70px !important;
    padding-bottom: 30px !important;
}

.container-fluid{
    max-width: 1680px;
    width: 95vw;
    margin: 0 auto;
}

.container-fluid::-webkit-scrollbar {
    display: none;
}

.nezha {
    min-height: calc(100vh - 100px);
}

/* 导航部分 开始*/
.navbar {
    min-height: 40px !important;
    margin:0 auto;
    font-size: 14px;
    z-index:99999999;
}

.navbar-inverse{
    background-image: none;
    background-color: #1C2127;
    box-shadow: 0 1px 40px -8px #00000080;
}

.navbar-inverse .navbar-toggle:focus,
.navbar-inverse .navbar-toggle:hover {
    background-color: #1C2127;
}

.navbar .navbar-collapse:not([aria-expanded]) .navbar-nav .dropdown-toggle {
    margin-top: 18px;
    padding: 0 !important;
}

.navbar .navbar-toggle {
    margin-right:0
}

.navbar .navbar-brand {
    font-size: 20px;
    text-align: center;
    padding:12px 0 0 0;
    margin-right:30px;
}

.navbar .node-cell-expand {
    word-break: break-all;
}

.navbar .dropdown a{
    cursor: pointer;
}

.navbar .dropdown .dropdown-toggle {
    padding-bottom: 10px;
    padding-top: 10px;
}

.navbar .navbar-nav {
    margin:0px -15px;
}

.navbar .navbar-nav > li > a {
    color:#f1f1f1;
}

.navbar-nav li a span{
    margin-right: 4px;
}

.navbar .navbar-collapse{
    max-height: 500px;
}
/* 导航部分 结束 */


/* toolbox 开始 */
.toolbox {
    position: fixed;
    bottom:20px;
    right: 12px;
    z-index: 999999;
}

.toolbox span{
    display: block;
    width: 2.75rem;
    margin-bottom: 10px;
}

.toolbox i{
    display: block;
    color: rgba(241,241,241,1);
    cursor: pointer;
    border-radius: 5px;
    font-size: 1.5rem;
    height: 2.75rem;
    width: 2.75rem;
    line-height: 2.75rem;
    text-align: center;
}

.toolbox .toggleView i.show-nogroup {
    font-size: 1.85rem;
}

.toolbox .setTheme i.setTheme-dark {
    font-size: 1.35rem;
}

.toolbox .setTheme i.setTheme-light {
    font-size: 1.45rem;
}

.toolbox .showGoTop i.goTop {
    font-size: 1.55rem;
}
/* toolbox 结束 */


/* 正文部分 开始 */
.content {
    padding: 20px;
    border-radius: 5px;
    margin-bottom: 20px;
}

.table {
    margin-bottom: 0;
    border-collapse: collapse;
    border-radius: 3px;
}

.table-responsive{
    border: none;
}

.table th, .table td {
    text-align: left;
}

.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > thead > tr > th {
    position: relative;
    border:none; 
    line-height:20px;
}

.table > tbody > tr > td:before,
.table > tbody > tr > th:before,
.table > tfoot > tr > td:before,
.table > tfoot > tr > th:before,
.table > thead > tr > td:before,
.table > thead > tr > th:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0.7px;
}

table.monitor-detail{
    margin:5px 0px 10px 0px;
}

tr.accordion-toggle{
    cursor:pointer;
}

.table .network-thead-tr th,
.table .node-group-tag th{
    font-size: 18px;
    padding-bottom:15px;
}

.table .node-cell-os-text {
    text-transform: capitalize;
}

.progress {
    margin-bottom: 0;
}

.progress-bar {
    text-align: center !important;
    padding-left: 5px;
}

.expandRow > td {
    padding: 0 !important;
    border-top: 0 !important;
}

.accordian-body{
    margin: 10px 0px 10px 18px;
}

.node-cell.center {
    text-align: center !important;
}

.node-cell.status .status-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 20px
}

.node-cell.status .status-icon {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    text-align: center;
}

.node-cell.os .icon.windows {
    margin-right: 0 !important;
    width: 14px;
}

.node-cell.location .flag {
    margin-right: 0 !important;
}

.node-cell.network {
    min-width: 110px;
    max-width: 110px;
}

.node-cell.traffic {
    min-width: 100px;   
}

.node-cell.cpu, .node-cell.ram, .node-cell.hdd, .node-cell.memory {
    min-width: 50px;
    max-width: 50px;
}

.node-cell.remaining {
    min-width: 65px;
    max-width: 65px;    
}

.node-cell.remaining .additional {
    position: absolute;
    left: 0; 
    font-size: 12px;
    text-align: center;
    width: 100%;
}

.node-cell.remaining .additional small{
    white-space: nowrap;
    font-size: 80%;
}

.plan {
    display: inline-block;
    font-size: 85%;
    margin-right: 2px;
    padding: 2px 5px;
    border-radius: 2px;
}

.network-route, .extra {
    margin-right: 6px;
}

.last {
    margin-right: 2px;
}

.temp-detail {
    cursor: pointer;
}

/*agent详情下拉速度*/
.collapsing{
    -webkit-transition-property:height,visibility;
    -o-transition-property:height,visibility;
    transition-property:height,visibility;
    -webkit-transition-duration:.15s;
    -o-transition-duration:.15s;
    transition-duration:.15s;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear
}
/*正文结束*/

/* 服务页 正文*/
.service-status {}

.service-status .service-status-th{
    min-width:60px;
}

.service-status .service-name-th{
    min-width:50px;
}

.service-status .service-averagelatency-th{
    min-width:80px;
}

.service-status .service-30daysonline-th{
    min-width:80px;
}

.service-status .delay-today {
    display: flex;
    align-items: center;
    justify-content: left;
}

.service-status .delay-today i {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    text-align: center;
    background-color: grey;
    margin-right: 0.3em;
}

.service-day-status-icon {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-right: 4px;
    margin-bottom: -3.25px;
    border-radius: 3px;
    box-shadow: inset 0 2px 2px rgba(0, 0, 0, .1);
}

.service-status .tooltip-inner {
    max-width: 500px;
}

td.ping-network-quality {
    width: 600px;
}
/* 服务页 正文结束 */

/* 网络页 正文*/
.network-box .btn-group.open .dropdown-toggle {
    box-shadow:unset;
}

.network-box .network-box-header {
    font-size: 18px;
    padding: 5px 0px 15px 5px;
    cursor: pointer;
    width: 100%;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.network-box .network-box-header .dropdown-menu {
    max-height: 22.5em;
    overflow-y: auto;
    z-index:99999998;
    min-width: 200px;
    padding: 0px;
}

.network-box .network-box-header .dropdown-menu::-webkit-scrollbar {
    display: none;
}

.network-box .network-box-header .dropdown-menu li {
    height: 2em;
    cursor: pointer;
}

.network-box .network-box-header .dropdown-menu li.input-group {
    margin: 0 auto;
    display: flex;
    position: sticky;
    top: 0;
    z-index: 99999997;
}

.network-box .network-box-header .dropdown-menu li.input-group input {
    width: 100%;
    height: 2em;
    border-top: none;
    border-left: none;
    border-right: none;
}

.network-box .network-box-header .dropdown-menu li a {
    padding: 5px 5px 5px 15px;
}

.network-box .network-box-header .dropdown-menu li.hidden {
    height: 0;
    display: none;
    visibility:hidden;
}

.network-box .network-box-header .dropdown-menu li.visible {
    display: block;
}

.network-box .chartTitle {
    cursor: pointer;
    text-align: center;
    font-size: 18px;
    margin: 18px 0px 15px 0px;
}

.network-box .chartTitle i.chartCountryCode {
    font-size: 16px;
    border-radius: 12.5%;
}

/* 网络页 正文结束 */

/* 地图版服务器分布图 */
#mapChartBox {
    z-index: 999999999;
    padding-left: 0 !important;
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: hidden;
}

.modal-dialog-centered {
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
    display: flex;
    align-items: center; /* 垂直居中 */
    justify-content: center; /* 水平居中 */
    min-height: calc(100%) /* 确保模态框占据整个视口高度 */
}

.modal-content {
    display: flex;
    flex-direction: column;
    pointer-events: auto;
    border-radius: unset;
    border: none;
}

.modal-header {
    position: relative;
}

.modal-header h4 {
    cursor: pointer;
}

.modal-header i.xclose {
    cursor: pointer;
    position: absolute;
    font-size: 30px;
    top: 12px;
    right: 10px;
}

.modal-body {
    padding: 0px;
}

a.template-item, a.cdn-item {
    display: block;
}

footer {
    padding-bottom: 20px;
}

footer p {
    text-align: center;
    font-size: 10px;
}

@media only screen and (max-width: 1200px) {
    .accordian-body {
        margin: 5px 0px 5px 10px;        
    }
    table.monitor-detail {
        margin:0px 0px 2px 0px;
    }
    .table .network-thead-tr th,
    .table .node-group-tag th {
        font-size:16px;
        padding-bottom:6px;
    }
}

/* 彩虹旗 */
.fi-rb {
    background-image: url(/static/theme-server-status/img/rb.png);
}

@media only screen and (max-width: 767px) {
    body {
        font-size: 10px !important;
        padding-top:60px !important;
    }
    .nezha {
        min-height: calc(100vh - 90px);
        min-height: calc(var(--vh, 1vh) * 100 - 90px);
    }
    #chartbox {
        min-height: calc(100vh - 170px);
        min-height: calc(var(--vh, 1vh) * 100 - 170px);    
    }
    .content {
        padding: 0;
        margin-bottom: 10px;
    }
    footer {
        padding-bottom: 10px;
    }
    .cycle-transfer-stats .dataTables_wrapper {
        margin-bottom: -10px;
    }
    .navbar .navbar-nav .open .dropdown-menu>li>a {
        color: #f1f1f1;
    }
    .navbar .navbar-nav .open .dropdown-menu {
        list-style-image: initial;
        background-color: #181a1b;
        border-color: rgba(140, 130, 115, 0.15);
        box-shadow: rgba(0, 0, 0, 0.18) 0px 6px 12px;
    }
    .table > tbody > tr > td:before,
    .table > tbody > tr > th:before,
    .table > tfoot > tr > td:before,
    .table > tfoot > tr > th:before,
    .table > thead > tr > td:before,
    .table > thead > tr > th:before {
        height: 0.5px;
    }
    .node-cell.os,
    .node-cell.uptime,
    .node-cell.traffic {
        display: none;
        visibility: hidden;
    }
    .node-cell.location {
        display: table-cell;
        visibility: visible;
    }
    .node-cell-os-text,.node-cell-location-text {
        display: none;
        visibility: hidden;
    }
    .node-cell.network {
        min-width: 95px;
        max-width: 95px;
    }
    .node-cell.remaining {
        min-width: 75px;
        max-width: 75px;    
    }
    .plan {
        display: inline;
    }
    .accordian-body {
        margin: 5px 0px 5px 10px;        
    }
    table.monitor-detail {
        margin:0px 0px 2px 0px;
    }
    .table .network-thead-tr th,
    .table .node-group-tag th {
        font-size:14px;
        padding-bottom:6px;
    }
    .table tr.network td {
        font-size: 12px;
    }
    .service-status .service-status-th {
        min-width:30px;
    }
    .service-status .delay-today {
        margin-top:4px;
        justify-content: center;
    }
    .service-status .delay-today i {
        margin-right:0px;
    }
    .service-status .delay-today-text {
        display: none;
        visibility: hidden;
    }
    .service-status .service-averagelatency-th {
        min-width:70px;
    }
    .service-status .service-30daysonline-th {
        min-width:75px;
    }
    .toolbox {
        right: 18px;
    }
    td.ping-network-quality {
        width: 110px;
    }
    .network-box .network-box-header {
        margin: 8px 0px 0px 8px;
        font-size: 16px;
        border-bottom: none;
    }
    .network-box .chartTitle {
        font-size: 16px;
        margin: 10px 0px 10px 0px;
    }
    .network-box .chartTitle i.chartCountryCode {
        font-size: 15px;
        border-radius: 12.5%;
    }
}

@media only screen and (min-width: 768px) {
    .pl-md-unset {
        padding-left: unset !important;
    }
}