.dataTables_wrapper .row {
    margin-left: 0;
    margin-right: 0;
}

.row.no-margin {
    margin-left: 0;
    margin-right: 0;
}

.field-validation-error {
    color: red;
    margin-left: 7px;
}

.input-validation-error, .input-validation-error:focus {
    border-color: red;
}

.validation-summary-errors {
    border: 1px solid #FD9;
    background-color: #FFD;
    padding: 5px;
}

.button-container {
    padding: 5px;
    margin: 2px;
    background-color: #EEE;
    color: black;
    display: block;
    width: 100%;
    border: 1px solid #AAA;
    border-radius: 4px;
}

.report-type {
}

a.report-type:hover {
    color: black;
    text-decoration: none;
}

a.report-type-active:hover {
    color: white;
    text-decoration: none;
}

.report-type.report-type-active {
    background-color: rgb(103, 183, 220);
    border: 1px solid #006;
    color: white;
}

.report-type:hover {
    opacity: 0.6;
}

.smallpadding {
    padding: 2px !important;
}

#report_period input {
    display: block !important;
    padding: 0;
    margin: 0;
    border: 0;
    outline: 0;
}

.page-sidebar, body {
    background-color: #2b3643 !important;
}

.page-sidebar i {
    color: #AAA;
}

.btn-navigation {
    background-color: #CCC;
    border-color: #DDD;
    color: #333;
}

.btn-navigation-active {
    background-color: #EEE;
    border-color: #CCC;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu {
    width: 450px;
    max-width: 500px;
}

.tooltips {
    border-bottom: 1px dotted red;
    cursor: default;
}

[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
    display: none !important;
}

.trend {
    font-weight: bold;
}

    .trend.up-trend {
        color: #faa458;
    }

    .trend.down-trend {
        color: #36c6d3;
    }

    .trend.neutral-trend {
        color: grey;
    }

#loading-spinner {
    /*background-image: url('/img/ajax-loader.gif');*/
    background-position: center top 100px;
    background-repeat: no-repeat;
    background-color: rgba(250,250,250,0.5);
    width: 100%;
    height: 100%;
    position: absolute;
    cursor: wait;
}

.individual-chart {
    height: 350px;
}

.individual-chart .inner-chart {
    height: 300px;
}

.individual-chart-lg {
    height: 650px;
}

.individual-chart-lg .inner-chart-lg {
    height: 600px;
}

.lang-flag {
    margin-top: 10px;
    padding: 4px 5px !important;
}

    .lang-flag.selected {
        
    }

    #formula-hint {
        padding: 5px 0;
    }

    #formula-hint code {
        color: teal;
    }

.ui.table td.text-center {
    text-align: center;
}
.ms-container {
    width: auto;
}
.ms-container .ms-selectable li.ms-elem-selectable, .ms-container .ms-selection li.ms-elem-selection {
    padding: 5px 10px;
}

.alarms-triggered {
    color: red;
}
.alarms-delayed {
    color: yellow;
}

.menu-disabled {
    pointer-events: none !important;
    cursor: default !important;
}

.mymodalzindex {
    z-index: 10000 !important;
}

.moment-picker {
    z-index: 10050 !important;
}

.my-clickable {
    cursor: pointer;
}

.page-toolbar {
    position: absolute;
    top: 0;
    right: 0;
}

.my-pagesize {
    padding: 6px 0 6px 0;
    border-color: #ccc;
}

.my-table-cell-button {
    padding-top: 7px !important;
    padding-bottom: 3px !important;
}
.my-table-cell-button-xs {
    padding-top: 9px !important;
    padding-bottom: 0 !important;
}

.table-chart {
    padding: 0px !important;
    vertical-align: middle !important;
}

.ag-header-cell {
    border-right: 1px solid #dde2eb;
}

.ag-cell {
    border-right: 1px solid #dde2eb !important;
}

.my-col-selector {
    width: 300px;
}

.btn-success-org {
    color: #fff;
    background-color: #5cb85c;
    border-color: #4cae4c;
}
.btn-success-org:focus,
.btn-success.focus-org {
    color: #fff;
    background-color: #449d44;
    border-color: #255625;
}

.btn-success-org:hover {
    color: #fff;
    background-color: #449d44;
    border-color: #398439;
}

.text-success-org {
    color: #2ee12e;
}


.font-weight-bold {
    font-weight: bold;
}

.my-split-btn {
    padding-left: 0 !important;
    padding-right: 0 !important;
}


@media screen and (min-height: 500px) {
    .report-graph {
        height: calc(90vh - 300px);
        width: 100%;
    }

    .report-graph5 {
        height: calc((90vh - 300px) / 5);
        width: 100%;
    }
}

@media screen and (max-height: 499px) {
    .report-graph {
        height: 100vh;
        width: 100%;
    }
}

/* Hide scrollbar for Chrome, Safari and Opera */
.table-responsive:not(.no-wrap)::-webkit-scrollbar {
    display: none;
}
/* Hide scrollbar for IE, Edge and Firefox */
.table-responsive:not(.no-wrap) {
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
}

.dropdown-auto-width .dropdown-menu {
    width: auto !important
}

.am5exporting-type-separator a {
    color: darkgrey !important;
    pointer-events: none;
}

.table-responsive.no-wrap .ui.table thead th {
    white-space: nowrap;
}
.table-responsive.no-wrap .ui.table td {
    white-space: nowrap;
}
.table-responsive.no-wrap .ng-table-pager {
    display: none;
}
.table-responsive.no-wrap .ui.table {
    margin-bottom: 0;
}
.table-responsive.no-wrap {
    margin-top: 1em;
    margin-bottom: 1em;
}
.table-responsive .allow-wrap {
    white-space: normal !important;
}

.full-width-multiselect .multiselect-parent {
    width: 100%;
}
.full-width-multiselect .form-control {
    text-align: left;
}
.full-width-multiselect .caret {
    float: right !important;
}

ds-dropdown.form-control {
    padding: 0;
    border: none;
}
    ds-dropdown.form-control .multiselect-parent {
        width: 100%;
    }
    ds-dropdown.form-control .caret {
        float: right !important;
    }
    ds-dropdown.form-control button {
        width: 100%;
        max-width: 100%;
        text-align: left;
        text-overflow: ellipsis;
        overflow: hidden;
    }

.center-box {
    display: flex;
    align-items: center;
    background-color: #dceaef;
}
    .center-box p {
        text-align: center;
        width: 100px;
    }
    .center-box .weekday1 {
        text-align: center;
        width: 16%;
        padding-left: 50px;
    }
    .center-box .weekday {
        text-align: center;
        width: 12.8%;
    }
    .center-box .dse-graph {
        background-color: white;
    }


.fa-stack {
    width: 2.5em !important;
    font-size: 100% !important;
}
    .fa-stack i {
        width: 100%;
    }
    .fa-stack .fa-stack-1x {
        padding-top: 2px;
        font-size: 80%
    }


.details .label-icon {
    border-radius: 3px !important;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
    margin-right: 5px;
}

.active-nav-link {
    background-color: #434b5b !important;
}
    .active-nav-link .selected {
        display: block;
        float: right;
        position: absolute;
        right: 0;
        top: 8px;
        background: 0 0;
        width: 0;
        height: 0;
        border-top: 12px solid transparent;
        border-bottom: 12px solid transparent;
        border-right: 12px solid #fff;
    }

.page-title {
    margin: 0 0 20px 0 !important;
}
.page-title h3 {
    margin: 0;
}

.wide-tooltip .tooltip-inner {
    max-width: 600px;
}

.dual-listbox {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: center;
}

    .dual-listbox .list {
        flex: 1; /* each table takes equal width */
        display: flex;
        flex-direction: column;
    }
    .dual-listbox .filter-box {
        margin-bottom: 8px;
        padding: 4px;
        width: 100%;
        box-sizing: border-box;
    }
    .dual-listbox .scrollable {
        max-height: 200px;
        height: 200px;
        border: 1px solid #ccc;
        overflow-y: auto;
    }

    .dual-listbox table {
        width: 100%;
        border-collapse: collapse;
    }
    .dual-listbox .buttons {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .dual-listbox tr {
        cursor: pointer;
    }
        .dual-listbox tr:hover {
            background: #f0f0f0;
        }
        .dual-listbox tr.drag-over {
            background: #d0e7ff !important; /* highlight drop target */
        }


.dseinfo-modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 1000;
}
.dseinfo-modal-window {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 0;
    border-radius: 8px;
    z-index: 1001;
    height: 50vw;
    width: 50vw;
    display: flex;
    flex-direction: column;
    transition: height 1s;
}
    .dseinfo-modal-window iframe {
        flex: 1;
        width: 100%;
        border: none;
    }


.diff-container {
    font-family: monospace;
    white-space: pre-wrap;
    line-height: 1.4em;
}
    .diff-container .diff-added {
        background: #c8f7c5;
    }
    .diff-container .diff-removed {
        background: #f7c5c5;
        text-decoration: line-through;
    }
    .diff-container .diff-clipped {
        color: #aaa;
        font-style: italic;
    }
    .diff-container .original-text {
        background: #ebcdcd;
        color: #555;
    }
    .diff-container .new-text {
        background: #eefaf1;
        color: #222;
    }

.qr-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
}

.qr-box {
    background: white;
    border-radius: 12px;
    padding: 1rem;
    text-align: center;
    width: 90%;
    max-width: 400px;
}

.qr-status {
    margin-top: 0.5rem;
    font-size: 0.9rem;
    color: #555;
}

.qr-cancel {
    margin-top: 0.75rem;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 8px;
    background: #ef4444;
    color: white;
    cursor: pointer;
}

/* theme */
body {
    font-family: "Open Sans",sans-serif;
}

.panel-heading {
    background: #eee;
}

.badge-danger {
    background-color: #ed6b75;
    background-image: none
}

.modal .modal-dialog {
    z-index: 10051;
    margin-top: 60px;
}

.page-container {
    display: flex;
}
.page-sidebar-wrapper {
    flex: 0;
}
.page-content-wrapper {
    flex: 1;
    background-color: white;
    overflow: hidden;
}
    .page-content-wrapper .page-content {
        margin-left: 0;
    }

.meter-img {
    height: 30px;
    display: block;
    margin-right: auto;
    margin-left: auto;
}


.image-preview-box {
    position: fixed;
    z-index: 99999;
    border: 1px solid #444;
    background: white;
    padding: 4px;
    pointer-events: none;
}

.image-preview-box img {
    max-width: 300px;   /* size of preview */
    max-height: 300px;
}

.ag-header-cell.hide-header-text .ag-header-cell-text {
    display: none;
}

.btn-success {
    background-color: #36c6d3;
    border-color: #2bb8c4;
}
.btn-success.active, .btn-success:active, .btn-success:hover {
    background-color: #27a4b0;
    border-color: #208992;
}
.btn-success.focus, .btn-success:focus {
    background-color: #27a4b0;
    border-color: #14565c;
}
.btn-success.active.focus, .btn-success.active:focus, .btn-success.active:hover, .btn-success:active.focus, .btn-success:active:focus, .btn-success:active:hover, .open > .dropdown-toggle.btn-success.focus, .open > .dropdown-toggle.btn-success:focus, .open > .dropdown-toggle.btn-success:hover {
    background-color: #208992;
    border-color: #14565c;
}
.btn-info {
    background-color: #659be0;
    border-color: #508edb;
}
.btn-info.active, .btn-info:active, .btn-info:hover {
    background-color: #3a80d7;
    border-color: #286ec5;
}
.btn-info.focus, .btn-info:focus {
    background-color: #3a80d7;
    border-color: #1d4f8e;
}
.btn-info.active.focus, .btn-info.active:focus, .btn-info.active:hover, .btn-info:active.focus, .btn-info:active:focus, .btn-info:active:hover, .open > .btn-info.dropdown-toggle.focus, .open > .btn-info.dropdown-toggle:focus, .open > .btn-info.dropdown-toggle:hover {
    background-color: #286ec5;
    border-color: #1d4f8e;
}

.m-0 {
    margin: 0 !important;
}

.m-1 {
    margin: .25rem !important;
}

.m-2 {
    margin: .5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mr-0 {
    margin-right: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.ml-0 {
    margin-left: 0 !important;
}

.mx-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.my-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.mt-1 {
    margin-top: .25rem !important;
}

.mr-1 {
    margin-right: .25rem !important;
}

.mb-1 {
    margin-bottom: .25rem !important;
}

.ml-1 {
    margin-left: .25rem !important;
}

.mx-1 {
    margin-left: .25rem !important;
    margin-right: .25rem !important;
}

.my-1 {
    margin-top: .25rem !important;
    margin-bottom: .25rem !important;
}

.mt-2 {
    margin-top: .5rem !important;
}

.mr-2 {
    margin-right: .5rem !important;
}

.mb-2 {
    margin-bottom: .5rem !important;
}

.ml-2 {
    margin-left: .5rem !important;
}

.mx-2 {
    margin-right: .5rem !important;
    margin-left: .5rem !important;
}

.my-2 {
    margin-top: .5rem !important;
    margin-bottom: .5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mr-3 {
    margin-right: 1rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.ml-3 {
    margin-left: 1rem !important;
}

.mx-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.my-3 {
    margin-bottom: 1rem !important;
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mr-4 {
    margin-right: 1.5rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.ml-4 {
    margin-left: 1.5rem !important;
}

.mx-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

.mt-5 {
    margin-top: 3rem !important;
}

.mr-5 {
    margin-right: 3rem !important;
}

.mb-5 {
    margin-bottom: 3rem !important;
}

.ml-5 {
    margin-left: 3rem !important;
}

.mx-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
}

.my-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
}

.mt-auto {
    margin-top: auto !important;
}

.mr-auto {
    margin-right: auto !important;
}

.mb-auto {
    margin-bottom: auto !important;
}

.ml-auto {
    margin-left: auto !important;
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important;
}

.my-auto {
    margin-bottom: auto !important;
    margin-top: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-1 {
    padding: .25rem !important;
}

.p-2 {
    padding: .5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pr-0 {
    padding-right: 0 !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pl-0 {
    padding-left: 0 !important;
}

.px-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.pt-1 {
    padding-top: .25rem !important;
}

.pr-1 {
    padding-right: .25rem !important;
}

.pb-1 {
    padding-bottom: .25rem !important;
}

.pl-1 {
    padding-left: .25rem !important;
}

.px-1 {
    padding-left: .25rem !important;
    padding-right: .25rem !important;
}

.py-1 {
    padding-top: .25rem !important;
    padding-bottom: .25rem !important;
}

.pt-2 {
    padding-top: .5rem !important;
}

.pr-2 {
    padding-right: .5rem !important;
}

.pb-2 {
    padding-bottom: .5rem !important;
}

.pl-2 {
    padding-left: .5rem !important;
}

.px-2 {
    padding-right: .5rem !important;
    padding-left: .5rem !important;
}

.py-2 {
    padding-top: .5rem !important;
    padding-bottom: .5rem !important;
}

.pt-3 {
    padding-top: 1rem !important;
}

.pr-3 {
    padding-right: 1rem !important;
}

.pb-3 {
    padding-bottom: 1rem !important;
}

.pl-3 {
    padding-left: 1rem !important;
}

.py-3 {
    padding-bottom: 1rem !important;
    padding-top: 1rem !important;
}

.px-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.pt-4 {
    padding-top: 1.5rem !important;
}

.pr-4 {
    padding-right: 1.5rem !important;
}

.pb-4 {
    padding-bottom: 1.5rem !important;
}

.pl-4 {
    padding-left: 1.5rem !important;
}

.px-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
}

.py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

.pt-5 {
    padding-top: 3rem !important;
}

.pr-5 {
    padding-right: 3rem !important;
}

.pb-5 {
    padding-bottom: 3rem !important;
}

.pl-5 {
    padding-left: 3rem !important;
}

.px-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
}

.py-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}


/* General utilities */
.display-none,
.display-hide {
    display: none;
}

.hidden {
    display: none !important;
}

.primary-font {
    font-family: "Open Sans", sans-serif !important;
}

.bold {
    font-weight: 700 !important;
}

    .bold.btn {
        letter-spacing: 0;
    }

.sbold {
    font-weight: 600 !important;
}

    .sbold.btn {
        letter-spacing: 0;
    }

.thin {
    font-weight: 300 !important;
}

.uppercase {
    text-transform: uppercase !important;
}

.fix-margin {
    margin-left: 0px !important;
}

.border {
    border: 1px solid red;
}

.font-hg {
    font-size: 23px;
}

.font-lg {
    font-size: 18px;
}

.font-md {
    font-size: 14px;
}

.font-sm {
    font-size: 13px;
}

.font-xs {
    font-size: 11px;
}

.inline {
    display: inline;
}

.inline-block {
    display: inline-block;
}

.text-align-reverse {
    text-align: right;
}

/* Margin and padding utilities */
.no-space {
    margin: 0px !important;
    padding: 0px !important;
}

.no-margin {
    margin: 0;
}

/* Cubic Bezier Transition */
/***
Login page
***/
/* bg color */
.login {
  background-color: #364150 !important; }

.login .logo {
  margin: 0 auto;
  margin-top: 60px;
  padding: 15px;
  text-align: center; }

.login .content {
  background-color: white;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  -o-border-radius: 7px;
  border-radius: 7px;
  width: 400px;
  margin: 40px auto 10px auto;
  padding: 30px;
  padding-top: 10px;
  overflow: hidden;
  position: relative; }

.login .content h3 {
  color: #4db3a5;
  text-align: center;
  font-size: 28px;
  font-weight: 400 !important; }

.login .content h4 {
  color: #555; }

.login .content .hint {
  color: #999;
  padding: 0;
  margin: 15px 0 7px 0; }

.login .content .login-form,
.login .content .forget-form {
  padding: 0px;
  margin: 0px; }

.login .content .form-control {
  border: none;
  background-color: #dde3ec;
  height: 43px;
  color: #8290a3;
  border: 1px solid #dde3ec; }
  .login .content .form-control:focus, .login .content .form-control:active {
    border: 1px solid #c3ccda; }
  .login .content .form-control::-moz-placeholder {
    color: #8290a3;
    opacity: 1; }
  .login .content .form-control:-ms-input-placeholder {
    color: #8290a3; }
  .login .content .form-control::-webkit-input-placeholder {
    color: #8290a3; }

.login .content select.form-control {
  padding-left: 9px;
  padding-right: 9px; }

.login .content .forget-form {
  display: none; }

.login .content .register-form {
  display: none; }

.login .content .form-title {
  font-weight: 300;
  margin-bottom: 25px; }

.login .content .form-actions {
  clear: both;
  border: 0px;
  border-bottom: 1px solid #eee;
  padding: 25px 30px 25px 30px;
  margin-left: -30px;
  margin-right: -30px; }
  .login .content .form-actions > .btn {
    margin-top: -2px; }

.login-options {
  margin-top: 30px;
  margin-bottom: 30px;
  overflow: hidden; }

.login-options h4 {
  float: left;
  font-weight: 600;
  font-size: 15px;
  color: #7d91aa !important; }

.login-options .social-icons {
  float: right;
  padding-top: 3px; }

.login-options .social-icons li a {
  border-radius: 15px 15px 15px 15px !important;
  -moz-border-radius: 15px 15px 15px 15px !important;
  -webkit-border-radius: 15px 15px 15px 15px !important; }

.login .content .form-actions .checkbox {
  margin-left: 0;
  padding-left: 0; }

.login .content .forget-form .form-actions {
  border: 0;
  margin-bottom: 0;
  padding-bottom: 20px; }

.login .content .register-form .form-actions {
  border: 0;
  margin-bottom: 0;
  padding-bottom: 0px; }

.login .content .form-actions .btn {
  margin-top: 1px; }

.login .content .form-actions .btn {
  font-weight: 600;
  padding: 10px 20px !important; }

.login .content .form-actions .btn-default {
  font-weight: 600;
  padding: 10px 25px !important;
  color: #6c7a8d;
  background-color: #ffffff;
  border: none; }

.login .content .form-actions .btn-default:hover {
  background-color: #fafaff;
  color: #45b6af; }

.login .content .forget-password {
  font-size: 14px;
  float: right;
  display: inline-block;
  margin-top: 10px; }

.login .content .check {
  color: #8290a3; }

.login .content .rememberme {
  margin-left: 8px; }

.login .content .create-account {
  margin: 0 -40px -30px -40px;
  padding: 15px 0 17px 0;
  text-align: center;
  background-color: #6c7a8d;
  -webkit-border-radius: 0 0 7px 7px;
  -moz-border-radius: 0 0 7px 7px;
  -ms-border-radius: 0 0 7px 7px;
  -o-border-radius: 0 0 7px 7px;
  border-radius: 0 0 7px 7px; }
  .login .content .create-account > p {
    margin: 0; }

.login .content .create-account p a {
  font-weight: 600;
  font-size: 14px;
  color: #c3cedd; }

.login .content .create-account a {
  display: inline-block;
  margin-top: 5px; }

/* footer copyright */
.login .copyright {
  text-align: center;
  margin: 0 auto 30px 0;
  padding: 10px;
  color: #7a8ca5;
  font-size: 13px; }

@media (max-width: 440px) {
  /***
  Login page
  ***/
  .login .logo {
    margin-top: 10px; }
  .login .content {
    width: 280px;
    margin-top: 10px; }
  .login .content h3 {
    font-size: 22px; }
  .forget-password {
    display: inline-block;
    margin-top: 20px; }
  .login-options .social-icons {
    float: left;
    padding-top: 3px; }
  .login .checkbox {
    font-size: 13px; } }

