/* ==========================================================================
GENERAL 
========================================================================== */
@media (max-width: 768px) {
  /* Increase the default font-size to 16px to stop auto-zoom on mobile Safari */
  body,
  select,
  input,
  textarea,
  .form-select,
  .form-control,
  .btn,
  .side-nav .side-nav-link,
  .dropdown-menu {
      font-size: 1rem;
  }

  small,
  .small {
      font-size: 0.85rem;
  }
}
/* ==========================================================================
END GENERAL 
========================================================================== */

#mapbody {
    min-height: 0;
}

#main-content {
    padding-top: 0.75rem;
}

#main-content .col-form-label {
    text-align: right;
}

.pre-login {
    background-color: #293949;
    background-image: -webkit-radial-gradient(bottom, ellipse cover, #094065 0, #0d122b 100%);
    background-image: radial-gradient(bottom, ellipse cover, #094065 0, #0d122b 100%);
}

.btn-xs {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}

/* ==========================================================================
ALLOW PANEL TO USE BOOTSTRAP CARD CLASS
========================================================================== */
.panel {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid #eef2f7;
    border-radius: 0.25rem; }
    .panel > hr {
      margin-right: 0;
      margin-left: 0; }
    .panel > .list-group {
      border-top: inherit;
      border-bottom: inherit; }
      .panel > .list-group:first-child {
        border-top-width: 0;
        border-top-left-radius: calc(0.25rem - 1px);
        border-top-right-radius: calc(0.25rem - 1px); }
      .panel > .list-group:last-child {
        border-bottom-width: 0;
        border-bottom-right-radius: calc(0.25rem - 1px);
        border-bottom-left-radius: calc(0.25rem - 1px); }
    .panel > .panel-header + .list-group,
    .panel > .list-group + .panel-footer {
      border-top: 0; }
  
  .panel-body {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    padding: 1.5rem 1.5rem; }
  
  .panel-title {
    margin-bottom: 0.75rem; }
  
  .panel-subtitle {
    margin-top: -0.375rem;
    margin-bottom: 0; }
  
  .panel-text:last-child {
    margin-bottom: 0; }
  
  .panel-link:hover {
    text-decoration: none; }
  
  .panel-link + .panel-link {
    margin-left: 1.5rem; }
  
  .panel-header {
    padding: 0.75rem 1.5rem;
    margin-bottom: 0;
    background-color: #fff;
    border-bottom: 1px solid #eef2f7; }
    .panel-header:first-child {
      border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; }
  
  .panel-footer {
    padding: 0.75rem 1.5rem;
    background-color: #fff;
    border-top: 1px solid #eef2f7; }
    .panel-footer:last-child {
      border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); }
  
  .panel-header-tabs {
    margin-right: -0.75rem;
    margin-bottom: -0.75rem;
    margin-left: -0.75rem;
    border-bottom: 0; }
  
  .panel-header-pills {
    margin-right: -0.75rem;
    margin-left: -0.75rem; }
  
  .panel-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.25rem;
    border-radius: calc(0.25rem - 1px); }
  
  .panel-img,
  .panel-img-top,
  .panel-img-bottom {
    width: 100%; }
  
  .panel-img,
  .panel-img-top {
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px); }
  
  .panel-img,
  .panel-img-bottom {
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px); }
  
  .panel-group > .panel {
    margin-bottom: 12px; }
  
  @media (min-width: 576px) {
    .panel-group {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; }
      .panel-group > .panel {
        -webkit-box-flex: 1;
            -ms-flex: 1 0 0%;
                flex: 1 0 0%;
        margin-bottom: 0; }
        .panel-group > .panel + .panel {
          margin-left: 0;
          border-left: 0; }
        .panel-group > .panel:not(:last-child) {
          border-top-right-radius: 0;
          border-bottom-right-radius: 0; }
          .panel-group > .panel:not(:last-child) .panel-img-top,
          .panel-group > .panel:not(:last-child) .panel-header {
            border-top-right-radius: 0; }
          .panel-group > .panel:not(:last-child) .panel-img-bottom,
          .panel-group > .panel:not(:last-child) .panel-footer {
            border-bottom-right-radius: 0; }
        .panel-group > .panel:not(:first-child) {
          border-top-left-radius: 0;
          border-bottom-left-radius: 0; }
          .panel-group > .panel:not(:first-child) .panel-img-top,
          .panel-group > .panel:not(:first-child) .panel-header {
            border-top-left-radius: 0; }
          .panel-group > .panel:not(:first-child) .panel-img-bottom,
          .panel-group > .panel:not(:first-child) .panel-footer {
            border-bottom-left-radius: 0; } }
/* ==========================================================================
END CARD/PANEL
========================================================================== */

/* ==========================================================================
CARD/PANEL OVERRIDES
========================================================================== */
.panel-header h1,
.panel-header h2,
.panel-header h3,
.panel-header h4,
.panel-header h5,
.panel-header h6 {
    margin: 0;
    text-transform: uppercase;
    line-height: 1;
    font-size: 1rem;
    font-weight: normal;
}
/* ==========================================================================
END CARD/PANEL OVERRIDES
========================================================================== */

/* ==========================================================================
HEADER
========================================================================== */
#terminal_backbutton {
    float: left;
    width: 38px;
    height: 38px;
    margin: 16px 24px 0 0;
    padding: 0;
    border: 0;
}
#terminal_backbutton i {
    margin-left: -2px;
    line-height: 30px;
    font-size: 30px;
}

/* ==========================================================================
LEFT NAV
========================================================================== */
.side-nav {
    padding-top: 10px;
}
body[data-leftbar-theme="dark"] .side-nav .side-nav-link,
body[data-leftbar-theme="dark"] .side-nav .side-nav-second-level li a, 
body[data-leftbar-theme="dark"] .side-nav .side-nav-third-level li a, 
body[data-leftbar-theme="dark"] .side-nav .side-nav-forth-level li a {
    color: white;
}

/* ==========================================================================
BOOTSTRAP TAG/TYPEAHEAD
========================================================================== */
.label {
    display: inline;
    padding: .2em .6em .3em;
    font-size: 75%;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25em;
  }
.label-default {
    background-color: #bdc3c7;
}
.label-primary {
    background-color: #00AFD5;
}
.label-success {
    background-color: #2dcc70;
}
.label-warning {
    background-color: #f1c40f;
}
.label-info {
    background-color: #00AFD5;
}
.label-danger {
    background-color: #e84c3d;
}

/* ==========================================================================
LOGO
========================================================================== */
.leftside-menu .logo {
    padding-left: 20px;
}
.leftside-menu .logo img {
    height: 45px;
}

/* ==========================================================================
SELECT2
========================================================================== */
.select2-container .select2-selection--single {
    background-color: #bdc3c7;
    border-color: #bdc3c7;
}
.invert-bg .select2-container .select2-selection--single {
    background-color: #00afd5;
    border-color: #00afd5;
}
.select2-container .select2-selection--single:hover,
.select2-container .select2-selection--single:focus,
.select2-container .select2-selection--single:active {
    background-color: #00afd5;
    border-color: #00afd5;
    transition: border .25s linear,color .25s linear,background-color .25s linear;
}
.select2-container .select2-selection--single .select2-selection__rendered,
.select2-container .select2-selection--single .select2-selection__rendered .select2-selection__placeholder {
    color: white;
}
.select2-container .select2-selection--single .select2-selection__arrow b {
    border-color: #fff transparent transparent transparent;
}
.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #fff transparent !important;
}

/* ==========================================================================
FLATPICKR (BUG FIXES FOR ISSUES IN v4 - FIREFOX/IPAD MONTH SELECT)
========================================================================== */
.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month .flatpickr-monthDropdown-months:hover
{
    background: white !important;
    appearance: menulist-text !important;
    -webkit-appearance: menulist-text !important;
}
.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
    background-color: white !important;
}

/* ==========================================================================
SCREEN SIZE WARNING
========================================================================== */
section#screensizewarning {
    height: 100%;
    text-align: center;
    color: #fff;
}
@media only screen and (max-width: 700px) {
    body {
        height: 100vh;
        background-color: #141c24;
    }
    body.pre-login {
        height: 100%; /* Mobile override */
    }
    body > .wrapper {
        display: none;
    }
    section#screensizewarning {
      display: flex !important;
    }
}

/* ==========================================================================
TOAST
========================================================================== */
.jq-toast-wrap {
  width: 400px;
}
.toast-container.shown {
    z-index: 2000;
}

tr.clickable, tr.clickable-recent {
	cursor: pointer;
}

.table-striped > tbody > tr:nth-of-type(2n+1).row_warning td  {
    color: #b10000;
}

tr.row_warning td {
	color: #b10000;
}

.notification-list .notification-badge {
    display: inline-block;
    position: absolute;
    top: 19px;
    right: -8px;
}

#notifications-list-popup {
    width: 350px;
    border: 0;
    background-color: #f1f1f1;
}
#notifications-list-popup .simplebar-content-wrapper {
    background-color: #f1f1f1;
}

#notifications-list-popup h1 {
    -webkit-border-radius: 3px 3px 0 0;
    -moz-border-radius: 3px 3px 0 0;
    -ms-border-radius: 3px 3px 0 0;
    -o-border-radius: 3px 3px 0 0;
    border-radius: 3px 3px 0 0;
    background-color: #e84c3d;
    margin: -4px 0 0 0;
    font-size: 13px;
    padding: 10px;
    font-weight: 400;
    color: #fff;
}
#notifications-list-popup h1.empty {
    border-radius: 3px;
}

.notification-list .notify-item {
    padding: 4px 10px;
}
.simplebar-content a:first-child {
    padding-top: 8px;
}

.notification-list .notify-item p.notify-details {
    margin-left:0px;
    background-color: rgb(255, 255, 255);
    font-size:11px;
    padding: 7px 10px;
    white-space: normal;
}

.notification-list .notify-item .notify-details span.message,
.notification-list .notify-item .notify-details span.title {
  display: inherit;
  overflow: inherit;
  text-overflow: inherit;
  white-space: inherit;
  font-size: inherit;
}

/* ==========================================================================
MAIL
========================================================================== */
   .mail-option ul li {
    list-style: none;
  }
  #view-mail-wrapper header {
    color: #a2a2a2;
  }
  #view-mail-wrapper header h2 {
    border-bottom: 1px solid #ddd;
    padding: 0 0 15px 0;
  }
  #view-mail-wrapper header p {
    position: absolute;
    right: 35px;
    top: 48px;
  }
  #view-mail-wrapper .view-mail-header {
    padding-top: 5px;
  }
  #view-mail-wrapper .view-mail-header img {
    margin-right: 10px;
  }
  #view-mail-wrapper .view-mail-reply {
    margin-top: 12px;
  }
  #view-mail-wrapper .view-mail-body {
    border-top: 1px solid #ddd;
    padding-top: 15px;
    margin-top: 15px;
  }
  #view-mail-wrapper .view-mail-body p {
    line-height: 1.8em;
  }
  #view-mail-wrapper .view-mail-body .panel-footer,
  #view-mail-wrapper .view-compose-body .panel-footer {
    background: #fff;
    border-bottom: 1px solid #ddd;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    padding: 15px 0;
  }
  #view-mail-wrapper .view-mail-body .panel-footer h5 {
    display: inline-block;
  }
  #view-mail-wrapper .view-mail-body .panel-footer .attchments {
    padding: 0 8px;
    text-transform: lowercase;
  }
  #view-mail-wrapper .view-mail-body .panel-footer button.pull-right {
    margin: 0 0 0px 8px;
  }
  .send-options {
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    position: absolute;
    right: 45px;
    top: 22px;
  }
  .send-options a {
    color: #979797;
  }
  #form-group-cc,
  #form-group-bcc {
    display: none;
  }
  .compose-nav > li + li {
    margin-left: 0;
    margin-top: 0px;
  }
  .compose-nav li a,
  .compose-nav li a:visited {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    border-top: 1px solid #f2f3f6;
    padding: 15px;
    border-right: 3px solid rgba(0, 0, 0, 0);
    color: #5D5F63;
  }
  .compose-nav > li.active > a,
  .compose-nav > li.active > a:hover,
  .compose-nav > li.active > a:focus {
    background: #f9f9f9;
    color: #00AFD5;
    border-left: 3px solid #00AFD5;
    margin-left: -3px;
  }
  .compose-nav > li > a:hover,
  .compose-nav > li > a:focus {
    background: #f9f9f9;
    color: #00AFD5;
    border-left: 3px solid #00AFD5;
    margin-left: -3px;
  }
  .mail-checkbox {
    margin: 0 15px 0 8px;
  }
  .mail-option .btn-group .fa-refresh,
  .pag-left,
  .pag-right {
    color: #fff;
  }
  .inbox-pag li {
    float: left;
    margin-left: 5px;
  }
  .inbox-pag li span {
    display: inline-block;
    margin-top: 7px;
    margin-right: 5px;
  }
  .compose-nav {
    margin: 15px -15px 0 -15px;
  }
  .table-inbox span.title {
    display: block;
    font-weight: bold;
  }
  .table-inbox tr {
    background: #f9f9f9;
  }
  .table-inbox tr.unread {
    background: #fff;
  }
  .table-inbox a,
  .table-inbox a:visited {
    color: #5D5F63;
  }
  .table-inbox .unread a,
  .table-inbox .unread a:visited {
    color: #00AFD5;
  }
  .table-inbox .fa-star {
    color: #f1c40f;
  }

/* ==========================================================================
NOTIFICATIONS
========================================================================== */
.notifications .modal {
	top: 60px;
}
.notifications .modal h4 {
	margin: 0 0 0.75em;
}
.notifications span.actionbuttons {
	display: block;
	padding-top: 5px;
	padding-bottom: 10px;
}
.notifications span.actionbuttons .btn {
	z-index: 100;
}
.notifications td.message {
	padding-bottom: 10px !important;
}
.notifications #inbox-wrapper .panel-body {
	padding-top: 0;
	padding-right: 5px;
	padding-left: 5px;
	padding-bottom: 10px;
}
.notifications .message-date {
	font-size: 0.8em;
}

.notifications .table-inbox span.msg {
	color: black;
}

.notifications .table-inbox span.msg-read {
	color: black;
	opacity: 0.5;
}

.notifications .table-inbox span.title-read {
	opacity: 0.8;
	font-weight: normal;
}

/* ==========================================================================
SLIDERS
========================================================================== */
   .slider.slider-horizontal {
    margin: 10px 0;
  }
  .slider.slider-vertical {
    margin: 0 10px;
  }
  .slider-handle.round {
    position: absolute;
    width: 20px;
    height: 20px;
    border: 1px solid #EFF2F7;
    background: #fff;
    cursor: pointer;
  }
  .slider-default .slider-selection {
    background-image: none;
    background-color: #bdc3c7;
  }
  .slider-primary .slider-selection {
    background-image: none;
    background-color: #00AFD5;
  }
  .slider-success .slider-selection {
    background-image: none;
    background-color: #2dcc70;
  }
  .slider-warning .slider-selection {
    background-image: none;
    background-color: #f1c40f;
  }
  .slider-info .slider-selection {
    background-image: none;
    background-color: #00AFD5;
  }
  .slider-danger .slider-selection {
    background-image: none;
    background-color: #e84c3d;
  }

.nav-tabs > li > a,
.nav-pills > li > a {
    color: #004990;
    font-weight: normal;
    -webkit-appearance: none;
}

/* ==========================================================================
TAB OVERRIDES
========================================================================== */
.tab-pane > .panel {
    border-top-width: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-color: #dee2e6;
}

/* ==========================================================================
THEME MODAL OVERRIDES
========================================================================== */
.modal-open {
  padding-right: 0 !important;
}
/* On the notification subscriptions page changing the select2 drop downs triggers the modal static animation scale CSS - disable this */
.modal.modal-static.disable-static-animation .modal-dialog {
  transform: none;
}

/* ==========================================================================
WELL
========================================================================== */
.well {
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    background-color: #f5f5f5;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
            box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
}
.well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, .15);
}
.well-lg {
    padding: 24px;
    border-radius: 6px;
}
.well-sm {
    padding: 9px;
    border-radius: 3px;
}

/* ==========================================================================
DATATABLES
========================================================================== */
div.dataTables_wrapper div.dataTables_processing {
    top: 83% !important;
    box-shadow: none;
}
.dataTables_scroll {
    padding-bottom: 20px;
}
/* Reinstate the padding from the old site to squeeze in more columns on tablets */
table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting {
    padding-left: 8px;
}
.table > :not(caption) > * > * {
    padding: 8px;
}
table.dataTable thead .sorting:before,
table.dataTable thead .sorting_asc:before,
table.dataTable thead .sorting_desc:before,
table.dataTable thead .sorting_asc_disabled:before,
table.dataTable thead .sorting_desc_disabled:before {
    top: 2px;
}
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting_asc_disabled:after,
table.dataTable thead .sorting_desc_disabled:after {
    top: 8px;
}

/******************* clickable links in datatables ******************************/
tr.clickable, tr.clickable-recent {
	  cursor: pointer;
}
tr.clickable:hover td, tr.clickable-recent:hover td {
	  background-color: #f1f2f7 !important;
}
tr.clickable:active td, tr.clickable-recent:active td  {
	  background-color: #00AFD5 !important;
}

/* Change responsive datatable expand/collapse button colour */
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control::before {
    background-color: #00597f !important;
}

/* ==========================================================================
MAP LEAFLET SEARCH BOX
========================================================================== */
.leaflet-control-search .search-input {
    font-size: 0.875rem;
}
.leaflet-control-search.leaflet-control .search-tooltip {
    max-height: 137px;
    border: 1px solid #eef2f7;
    box-shadow: none;
    border-radius: 5px;
}
.leaflet-control-search.leaflet-control .search-tip {
    margin: 0;
    padding: 6px 10px;
    border-bottom: 1px solid #eef2f7;
    background-color: #fff;
    color: #6c757d;
    border-radius: 0;
    font-size: 0.875rem;
}
.leaflet-control-search.leaflet-control .search-tip-select, 
.leaflet-control-search.leaflet-control .search-tip:hover {
    background-color: #f4f6fb;
    color: #2c343f;
}

.app-search #search-dropdown {
    min-width: 320px;
    padding: 0.75rem 0;
}

/****** little color dots legend above asset listings ***************/
.asset-location-key {
  padding-right: 0;
  position: relative;
  height: 55px;
  left: 15px;
}

/* ==========================================================================
SIDE NAV
========================================================================== */
body[data-leftbar-theme="dark"] .side-nav .side-nav-link {
    color: white;
}

/* ==========================================================================
LANGUAGE RADIO BUTTONS: https://stackoverflow.com/questions/17541614/use-images-instead-of-radio-buttons
========================================================================== */
#language_selection [type=radio] { 
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

#language_selection label.dropdown-item {
    cursor: pointer;
}

/* IMAGE STYLES */
#language_selection [type=radio] + img {
  width: 23px;
  cursor: pointer;
}

/* CHECKED STYLES: #language_selection [type=radio]:checked + img  */

/* ==========================================================================
PROGRESS BARS FOR CONTAINER LEVEL
========================================================================== */
.progress-with-labels {
    width: 100%;
    position: relative;
}
.progress-with-labels > .progress-foreground {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    color: white;
    font-size: 0.8em;
}
.progress-with-labels > .progress-background {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #e9ecef;
    color: black;
    font-size: 0.8em;
}
/* ==========================================================================
NEW LAUNCH
========================================================================== */
.launch .horizontal-steps-content .avatar-title {
  position: relative;
  z-index: 1;
}
.launch .horizontal-steps-content p.text {
  position: absolute;
  top: calc(100% + 1em);
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.launch .accordion-button {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  box-shadow: none !important; /* Remove blue focus outline */
}
.launch_device_select img.w-100 {
  max-width: 300px;
}
input[data-switch=bool]+label {
  background-color: #666;
}
/* Timeline */
.launch .timeline-alt .timeline-item .timeline-item-info {
  margin-left: 40px;
}
.timeline-item.no-line::before {
  background-color: transparent;
}

