﻿html {
    position: relative;
    min-height: 100%;
}

body {
    margin-top: 50px;
    margin-bottom: 52px;
    font-family: Roboto, "Helvetica Neue", sans-serif;
    background-color: #f8f7f2;
}

@media (max-width: 767px) {
    body {
        margin-bottom: 200px;
    }
}

/* generic pointer cursor on clickable angular elements */
[ng-click],
[data-ng-click],
[x-ng-click] {
    cursor: pointer;
}

.wrap {
    white-space: normal !important;
}

.clickable {
    cursor: pointer;
}

th a {
    color: inherit;
}

    th a:hover, th a:focus {
        text-decoration: none;
    }

/**
 *   SITE SPECIFIC 
 *
 */
.custom-navbar {
    background: #f48b31;
    /*font-size: 16px;*/
    min-height: 50px;
}

    .custom-navbar .language-button {
        margin: 0;
        padding: 0px 10px;
        border: none;
        height: 50px;
        background-color: transparent;
        font-size: 24px;
        display: block;
        color: #eee;
    }

    .custom-navbar .navbar-brand {
        height: 50px;
        line-height: 24px;
    }

        .custom-navbar .navbar-brand > img#neevo-icon {
            margin-top: -7px;
            max-height: 34px;
        }

    .custom-navbar .navbar-nav > li > a {
        color: #fff;
        text-shadow: 0 1px 0 rgba(50,50,50,.50);
        display: flex;
        flex-direction: row;
        /*justify-content: center;*/
        /*align-items: center;*/
        line-height: 20px;
    }

        .custom-navbar .navbar-nav > li > a:hover,
        .custom-navbar .navbar-nav > li > a:focus {
            background: rgba(255,255,255,0.2);
            text-shadow: 0 1px 0 rgba(20,20,20,.50);
        }

        .custom-navbar .navbar-nav > li > a.nav-company-name {
            max-width: 200px;
        }

            .custom-navbar .navbar-nav > li > a.nav-company-name .nav-label {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
            }

        .custom-navbar .navbar-nav > li > a .nav-icon {
            color: #fff;
            line-height: 20px;
        }

        .custom-navbar .navbar-nav > li > a .nav-label {
        }

        .custom-navbar .navbar-nav > li > a .nav-icon + .nav-label {
            margin-left: 5px;
        }

    .custom-navbar .navbar-nav > li.active > a {
        box-shadow: 0 0 15px rgba(50,50,50,0.2) inset;
        border-left: 1px solid rgba(0,0,0,0.5);
        border-right: 1px solid rgba(0,0,0,0.5);
        padding: 15px 14px;
        background: rgba(255,255,255,0.4);
    }

    .custom-navbar .nav .open > a,
    .custom-navbar .nav .open > a:hover,
    .custom-navbar .nav .open > a:focus {
        box-shadow: 0 0 15px rgba(50,50,50,0.2) inset;
        border-left: 1px solid #c6610b;
        border-right: 1px solid #c6610b;
        padding: 15px 14px;
        background: #f7af71;
    }

    .custom-navbar .navbar-toggle {
        margin: 8px 15px;
    }

        .custom-navbar .navbar-toggle .icon-bar {
            background: #fff;
        }

@media (max-width: 767px) {
    .custom-navbar .navbar-collapse {
        box-shadow: 0px 10px 10px rgba(0,0,0,0.4);
    }

    .custom-navbar .nav {
    }

        .custom-navbar .nav .open > a,
        .custom-navbar .nav .open > a:hover,
        .custom-navbar .nav .open > a:focus {
            border-left: none;
            border-right: none;
            padding: 20px 15px;
        }

    .custom-navbar .navbar-nav > li {
        border-top: 1px solid #c6610b;
    }

        .custom-navbar .navbar-nav > li > a {
            font-size: 20px;
            padding: 20px 15px;
        }

            .custom-navbar .navbar-nav > li > a.nav-company-name {
                max-width: 100%;
            }

            .custom-navbar .navbar-nav > li > a .nav-icon {
                font-size: 20px;
                margin-left: 7px;
                margin-right: 7px;
            }

            .custom-navbar .navbar-nav > li > a .nav-label {
            }

        .custom-navbar .navbar-nav > li .dropdown-menu {
            background: rgba(0,0,0,0.03);
            border-radius: 0;
            border-bottom: 1px solid #c6610b;
            box-shadow: 0 0 15px rgba(50,50,50,0.2) inset;
            padding-left: 30px;
        }

            .custom-navbar .navbar-nav > li .dropdown-menu > li {
                border-bottom: 1px solid #c6610b;
            }

                .custom-navbar .navbar-nav > li .dropdown-menu > li.divider {
                    display: none;
                }

                .custom-navbar .navbar-nav > li .dropdown-menu > li > a {
                    color: #fff;
                    text-shadow: 0 1px 0 rgb(50 50 50 / 50%);
                    display: flex;
                    flex-direction: row;
                    line-height: 20px;
                    font-size: 16px;
                    padding: 16px 24px;
                }

                    .custom-navbar .navbar-nav > li .dropdown-menu > li > a > span.glyphicons:first-child {
                        top: 19px;
                        right: 19px;
                        left: auto;
                    }
}

@media (min-width: 768px) {
    .custom-navbar .navbar-nav > li > a {
    }

        .custom-navbar .navbar-nav > li > a .nav-icon {
            font-size: 20px;
        }

        .custom-navbar .navbar-nav > li > a .nav-label {
        }
}

@media (min-width: 992px) {
    .custom-navbar .navbar-nav > li > a {
    }

        .custom-navbar .navbar-nav > li > a .nav-icon {
            font-size: 16px;
        }

        .custom-navbar .navbar-nav > li > a .nav-label {
        }
}

@media (min-width: 1200px) {
    .custom-navbar .navbar-nav > li > a {
    }

        .custom-navbar .navbar-nav > li > a .nav-icon {
        }

        .custom-navbar .navbar-nav > li > a .nav-label {
        }
}

.helpBox {
    padding: 15px;
}

    .helpBox h4 {
        border-bottom: 1px solid #666;
    }

.scrollable-menu {
    height: auto;
    max-height: 80vh;
    overflow-x: hidden;
}

.header-menu.secondary-menu {
    float: right;
}

.defender-logo {
    height: 17px;
    margin-left: -22px;
    margin-top: -5px;
}

.pager {
    margin-top: 0;
}

.page-header {
    position: relative;
    font-size: 24px;
    font-family: "Open Sans";
    padding: 15px 0;
    margin: 0 0 15px;
    border-bottom: 1px solid #e5e5e5;
}

.page-desc {
    margin-bottom: 15px;
}

.page-help {
    margin-bottom: 15px;
}

.page-toolbar {
    margin-bottom: 15px;
}

    .page-toolbar.row > div > .input-group + .control-label,
    .page-toolbar.row > div > .btn-group + .control-label,
    .page-toolbar.row > div > .btn + .control-label {
        margin-left: 5px;
    }

.section-header {
    position: relative;
    font-size: 22px;
    font-family: "Open Sans";
    padding: 15px 0;
    margin: 30px 0 0px;
}

footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 52px;
    z-index: 999;
    padding: 0 15px;
    background: #344654;
    color: #aaccdd;
    box-shadow: 0 -2px 5px 0 rgba(0,0,0,0.3);
}

    footer a.url {
        color: #aaccdd;
    }

        footer a.url:hover {
            color: #fff;
        }

@media (max-width: 767px) {
    footer {
        height: 200px;
    }
}

a.address {
}

    a.address:hover {
        text-decoration: none;
    }

    a.address .address-part {
        display: inline-block;
    }

        a.address .address-part + .address-part:before {
            content: ',';
            margin-right: 0.2em;
            margin-left: -0.2em;
        }

.site-alerts {
    position: fixed;
    z-index: 2000;
    top: 50px;
    right: 0px;
    margin: 5px;
}

    .site-alerts .alert {
        display: block;
        border-color: #777;
        border-width: 5px;
        max-width: 500px;
        margin: 0;
        box-shadow: -4px 8px 12px rgba(0,0,0,0.2);
    }


.alert.alert-with-icon {
    position: relative;
    padding: 15px 15px 15px 70px;
}

    .alert.alert-with-icon > .alert-icon {
        position: absolute;
        top: 15px;
        left: 15px;
        display: block;
        height: 32px;
        width: 32px;
        margin: 0 4px;
        font-size: 32px;
    }

        .alert.alert-with-icon > .alert-icon + h1,
        .alert.alert-with-icon > .alert-icon + h2,
        .alert.alert-with-icon > .alert-icon + h3,
        .alert.alert-with-icon > .alert-icon + h4,
        .alert.alert-with-icon > .alert-icon + h5,
        .alert.alert-with-icon > .alert-icon + h6 {
            line-height: 32px;
            margin: 0;
        }

@media (max-width: 767px) {
    .alert.alert-with-icon {
        padding-left: 15px;
    }

        .alert.alert-with-icon > .alert-icon {
            display: none;
        }
}

div.filters {
    position: relative;
    padding: 10px 10px 0px;
    border: 1px solid #CC9;
    background-color: #fcf8e3;
    margin-bottom: 15px;
    border-radius: 3px;
}

button.btn.legacy-highlight {
    background: #ffffff;
    background-image: linear-gradient(to bottom, #d6cdc5 0%, #ebe2da 100%);
    background-position: initial;
}

button.btn.highlight {
    background: #fff266;
    background-image: linear-gradient(to bottom, #fffcdd 0%, #fff266 100%);
    background-position: initial;
}

.input-group.highlight .input-group-addon,
.input-group.highlight > .btn-group > button,
.input-group.highlight input {
    background: #fff266;
    background-image: linear-gradient(to bottom, #fffcdd 0%, #fff266 100%);
}

    .input-group.highlight .input-group-addon span {
        color: #333;
    }

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-wrap: normal;
}

.bootstrap-select > .dropdown-toggle.bs-placeholder,
.bootstrap-select > .dropdown-toggle.bs-placeholder:hover,
.bootstrap-select > .dropdown-toggle.bs-placeholder:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder:active {
    color: initial;
}

.panel-list-container {
    position: relative;
}

.panel-list-overlay {
    position: absolute;
    /*top: 30px;*/
    bottom: 70px;
    right: 30px;
    margin: 0;
    min-width: 300px;
    border-color: #777;
    border-width: 5px;
    box-shadow: -4px 8px 12px rgba(0,0,0,0.2);
}

.panel {
    box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12);
    position: relative;
}

    .panel.panel-list {
        position: relative;
        overflow: auto;
        max-height: 640px;
    }

    .panel > .table.table-compact {
        font-size: 12px;
    }

        .panel > .table.table-compact > tbody > tr > th {
            padding: 8px 4px 7px 4px;
        }

        .panel > .table.table-compact > tbody > tr > td {
            padding: 4px;
        }

    .panel > .table th {
        white-space: nowrap;
        background: #f0f0f0;
        font-size: 14px;
        padding: 8px 8px 7px 8px;
        border-bottom: 1px solid transparent;
    }

        .panel > .table th.ordered {
            border-color: #337ab7;
            color: #337ab7;
            border-bottom: 1px solid #337ab7;
        }

        .panel > .table th order-icon {
            color: #bbb;
            margin-left: 6px;
        }


        .panel > .table th:hover order-icon,
        .panel > .table th.ordered order-icon {
            color: #337ab7;
        }

    .panel > .table.table-compact > tbody > tr > th > order-icon {
        margin-left: 0px;
        font-size: 12px;
    }

    .panel > .table td span.label {
        display: inline-block;
        height: 20px;
        line-height: 20px;
        font-weight: normal;
        padding: 0 6px;
        border-radius: 4px;
    }

    .panel > .table tr.highlight td {
        background: hsl(55, 100%, 70%);
        color: #000;
    }

    .panel > .table tr.inactive td {
        background: rgba(119, 119, 119, 0.1);
        opacity: 0.8;
    }

    .panel > .table tr.deleted td {
        background: rgba(217, 83, 79, 0.05);
        opacity: 0.8;
    }

    .panel > .table tr.selected {
        background-color: #fdefe2;
    }

    .panel > .table td,
    .panel > .table td icon,
    .panel > .table td .label {
        vertical-align: middle;
    }

        .panel > .table td span {
            line-height: 20px;
        }

            .panel > .table td span.glyphicons {
                line-height: 1;
                top: 2px;
            }

    .panel > .table .list-group {
        margin-bottom: 0;
    }

.table-no-result, .list-no-result {
    /*background: #fcfce8;*/
    text-align: center;
    font-size: 18px;
    font-style: italic;
    padding: 45px 15px;
    color: #888888;
}

.list-no-result {
    border-top: 1px solid #ddd;
}

.list-alignmiddle {
}

    .list-alignmiddle > li {
        vertical-align: middle;
    }

.table.table-narrowlabels th, .table.table-narrowlabels td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.table.table-narrowlabels th {
    width: 120px;
}

.table.table-more-details {
    border-color: #eee;
    border-bottom: none;
}

    .table.table-more-details th {
        background: transparent;
        border-color: #eee;
        vertical-align: middle;
        width: 25%;
        padding: 10px;
    }

    .table.table-more-details td {
        border-color: #eee;
        padding: 2px 5px;
        vertical-align: middle;
    }

.table-address {
    width: 100%;
    font-size: 12px;
}

    .table-address tr + tr td {
        padding-top: 5px;
    }

    .table-address td + td {
        padding-left: 5px;
    }

    .table-address .form-control {
    }

.device-actions-container {
    position: absolute;
    z-index: 10;
    padding: 10px;
    background: #fdefe2;
    border: 1px solid #ddd;
    box-shadow: 0px 3px 5px rgba(0,0,0,0.3);
}

.pagination {
    margin: 0;
}

    .pagination .glyphicons {
        top: 3px;
    }

.form-condensed .form-group {
    margin-bottom: 0;
}

.form-condensed .control-label {
    padding-top: 3px;
    text-overflow: ellipsis;
    overflow: hidden;
}

.form-condensed .form-control-static {
    padding-top: 3px;
    padding-bottom: 3px;
    min-height: 26px;
}

.form-inline.form-xs-inline .input-group {
    display: inline-table;
    vertical-align: middle;
}

    .form-inline.form-xs-inline .input-group .input-group-addon,
    .form-inline.form-xs-inline .input-group .input-group-btn,
    .form-inline.form-xs-inline .input-group .form-control {
        width: auto;
    }

.form-inline.form-xs-inline .input-group-responsive {
    width: auto;
}

.form-inline.form-xs-inline .form-group,
.form-inline.form-xs-inline .form-control {
    display: inline-block;
    width: auto;
}

.uninstalled {
    color: gray;
}

    .uninstalled td {
        background: rgba(0,0,0,0.05);
    }

    .uninstalled .label {
        background-color: #777;
    }

.input-group.selected .form-control {
    background: rgba(51,122,183,0.7);
    border: 1px solid rgba(51,122,183,1);
    font-weight: bold;
    color: #fff;
}

.device-list-group > li:nth-of-type(odd) {
    background-color: #f0f0f0;
}

.device-list-group .list-group-item {
    border: none;
    border-top: 1px solid #ddd;
    padding: 0;
    box-shadow: 0px 0px 0px rgba(0,0,0,0.5);
    transition: margin 0.3s ease, box-shadow 0.3s ease;
}

    .device-list-group .list-group-item:first-child,
    .device-list-group .list-group-item:last-child {
        border-radius: 0;
    }

    .device-list-group .list-group-item .more {
        max-height: 0px;
        opacity: 0;
        overflow: hidden;
        transition: opacity 0.4s ease, max-height 0.5s ease;
    }

    .device-list-group .list-group-item.show-more {
        /*margin: -16px;*/
        z-index: 1;
        border-top: 1px solid #aaa;
        border-bottom: 1px solid #aaa;
        box-shadow: 0px 0px 20px rgba(0,0,0,0.5);
    }

        .device-list-group .list-group-item.show-more .more {
            max-height: 600px;
            opacity: 1;
        }

.input-group.input-group-success {
}

    .input-group.input-group-success .form-control {
        background: #dff0d8;
    }

.input-group > .btn-group:first-child > .btn:last-child, .input-group > .btn-group:not(:first-child):not(:last-child) > .btn:last-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .btn-group:last-child > .btn:first-child, .input-group > .btn-group:not(:first-child):not(:last-child) > .btn:first-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.table-hover > tbody > tr:hover {
    background-color: #fdefe2;
}

.panel .panel-heading .panel-heading-btn {
    float: right;
}

    .panel .panel-heading .panel-heading-btn.btn-xs {
        margin-top: -3px;
    }

    .panel .panel-heading .panel-heading-btn.btn-sm {
        margin-top: -6px;
    }

.thumbnail_max_size {
    max-height: 100px;
}

.strike {
    text-decoration: line-through;
}

.panel-heading h1, .panel-heading h2, .panel-heading h3, .panel-heading h4 {
    margin: 0;
}

h1 .glyphicon, .h1 .glyphicon {
    top: 5px;
}

h2 .glyphicon, .h2 .glyphicon {
    top: 4px;
}

h3 .glyphicon, .h3 .glyphicon {
    top: 3px;
}

h4 .glyphicon, .h4 .glyphicon {
    top: 2px;
}

.tank-format-properties {
    font-size: 85%;
}

.tank-format-property + .tank-format-property:before {
    content: '—';
}

.dx-datagrid-rowsview .dx-data-row.selected-asset-highlight > td {
    background-color: #ffd699 !important;
}

.radio-items {
    height: auto;
    padding: 6px 6px;
    overflow: auto;
    white-space: nowrap;
}

.radio-item {
    display: inline-block;
}

    .radio-item + .radio-item {
        margin-left: 6px;
    }

/*CSS Patch for Bootstrap v3.3.6 disabled radio-button bug (https://github.com/twbs/bootstrap/issues/16703)*/
.form-control[disabled] label.radio-label {
    pointer-events: none;
}

label.radio-label {
    display: block;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 6px;
    border-radius: 3px;
    text-align: center;
    color: #777;
}

    label.radio-label:hover {
        background-color: rgba(51, 122, 183, 0.2);
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
    }

    label.radio-label.active {
        color: #fff;
        background-color: #337ab7;
    }

    label.radio-label input[type="radio"] {
        position: absolute;
        visibility: collapse;
    }

    label.radio-label .radio-img {
        display: inline-block;
        max-height: 96px;
    }

    label.radio-label .radio-text {
        display: block;
        font-weight: normal;
        margin-top: 6px;
    }

/** form validation auto message */
.form-group .help-block {
    display: none;
    margin: 8px 0px 0;
    padding: 0px 6px;
    background: #a94442;
    color: #fff;
    border-radius: 4px;
    font-size: 14px;
    line-height: 24px;
    min-height: 24px;
    position: relative;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.2);
}

    .form-group .help-block:after {
        content: '';
        position: absolute;
        top: -6px;
        left: 12px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 8px 6px 8px;
        border-color: transparent transparent #a94442 transparent;
    }

    .form-group .help-block p {
        margin: 0;
    }

div.has-error .help-block {
    display: block;
}

.ui-select-multiple.ui-select-bootstrap {
    /*padding: 4px 4px 2px 4px;*/
}

    .ui-select-multiple.ui-select-bootstrap input.ui-select-search {
        /*padding-left: 8px;
        margin-bottom: 4px;*/
    }

.ui-select-bootstrap .ui-select-toggle {
    width: 100%;
}

.ui-select-bootstrap .ui-select-choices-group > .dropdown-header {
    padding: 0px 12px;
}

.ui-select-bootstrap .ui-select-choices-row > span {
    padding: 6px 12px;
}

.btn-circle {
    width: 30px;
    height: 30px;
    text-align: center;
    padding: 6px 0;
    font-size: 12px;
    line-height: 1.42;
    border-radius: 15px;
}

.btn.btn-icon {
    padding: 8px 11px;
}

    .btn.btn-icon .glyphicons {
        display: block;
        font-size: 16px;
        top: 0px;
    }

        .btn.btn-icon .glyphicons::before {
            display: block;
        }

.input-group-addon.addon-icon {
    padding: 8px 12px;
}

    .input-group-addon.addon-icon .glyphicons {
        display: block;
        font-size: 16px;
        top: 0px;
        color: #777;
    }

        .input-group-addon.addon-icon .glyphicons::before {
            display: block;
        }

.input-group-addon.shade-picker {
    width: 34px;
    position: relative;
}

.input-group-addon .shades {
    position: absolute;
    display: none;
    top: -93px;
    left: -1px;
    border: 1px solid #ccc;
    border-radius: 3px;
    overflow: hidden;
    list-style: none;
    margin: 0;
    padding: 0;
    z-index: 10;
}

.input-group-addon:hover .shades {
    display: block;
}

.input-group-addon li.shade {
    display: block;
    width: 33px;
    height: 24px;
}

    .input-group-addon li.shade:hover {
        box-shadow: inset 5px 0 0px rgba(255,255,255,0.5);
    }

.help-icon {
    transition: all 0.5s ease;
    color: inherit;
}

    .help-icon.help-opened {
        transform: scale(3);
        color: #31708f;
    }

/** Page specific */

.ticket-wrapper {
    margin: -15px -15px 0;
}

    .ticket-wrapper hr {
        border-color: #ddd;
    }

.ticket-container {
}

.comment-wrapper {
    position: relative;
}

    .comment-wrapper hr {
        margin: 15px -15px;
        border-color: #ddd;
    }

.comment-container {
    position: relative;
    padding: 15px;
    font-size: 16px;
    border-radius: 4px;
}

    .comment-container.highlight {
        animation: comment-highlight 5s;
    }

@keyframes comment-highlight {
    0% {
        background: #ffffff;
    }

    3% {
        background: #ffd700;
    }

    6% {
        background: #ffffff;
    }

    9% {
        background: #ffd700;
    }

    12% {
        background: #ffffff;
    }

    15% {
        background: #ffd700;
    }

    100% {
        background: #ffffff;
    }
}

.comment-actions {
    opacity: 0;
    transition: opacity 0.3s ease;
}

.comment-container:hover .comment-actions,
.comment-container:focus .comment-actions {
    opacity: 1;
}

.comment-reply {
    margin: -15px -15px -15px -15px;
    padding: 30px;
    background: #f0f7f7;
    background-image: linear-gradient(to bottom,#ffffff 0,#f0f7f7 50%);
    border-radius: 4px;
}

.filter-label .clickable {
    margin: 0 10px 10px 0;
    display: block;
}

.filter-label input[type=checkbox],
.filter-label .label {
    margin: 0;
    vertical-align: middle;
}

.modal-overflow .modal-content {
    overflow: unset !important;
}

.modal-fit .modal-dialog {
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    /*margin: auto;*/
    /*padding: 10px;*/
}

.modal-fit .modal-body {
    max-height: calc(100vh - 200px);
    overflow: auto;
}

.modal-fit.modal-device .modal-body {
    max-height: calc(100vh - 420px);
}

.modal-content {
    overflow: hidden;
}

    .modal-content > .container {
        width: auto;
        padding: 0;
    }

.modal-nav {
    position: absolute;
    width: 100%;
    height: 64px;
}

    .modal-nav .modal-nav-prev,
    .modal-nav .modal-nav-next {
        position: absolute;
        top: 50px;
        width: 64px;
        height: 64px;
        background: #eee;
        text-align: center;
        border: 1px solid #333;
        border-radius: 6px;
        overflow: hidden;
    }

    .modal-nav .modal-nav-prev {
        left: -40px;
        text-align: left;
        box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
    }

        .modal-nav .modal-nav-prev:hover {
            left: -45px;
        }

    .modal-nav .modal-nav-next {
        right: -40px;
        text-align: right;
        box-shadow: -3px 3px 5px rgba(0,0,0,0.5);
    }

        .modal-nav .modal-nav-next:hover {
            right: -45px;
        }

    .modal-nav button {
        margin: 0 7px;
        height: 100%;
        background: transparent;
        border: none;
        text-decoration: none;
        padding: 0;
    }

        .modal-nav button span {
            top: 0;
            line-height: 62px;
            font-size: 32px;
        }

.modal-toolbar {
    padding: 5px 15px;
    /*background: rgba(52, 70, 84, 0.125);*/
    /*border-top: 1px solid rgba(52, 70, 84, 0.250);*/
    border-bottom: 1px solid rgba(52, 70, 84, 0.250);
}

.modal-title {
    font-size: 24px;
    font-family: "Open Sans";
}

    .modal-title span {
        vertical-align: middle;
    }

        .modal-title span.modal-icon {
            margin-right: 5px;
        }

.modal-header {
}

    .modal-header a.btn.pull-right {
        margin-top: 2px;
    }

.modal-device .modal-header {
    position: relative;
    background: #f7f7f7;
}

.modal-body {
    /*max-height: 680px;*/
    /*overflow: auto;*/
}

.modal-device .modal-body {
    /*max-height: 500px;*/
    /*overflow: auto;*/
}

.modal-footer {
    /*background: rgba(52, 70, 84, 0.05);*/
    border-top: 1px solid rgba(52, 70, 84, 0.25);
}

.dropdown-menu > li > a {
    padding: 6px 32px;
    position: relative;
}

.defender-logo-is-admin:before {
    content: '';
    background-image: url("../img/defender.png");
    background-size: contain;
    position: absolute;
    display: block;
    width: 17px;
    height: 17px;
    margin-left: -20px;
    background-repeat: no-repeat;
}

.dropdown-menu > li > a > span.glyphicons:first-child {
    position: absolute;
    font-size: 16px;
    top: 8px;
    left: 8px;
}

.context-menu {
    position: absolute;
    min-width: 160px;
    margin-top: 10px;
    margin-left: -20px;
    font-size: 14px;
    text-align: left;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.3);
    border-radius: 4px;
    box-shadow: 0 6px 12px rgba(0,0,0,.3);
    z-index: 100;
}

    .context-menu .context-arrow {
        position: absolute;
        display: block;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
        border-width: 11px;
        top: -11px;
        left: 20px;
        margin-left: -11px;
        border-top-width: 0;
        border-bottom-color: #999;
        border-bottom-color: rgba(0,0,0,.3);
    }

        .context-menu .context-arrow:after {
            position: absolute;
            display: block;
            width: 0;
            height: 0;
            border-color: transparent;
            border-style: solid;
            content: "";
            border-width: 10px;
            top: 1px;
            margin-left: -10px;
            content: " ";
            border-top-width: 0;
            border-bottom-color: #eee;
        }

    .context-menu ul, ul.context-menu {
        padding: 5px 0;
        margin: 0;
        list-style: none;
    }

    .context-menu .context-header {
        background: #eee;
        border-bottom: 1px solid #e5e5e5;
        display: block;
        text-align: center;
        padding: 5px 10px 2px;
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
        min-height: 22px;
        font-family: 'Open Sans';
        font-size: 13px;
        font-weight: bold;
    }

    .context-menu .context-footer {
        font-size: 80%;
        background: #f7f7f7;
        border-top: 1px solid #e5e5e5;
        display: block;
        text-align: center;
        padding: 10px;
        border-bottom-left-radius: 4px;
        border-bottom-right-radius: 4px;
    }

    .context-menu > ul > li > a {
        position: relative;
        display: block;
        padding: 6px 32px;
        clear: both;
        font-weight: 400;
        line-height: 1.42857143;
        color: #333;
        white-space: nowrap;
    }

        .context-menu > ul > li > a > span.glyphicons:first-child {
            position: absolute;
            font-size: 16px;
            top: 7px;
            left: 8px;
        }

        .context-menu > ul > li > a:focus, .context-menu > ul > li > a:hover {
            color: #262626;
            text-decoration: none;
            background-color: #f5f5f5;
        }

        .context-menu > ul > li > a[disabled] {
            color: #ddd;
            cursor: default;
        }

    .context-menu > ul > li.divider {
        height: 1px;
        margin: 9px 0;
        overflow: hidden;
        background-color: #e5e5e5;
    }

.toolbar {
    margin-top: 5px;
    margin-bottom: 15px;
}

    .toolbar .btn-toolbar .btn {
        margin-bottom: 5px;
    }

.actionbar {
    background: #344654;
    color: #fff;
}

.actionbar-fixed-bottom {
    position: fixed;
    bottom: 0;
    margin-left: -15px;
    margin-right: -15px;
}

.actionbar-item {
    display: inline-block;
    padding: 6px 12px;
    vertical-align: middle;
}

    .actionbar-item span {
        vertical-align: middle;
    }

.actionbar-close {
    vertical-align: middle;
}

.toast {
    position: fixed;
    left: 10px;
    bottom: 10px;
    z-index: 1000;
}

    .toast.toast-right {
        left: initial;
        right: 10px;
    }

.toast-wrapper {
    position: relative;
    border: 1px solid #111;
    border-radius: 4px;
    box-shadow: 0px 2px 10px 0 rgba(0, 0, 0, 0.5);
    background: #eee;
    padding: 5px;
}

.toast-content {
    position: relative;
    padding: 2px 8px 2px 8px;
    background-color: #344654;
    color: #fafafa;
    border: 1px solid #111;
    border-radius: 2px;
    box-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

    .toast-content th, .toast-content td {
        font-weight: 300;
        border-color: #f48b31;
    }

        .toast-content td span {
            font-weight: 500;
        }

.toast-close {
    position: absolute;
    top: -18px;
    right: -18px;
    color: #ddd;
    padding: 6px;
    background: #344654;
    border: 1px solid #000;
    border-radius: 50%;
}

/* On/Off FlipSwitch from  https://proto.io/freebies/onoff/ */

.onoffswitch {
    display: inline-block;
    position: relative;
    width: 68px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

    .onoffswitch.onoffswitch-sm {
        width: 60px;
    }

    .onoffswitch.onoffswitch-xs {
        width: 24px;
    }

.onoffswitch-checkbox {
    display: none;
}

.onoffswitch-label {
    display: block;
    overflow: hidden;
    cursor: pointer;
    height: 34px;
    padding: 0;
    margin-bottom: 0;
    line-height: 34px;
    border: 1px solid #ccc;
    border-radius: 34px;
    background-color: #eee;
    box-shadow: inset 2px 2px 2px rgba(0,0,0,0.1);
    transition: all 0.15s ease-in 0s;
}

    .onoffswitch-label:before {
        content: "";
        display: block;
        width: 34px;
        height: 34px;
        margin: 0px;
        background: #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 34px;
        border: 2px solid #aaa;
        border-radius: 34px;
        box-shadow: inset 2px 2px 2px rgba(0,0,0,0.1);
        transition: all 0.15s ease-in 0s;
    }

    .onoffswitch-label .glyphicons {
        font-size: 16px;
        width: 32px;
        line-height: 32px;
        text-align: center;
        color: #aaa;
        transition: all 0.15s ease-in 0s;
        position: relative;
        left: 0;
    }

.onoffswitch.onoffswitch-sm .onoffswitch-label {
    height: 30px;
    line-height: 30px;
    border-radius: 30px;
}

    .onoffswitch.onoffswitch-sm .onoffswitch-label:before {
        width: 30px;
        height: 30px;
        right: 30px;
    }

.onoffswitch.onoffswitch-xs .onoffswitch-label {
    height: 16px;
    line-height: 16px;
    border-radius: 16px;
}

    .onoffswitch.onoffswitch-xs .onoffswitch-label:before {
        width: 16px;
        height: 16px;
        right: 8px;
    }

.onoffswitch-checkbox:checked + .onoffswitch-label {
    background-color: #419641;
}

    .onoffswitch-checkbox:checked + .onoffswitch-label, .onoffswitch-checkbox:checked + .onoffswitch-label:before {
        border-color: #419641;
    }

        .onoffswitch-checkbox:checked + .onoffswitch-label:before {
            right: -2px;
        }

        .onoffswitch-checkbox:checked + .onoffswitch-label .glyphicons {
            color: #419641;
            left: 36px;
        }


.onoffswitch-checkbox:disabled + .onoffswitch-label {
    background-color: #ccc;
    border-color: #ccc;
    cursor: not-allowed;
}

    .onoffswitch-checkbox:disabled + .onoffswitch-label:before {
        border-color: #ccc;
    }

.panel > .table .onoffswitch.onoffswitch-xs {
    margin: 4px 0;
}

/* SPINNER from http://tobiasahlin.com/spinkit/ */
.spinner-container {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0,0,0,0.1);
    z-index: 100;
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    justify-content: center;
    min-width: 136px;
    min-height: 58px;
}

.spinner {
    height: 24px;
    width: 102px;
}

    .spinner > div {
        width: 24px;
        height: 24px;
        background-color: #f48b31;
        border-radius: 4px;
        border: none;
        box-shadow: 1px 1px 1px rgba(0,0,0,0.4);
        float: left;
        margin: 0 5px;
        animation: sk-bouncedelay 1.2s infinite ease-in-out both;
    }

    .spinner .bounce1 {
        animation-delay: -0.32s;
    }

    .spinner .bounce2 {
        animation-delay: -0.16s;
    }

@keyframes sk-bouncedelay {
    0%, 80%, 100% {
        transform: scale(0.5);
        opacity: 0.5;
    }

    40% {
        transform: scale(1.0);
        opacity: 1;
        box-shadow: 10px 10px 5px rgba(0,0,0,0.2);
    }
}

.btn-file {
    position: relative;
    overflow: hidden;
}

    .btn-file input[type=file] {
        position: absolute;
        top: 0;
        right: 0;
        min-width: 100%;
        min-height: 100%;
        font-size: 100px;
        text-align: right;
        filter: alpha(opacity=0);
        opacity: 0;
        outline: none;
        background: white;
        cursor: inherit;
        display: block;
    }

#img-upload {
    width: 100%;
}

.panel-footer .btn-group-responsive,
.modal-footer .btn-group-responsive {
    text-align: right;
}

    .panel-footer .btn-group-responsive:after,
    .modal-footer .btn-group-responsive:after {
        clear: both;
    }

@media (min-width: 1200px) {
    .modal-lg {
        width: 1100px;
    }
}

@media (max-width: 1199px) {
    .col-lg-top-margin {
        margin-top: 10px;
    }
}

@media (max-width: 991px) {
    .col-md-top-margin {
        margin-top: 10px;
    }
}

@media (max-width: 767px) {

    .table-no-result, .list-no-result {
        font-size: 16px;
    }

    .text-left-xs {
        text-align: left;
    }

    .text-center-xs {
        text-align: center;
    }

    .text-right-xs {
        text-align: right;
    }

    .btn-group-responsive {
        width: 100%;
        margin-bottom: 10px;
    }

        .btn-group-responsive .pull-left, .btn-group-responsive .pull-right {
            float: none;
        }

        .btn-group-responsive .btn {
            display: block;
            width: 100%;
            padding-right: 0;
            padding-left: 0;
            margin-bottom: 10px;
        }

            .btn-group-responsive .btn + .btn {
                margin-left: 0;
                margin-bottom: 10px;
            }

            .btn-group-responsive .btn:last-child {
                margin-bottom: 0;
            }

    .input-group-responsive {
        width: 100%;
        margin-bottom: 10px;
    }

    .col-sm-top-margin {
        margin-top: 10px;
    }

    .modal-dialog {
        margin: 10px 36px;
    }
}

@media (max-width: 479px) {

    .table-no-result, .list-no-result {
        font-size: 14px;
    }

    .list-inline.header-menu {
        text-align: center;
        float: none;
    }

        .list-inline.header-menu > li {
            display: block;
        }

    .level-gauge {
        min-width: 50px;
    }

    .col-xs-top-margin {
        margin-top: 10px;
    }
}


.glyphicons.active {
    color: #006600;
}

.glyphicons.inactive {
    color: #cccccc;
}

.rotating {
    animation: 2s rotate linear;
    animation-iteration-count: infinite;
}

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* MAP */
.map-container {
    position: absolute;
    top: 50px;
    bottom: 50px;
    left: 0;
    right: 0;
    z-index: 0;
    white-space: normal;
    overflow: hidden;
}

.map-toolbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 40px;
    z-index: 10;
    background-color: #eee;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.5);
}

.map-toolbar-item {
    float: left;
    margin: 3px 3px 3px 0;
}

    .map-toolbar-item:first-child {
        margin-left: 3px;
    }

    .map-toolbar-item > a {
        display: block;
        width: 34px;
        height: 34px;
        padding: 0px;
        border: 1px solid transparent;
        border-radius: 3px;
        transition: all 0.2s ease;
    }

        .map-toolbar-item > a:hover {
            background: #ddd;
        }

        .map-toolbar .dropdown.open > a,
        .map-toolbar-item > a:active,
        .map-toolbar-item > a.active {
            color: #f7f7f7;
            background-color: #678;
            border-color: #567;
            box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
        }

            .map-toolbar-item > a[disabled],
            .map-toolbar-item > a:active[disabled],
            .map-toolbar-item > a.active[disabled] {
                background: none;
                cursor: default;
                color: inherit;
                border: 1px solid transparent;
                box-shadow: none;
            }


        .map-toolbar-item > a .glyphicons {
            font-size: 24px;
            line-height: 32px;
            width: 32px;
            text-align: center;
            height: 32px;
        }

    .map-toolbar-item > span {
        line-height: 32px;
    }

    .map-toolbar-item .dropdown-menu > li.category {
        background: #337ab7;
        color: #fff;
        padding: 2px 6px;
        text-transform: capitalize;
        font-size: 80%;
    }

    .map-toolbar-item .dropdown-menu > li > a {
        font-size: 16px;
        margin: 1px;
        padding: 8px 16px 8px 32px;
        position: relative;
    }

        .map-toolbar-item .dropdown-menu > li > a:active,
        .map-toolbar-item .dropdown-menu > li > a.active {
            color: #23527c;
            background-color: #e0e0e0;
            font-weight: bold;
        }

        .map-toolbar-item .dropdown-menu > li > a .glyphicons {
            font-size: 16px;
            line-height: 38px;
            position: absolute;
            left: 8px;
        }

    .map-toolbar-item.toolbar-icon {
        margin: 0;
        width: 41px;
        height: 40px;
        background: rgba(0,0,0,0.05);
        border-right: 1px solid rgba(0,0,0,0.05);
        display: none;
    }

        .map-toolbar-item.toolbar-icon > .glyphicons {
            display: block;
            font-size: 24px;
            line-height: 40px;
            width: 40px;
            text-align: center;
            height: 40px;
        }

    .map-toolbar-item.toolbar-title {
        margin-left: 8px;
    }

        .map-toolbar-item.toolbar-title span {
            display: block;
            font-family: 'Open Sans Condensed';
            font-weight: 700;
            font-size: 24px;
            line-height: 34px;
            height: 34px;
        }

.map-toolbar-separator {
    float: left;
    margin: 3px 3px 3px 3px;
    border-left: 1px solid #ccc;
    height: 34px;
    width: 0px;
}

.map-toolbar-search {
    max-width: 358px;
}

.map-container .scene {
    position: absolute;
    top: 40px;
    bottom: 0;
    left: 0px;
    right: 0px;
    z-index: 0;
}

.map-container.pane-left-opened .scene {
    left: 400px;
}

.map-container.pane-right-opened .scene {
    right: 400px;
}

.map-container .scene .angular-google-map-container {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}

.gm-style-cc {
    display: none;
}

.position-icon {
    cursor: pointer;
    transform: scale(0.8);
}

.pane {
    width: 400px;
    position: absolute;
    top: 40px;
    bottom: 0;
    z-index: 5;
    opacity: 1;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
    background: #e8eaeb;
}

.pane-left {
    left: 0;
    border-right: 1px solid #bbb;
}

.pane-right {
    right: 0;
    border-left: 1px solid #bbb;
}

.pane-nav {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 6px 5px 5px;
}

    .pane-nav > .tab-content, .pane-nav > .tab-content > .tab-pane {
        height: 100%;
        width: 100%;
    }

    .pane-nav > .nav-tabs {
        position: absolute;
        top: 0px;
        padding: 6px 4px;
        background: #ccc;
        border: 1px solid #bbb;
    }

        .pane-nav > .nav-tabs > li {
            position: relative;
            height: 40px;
            width: 40px;
        }

            .pane-nav > .nav-tabs > li > a {
                position: relative;
                padding: 0;
                margin: 0;
                height: 40px;
                width: 40px;
                text-align: center;
                border-radius: 0;
            }

                .pane-nav > .nav-tabs > li > a:hover {
                    border-color: transparent;
                    background: #ddd;
                }

            .pane-nav > .nav-tabs > li.active > a {
                background: #e8eaeb;
                border: 1px solid #bbb;
                width: 45px;
            }

            .pane-nav > .nav-tabs > li .glyphicons {
                font-size: 24px;
                line-height: 38px;
            }

    .pane-nav > .nav-stacked > li + li {
        margin-top: 4px;
        margin-left: 0;
        margin-bottom: 0;
        margin-right: 0;
    }

.pane-left .pane-nav > .nav-tabs {
    border-left: none;
    left: 400px;
}

    .pane-left .pane-nav > .nav-tabs > li.active {
        left: -5px;
    }

        .pane-left .pane-nav > .nav-tabs > li.active > a {
            border-left-color: transparent;
            padding-left: 5px;
        }

.pane-right .pane-nav > .nav-tabs {
    border-right: none;
    right: 400px;
}

    .pane-right .pane-nav > .nav-tabs > li.active {
        /*right: -5px;*/
    }

        .pane-right .pane-nav > .nav-tabs > li.active > a {
            border-right-color: transparent;
            padding-right: 5px;
        }


.pane-content {
    background-color: #e8eaeb;
    border: none;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: 1px solid #ddd;
    overflow-y: auto;
}

    .pane-content::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }

    .pane-content::-webkit-scrollbar-thumb {
        background-color: #888;
    }

    .pane-content::-webkit-scrollbar-track {
        background-color: #f0f0f0;
    }

    .pane-content .nav-tabs {
        position: absolute;
        top: 5px;
        left: 5px;
        z-index: 1;
    }

    .pane-content .tab-content {
        position: absolute;
        top: 46px;
        bottom: 5px;
        left: 5px;
        right: 5px;
    }

    .pane-content .tab-pane {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }

        .pane-content .tab-pane .panel {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            margin: 0;
            border-color: #bbb;
        }

        .pane-content .tab-pane .panel-body {
            position: absolute;
            top: 5px;
            bottom: 5px;
            left: 5px;
            right: 5px;
            padding: 0;
            overflow: auto;
            border: none;
        }

@media (max-width: 767px) {

    .map-container {
    }

    .map-toolbar-search {
        max-width: none;
        margin-left: 40px;
        margin-right: 40px;
        float: none;
    }
}

@media (max-width: 991px) {
    .map-container {
    }

        .map-container.pane-left-opened .scene {
            left: 0;
            bottom: 50%;
        }

        .map-container.pane-right-opened .scene {
            right: 0;
        }

    .pane-nav {
    }

        .pane-nav > .nav-tabs {
            left: 0;
            top: -50px;
            padding: 4px 6px;
        }

            .pane-nav > .nav-tabs > li > a {
            }

            .pane-nav > .nav-tabs > li.active {
                left: 0;
                bottom: 0px;
            }

                .pane-nav > .nav-tabs > li.active > a {
                    border: 1px solid #bbb;
                    border-bottom-color: transparent;
                    width: 40px;
                    height: 45px;
                }

        .pane-nav > .nav-stacked > li {
            float: left;
        }

            .pane-nav > .nav-stacked > li + li {
                margin-top: 0px;
                margin-left: 4px;
            }


    .pane-left {
        width: 100%;
        top: 50%;
        border-top: 1px solid #bbb;
        border-right: none;
    }

        .pane-left .pane-nav > .nav-tabs {
            left: 0px;
        }

            .pane-left .pane-nav > .nav-tabs > li.active {
                left: 0px;
            }

                .pane-left .pane-nav > .nav-tabs > li.active > a {
                    padding-left: 0;
                    border-left: 1px solid #bbb;
                }

    .pane-right {
        width: 100%;
        border-left: none;
    }

        .pane-right .pane-nav > .nav-tabs {
            right: auto;
            border-right: 1px solid #bbb;
            border-left: none;
        }

            .pane-right .pane-nav > .nav-tabs > li.active {
            }

                .pane-right .pane-nav > .nav-tabs > li.active > a {
                    padding-right: 0;
                }

    .pane-left-toggle {
        transform: rotate(270deg);
    }
}

/* END OF MAP */


/* MAP INFOWINDOW (arrow-box) */

.arrow-box {
    position: relative;
    top: -30px;
    border: 2px solid #444;
    border-radius: 4px;
    box-shadow: 0px 5px 10px -3px rgba(0,0,0,0.9);
    width: 280px;
    opacity: 0.95;
}

    .arrow-box:after, .arrow-box:before {
        top: 100%;
        left: 50%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
    }

    .arrow-box:after {
        border-color: rgba(255, 255, 255, 0);
        border-top-color: #eee;
        border-width: 10px;
        margin-left: -10px;
    }

    .arrow-box:before {
        border-color: rgba(255, 255, 255, 0);
        border-top-color: #444;
        border-width: 13px;
        margin-left: -13px;
    }

.arrow-close {
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 16px;
    color: #eee;
    width: 26px;
    height: 26px;
    padding: 5px;
    text-align: center;
    border-radius: 3px;
}

    .arrow-close:hover {
        background: rgba(255,255,255,0.2);
    }

.arrow-title {
    height: 28px;
    width: 276px;
    background: #444;
    color: #ddf8c6;
    /*font-family: Montserrat;*/
    font-size: 16px;
    font-weight: 300;
    line-height: 28px;
    padding: 0px 32px 0px 5px;
}

.arrow-body {
    background: #eee;
    padding: 5px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}


svg.pulse-svg {
    overflow: visible;
}

    svg.pulse-svg .first-circle, svg.pulse-svg .second-circle {
        fill: #4285f4;
        transform: scale(0.1);
        transform-origin: center center;
        animation: pulse-me 3s ease infinite;
    }

    svg.pulse-svg .second-circle {
        animation-delay: 1s;
    }

svg.highlightpulse-svg {
    overflow: visible;
}

    svg.highlightpulse-svg .circle {
        opacity: 0;
        transform: scale(0.1);
        transform-origin: center center;
        animation: highlightpulse-me 0.3s ease;
        animation-direction: alternate;
        animation-iteration-count: infinite;
    }

@keyframes pulse-me {
    0% {
        transform: scale(0.1);
        opacity: 0.8;
    }

    50% {
        opacity: 0.2;
    }

    100% {
        transform: scale(2);
        opacity: 0;
    }
}


@keyframes highlightpulse-me {
    0% {
        transform: scale(1);
        opacity: 0.8;
    }

    100% {
        transform: scale(1.5);
        opacity: 0.2;
    }
}


.form-group .help-btn {
    float: right;
    display: block;
    opacity: 0.5;
    transition: opacity 0.3s ease;
}

    .form-group .help-btn.glyphicons {
        top: 0;
        font-size: 17px;
        line-height: 20px;
        margin-left: 5px;
    }

.form-group:hover .help-btn {
    opacity: 0.8;
}

.company-logo {
    background-color: #fff;
    background-image: linear-gradient(45deg,#efefef 25%,transparent 25%,transparent 75%,#efefef 75%), linear-gradient(45deg,#efefef 25%,transparent 25%,transparent 75%,#efefef 75%,#efefef);
    background-position: 0 0, 10px 10px;
    background-size: 21px 21px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0px 2px 5px rgba(0,0,0,0.1);
    max-height: 300px;
    max-width: 100%;
}

abbr[title] {
    text-decoration: none;
}

/* full calendar */
.panel > .fc {
}

    .panel > .fc .fc-toolbar.fc-header-toolbar {
        margin: 8px;
    }

        .panel > .fc .fc-toolbar.fc-header-toolbar h2 {
            font-size: 20px;
            line-height: 30px;
        }

    .panel > .fc .fc-widget-header:first-child,
    .panel > .fc .fc-widget-content:first-child {
        border-left-width: 0px;
    }

    .panel > .fc .fc-widget-header:last-child,
    .panel > .fc .fc-widget-content:last-child {
        border-right-width: 0px;
    }

    .panel > .fc .fc-row:last-child .fc-widget-content {
        border-bottom-width: 0px;
    }

    .panel > .fc .fc-body > tr > .fc-widget-content {
        border-bottom-width: 0px;
    }


.input-group .bs-searchbox .form-control {
    background: none;
    border-radius: 4px;
}

.help-logo {
    content: '';
    background-image: url("../img/help_icon.png");
    background-size: contain;
    display: block;
    width: 20px;
    height: 20px;
}


.play-video-logo {
    content: '';
    background-image: url(../img/play_video_icon.png);
    background-size: contain;
    position: absolute;
    display: block;
    left: 50%;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    margin-left: -20px;
    background-repeat: no-repeat;
    opacity: 1;
    transition: .5s ease;
    backface-visibility: hidden;
}


.timer {
    position: absolute;
    bottom: 0;
    left: 20px;
    color: white;
}

.middle {
    backface-visibility: hidden;
    transition: .5s ease;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.49);
}

.tumbnail-container {
    position: relative;
}

.tumbnail-container-1:hover .middle {
    opacity: 1;
}

.tumbnail-container-2:hover .middle {
    opacity: 1;
}

.video-tumbnail-img {
    opacity: 1;
    display: block;
    height: auto;
    transition: .5s ease;
    backface-visibility: hidden;
}

.selected-overlay {
    backface-visibility: hidden;
    transition: .5s ease;
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.49);
}

.uib-separator {
    padding-left: 3px;
    padding-right: 3px;
}

.integration-well {
    margin: 0 6px;
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background: #d9edf7;
    font-size: 85%;
}

    .integration-well .list-group {
        margin: 0;
    }

    .integration-well .list-group-item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        text-align: left;
    }

    .integration-well img {
        height: 22px;
        margin-right: 15px;
    }

.pac-container {
    z-index: 1050 !important;
}

.table-borderless > tbody > tr > td,
.table-borderless > tbody > tr > th,
.table-borderless > tfoot > tr > td,
.table-borderless > tfoot > tr > th,
.table-borderless > thead > tr > td,
.table-borderless > thead > tr > th {
    border: none;
}

.deviceStatus {
    font-weight: normal;
    padding: 4px 6px;
    border-radius: 4px;
    font-size: 75%;
    color: #ffffff;
}

.deviceStatusList {
    font-weight: normal;
    padding: 4px 6px;
    border-radius: 4px;
    margin: 5px;
    font-size: 75%;
    color: #ffffff;
    word-break: keep-all
}

.sensorStatusInfos {
    display: flex;
    flex-flow: row wrap;
}

.tankListDeviceStatus {
    font-weight: normal;
    padding: 4px 6px !important;
    border-radius: 4px;
    font-size: 11px !important;
    color: #ffffff;
}

.tankListLabel {
    font-weight: normal;
    padding: 4px 6px !important;
    border-radius: 4px;
    font-size: 11px !important;
    color: #ffffff;
}

.nav-pills + .tab-content {
    margin-top: 15px;
}

.nav-tabs + .tab-content {
}

.ui-select-toggle {
    border-top-left-radius: 4px !important;
    border-bottom-left-radius: 4px !important;
}

#endUserTankSelect .ui-select-toggle {
    border-top-left-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

.ui-select-choices-group > .ui-select-choices-group-label {
    font-size: 15px;
    font-weight: bold;
    color: #333333;
}

.checkbox-label {
    font-weight: normal;
    white-space: break-spaces;
}

/* Device Map */

.custom-clustericon {
    background: var(--cluster-color);
    color: #fff;
    border-radius: 100%;
    font-weight: bold;
    font-size: 15px;
    display: flex;
    align-items: center;
}

    .custom-clustericon::before,
    .custom-clustericon::after {
        content: "";
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        transform: translate(-50%, -50%);
        top: 50%;
        left: 50%;
        background: var(--cluster-color);
        opacity: 0.2;
        border-radius: 100%;
        box-sizing: content-box;
    }

    .custom-clustericon::before {
        padding: 7px;
    }

    .custom-clustericon::after {
        padding: 14px;
    }

.custom-clustericon-1 {
    --cluster-color: #00a2d3;
}

.custom-clustericon-2 {
    --cluster-color: #ff9b00;
}

.custom-clustericon-3 {
    --cluster-color: #ff6969;
}

#tank-level-chart-legend {
    text-align: center;
}

    #tank-level-chart-legend ul {
        margin: 15px 0 0 0;
        padding: 0;
    }

        #tank-level-chart-legend ul li {
            display: inline-block;
            margin-right: 15px;
        }

            #tank-level-chart-legend ul li .legend-line {
                width: 35px;
                display: inline-block;
                margin: 3px 8px;
                border: 0px;
                border-bottom: 3px;
            }

.not-yet-evaluate-icon {
    color: #eeeeee;
    font-size: 96px;
    text-shadow: 2px 2px 1px rgba(0,0,0,0.1);
    margin: 40px auto;
}

#defaultGridContainer .dx-data-row .glyphicons {
    padding: 0;
    font-size: 16px;
    line-height: 12px;
}

    #defaultGridContainer .dx-data-row .glyphicons::before {
        float: left;
    }

/* Help Center */

.row-flex {
    display: flex;
    flex-wrap: wrap;
    row-gap: 15px;
}

.row-flex-lg {
    row-gap: 60px;
}

#title.hc-video-player {
    margin: 20px 0 20px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.1;
}

@media (min-width: 768px) {
    #title.hc-video-player {
        margin: 0 0 20px;
    }
}

/* Badge inside uib-tab */

.uib-tab.nav-item.active .badge {
    background-color: white;
    color: #337ab7;
}

/* File upload */

.file-upload {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    max-width: 100%;
    height: 120px;
    text-align: center;
}

    .file-upload .file-upload-message {
        color: #ccc;
        z-index: 1;
    }

    .file-upload .file-upload-preview {
        z-index: 1;
    }

    .file-upload input {
        z-index: 3;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
        cursor: pointer;
    }

    .file-upload .btn.btn-danger {
        z-index: 5;
        position: absolute;
        bottom: 4px;
        right: 4px;
    }

    .file-upload .btn.btn-success {
        z-index: 5;
        position: absolute;
        bottom: 4px;
        left: 4px;
    }

.grid-location-based .dx-master-detail-cell {
    padding: 10px 10px 10px 10px !important;
}

.badge-default {
    background-color: #777;
}

    .badge-default[href]:hover,
    .badge-default[href]:focus {
        background-color: #5e5e5e;
    }

.badge-primary {
    background-color: #337ab7;
}

    .badge-primary[href]:hover,
    .badge-primary[href]:focus {
        background-color: #286090;
    }

.badge-success {
    background-color: #5cb85c;
}

    .badge-success[href]:hover,
    .badge-success[href]:focus {
        background-color: #449d44;
    }

.badge-info {
    background-color: #5bc0de;
}

    .badge-info[href]:hover,
    .badge-info[href]:focus {
        background-color: #31b0d5;
    }

.badge-warning {
    background-color: #f0ad4e;
}

    .badge-warning[href]:hover,
    .badge-warning[href]:focus {
        background-color: #ec971f;
    }

.badge-danger {
    background-color: #d9534f;
}

    .badge-danger[href]:hover,
    .badge-danger[href]:focus {
        background-color: #c9302c;
    }

.trouble-container {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: flex-start;
}

.trouble-badge {
    font-size: 12px;
    font-weight: 700;
    display: inline-block;
    padding: 5px 5px;
    margin: 2px 2px 0 0;
    border-radius: 3px;
    color: #fff;
}

.trouble-comm {
    background-color: #337ab7;
    color: #fff;
}

.trouble-sensor {
    background-color: #17a2b8;
    color: #fff;
}

.trouble-hardware {
    background-color: #F57C00;
    color: #fff;
}

.trouble-comm:hover {
    background-color: #286090;
    color: #fff;
}

.trouble-sensor:hover {
    background-color: #138496;
    color: #fff;
}

.trouble-hardware:hover {
    background-color: #E65100;
    color: #fff;
}

.increase-popover-width {
    max-width: 350px;
}

.overDueRow {
    color: #e9130c;
}

.onHoldRow {
    color: #f48b31;
}

.toggle-icon {
    font-size: 18px;
    font-weight: bold;
    color: #333;
}

.collapsible-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.collapsible-panel.open {
    max-height: 1000px;
}

/* Hide fileManager empty toolbar */
.dx-filemanager-toolbar.dx-filemanager-general-toolbar {
    display: none !important;
}

.dx-filemanager-file-toolbar {
    display: none !important;
}

/*To force drop down menu to always fit the largest piece of text in a drop down*/
.open > .dropdown-menu .btn-group {
    display: flex;
}

    .open > .dropdown-menu .btn-group button {
        flex: 1;
        width: auto;
    }

/* Dropdown submenu styles */
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu > .dropdown-menu {
    position: static !important;
    float: none;
    width: 100%;
    margin: 0;
    border: 0;
    box-shadow: none;
    background-color: #f5f5f5;
    display: none;
}

.dropdown-submenu > .dropdown-menu.in {
    display: block;
}

.dropdown-submenu > .dropdown-menu > li > a {
    padding-left: 30px;
}

.dropdown-submenu > a {
    cursor: pointer;
}

.dropdown-submenu > a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 5px 0 5px;
    border-top-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
    transition: transform 0.1s ease;
}

.dropdown-submenu > a[aria-expanded="true"]:after {
    border-top-color: #333;
    transform: rotate(180deg);
}

.serviceCallPaid {
    font-size: 50%;
    margin-top: 5px;
    margin-left: 5px;
    position: fixed;
}

.nav-pills > li.nav-pill-serviceCenter:first-child {
    margin: 5px auto auto 15px;
}

.nav-pills > li.nav-pill-serviceCenter {
    margin: 5px auto auto auto;
}

/* FillList page styles */

.summary-counter {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    background-color: #f5f5f5;
    border-radius: 4px;
    font-size: 16px;
}

.summary-counter .label {
    font-weight: 600;
    color: #555;
}

.summary-counter .value {
    font-size: 20px;
    font-weight: bold;
    color: #5cb85c;
}

.summary-counter .value.unplanned-value {
    color: #d9534f;
}

.summary-counter .divider {
    width: 1px;
    height: 24px;
    background-color: #ccc;
    margin: 0 8px;
}

.chart-section {
    margin-top: 20px;
}

.chart-section h3 {
    font-size: 18px;
    margin-bottom: 12px;
    color: #333;
}

.chart-wrap {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 10px;
}

.unreliable-row {
    background-color: #f5f5f5 !important;
}

.unreliable-row:hover {
    background-color: #e8e8e8 !important;
}

.fw-500 {
    font-weight: 500;
}

.fs-120 {
    font-size: 120%;
    font-weight: normal
}

.fs-86px {
    font-size: 86px;
}