#bodyContainer {
  padding-top: 60px;
  padding-bottom: 60px;
  background: white;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -57px; /* the bottom margin is the negative value of the footer's height */
}

/*@media (max-width: 979px) {
  #body-container {
    padding-top: 0px;
    padding-bottom: 0px;
  }
}*/

.compass .fore, .compass .chevron {
  stroke: #666;
}

.layer path {
  fill: #ccc;
  fill-opacity: .85;
  stroke: #012;
}

#copy, #copy a {
  color: #aaa;
}

.hidden-row {
  padding: 0 !important;
}

html, body {
  height: 100%;
}

body {
  margin: 0;
  background: #E5E0D9;
}

svg {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

#copy {
  position: absolute;
  left: 0;
  bottom: 4px;
  padding-left: 5px;
  font: 9px sans-serif;
  color: #fff;
  cursor: default;
}

#copy a {
  color: #fff;
}

.compass .back {
  fill: #eee;
  fill-opacity: .8;
}

.compass .fore {
  stroke: #999;
  stroke-width: 1.5px;
}

.compass rect.back.fore {
  fill: #999;
  fill-opacity: .3;
  stroke: #eee;
  stroke-width: 1px;
  shape-rendering: crispEdges;
}

.compass .direction {
  fill: none;
}

.compass .chevron {
  fill: none;
  stroke: #999;
  stroke-width: 5px;
}

.compass .zoom .chevron {
  stroke-width: 4px;
}

.compass .active .chevron, .compass .chevron.active {
  stroke: #fff;
}

.compass.active .active .direction {
  fill: #999;
}

.thumbnail.intro {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}

.thumbnail.intro:hover {
  cursor: pointer;
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad
}

@media (max-width: 767px) {
  .navbar-collapse .nav > li.divider {
    *width: 100%;
    height: 1px;
    margin: 9px 1px;
    *margin: -5px 0 5px;
    overflow: hidden;
    background-color: black;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
  }
}

/*@media (min-width: 768px) and (max-width: 1199px){
  .navbar-right{
    float: left !important;
  }
}Only useful with non customized bootstrap*/

.navbar {
  min-height: 0;
}

.nav.navbar-centered {
  float: none;
  text-align: center;
  margin: 0;
}

.nav.navbar-centered > li {
  float: none;
  display: inline;
}

.nav.navbar-centered > li > a {
  display: inline-block;
  vertical-align: middle;
}

.navbar-brand {
  font-size: 20px;
  line-height: 20px;
  height: 63px;
}

.navbar-brand img {
  display: inline-block;
}

.nav li a img {
  opacity: 0.8;
}

.nav li.active a img {
  opacity: 1;
}

.nav li a:hover img {
  opacity: 1;
}

.btn-scrolling-fab {
  position: fixed;
  display: none;
  bottom: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 6px 0;
  font-size: 12px;
  line-height: 1.42;
  border-radius: 15px;
  z-index: 100000;
}

blockquote {
  background: rgba(0, 0, 0, 0.05);
  font-size: 15.5px;
}

/**
Slider
*/

.ui-rangeSlider-handle {
  pointer-events: none;
}

.modal-body {
  max-height: calc(100vh - 210px);
  overflow-y: auto;
}

.margin-top-small {
  margin-top: 5px;
}

.margin-top-medium {
  margin-top: 10px;
}

.margin-top-big {
  margin-top: 15px;
}

.margin-bottom-small {
  margin-bottom: 5px;
}

.margin-bottom-medium {
  margin-bottom: 10px;
}

.margin-right-small {
  margin-right: 5px;
}

.margin-right-medium {
  margin-right: 10px;
}

.padding-top-small {
  padding-top: 5px;
}

.no-padding {
  padding: 0;
}

.no-margin {
  margin: 0;
}

.no-margin-bottom {
  margin-bottom: 0;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.inline {
  display: inline;
}

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

.inline-block-medium {
  display: inline-block;
  height: 39px;
}

.fill-parent-height-with-overflow {
  height: 100%;
  overflow-y: auto;
}

.vertical-center {
  vertical-align: middle !important;
}

.center-align {
  text-align: center;
}

.left-align {
  text-align: left;
}

.footer-divider {
  width: 1px;
  height: 75px;
  background: grey;
  margin-left: 25px;
  margin-right: 25px;
  display: inline-block;
}

.white-text {
  color: white;
}

.white-link {
  color: white;
}

.white-link:hover {
  color: white;
  opacity: 0.6;
}

.currency-info {
  margin-top: 10px;
  padding: 8px 15px 8px 15px;
}

.vertical-bottom-aligned-row {
  font-size: 0;
}

.vertical-bottom-aligned-row > * {
  float: none;
  display: inline-block;
  font-size: 14px; /* if using LESS it's quicker to just use @font-size-base */
}

.vertical-bottom-aligned-row > *:last-child {
  vertical-align: bottom;
}

#detailDisableLayer {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 10;
  text-align: center;
  padding: 20px;
}

.detail-overview-filter {
  margin-top: 15px;
  float: right;
}

tr.underlined-title {
  clear: both;
  font-size: 18px;
  border-bottom: 3px solid #337ab7;
  color: #337ab7;
  padding: 8px;
}

.text-left-mobile-centered {
  text-align: left;
}

.text-right-mobile-centered {
  text-align: right;
}

.wrap-mobile-only {
  white-space: nowrap;
}

.checkbox-panel {
  display: inline-block;
  padding: 5px;
  margin-bottom: 5px;
}

.checkbox-panel > .panel-body {
  padding: 0;
}

.checkbox-panel .checkbox {
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
}

p.subtitle {
  color: #337ab7;
  margin-bottom: 2px;
}

@media (max-width: 768px) {
  .detail-overview-filter {
    margin-top: 15px;
    margin-bottom: 10px;
    display: block;
    float: left;
  }

  .pagination {
    float: left;
  }

  .text-left-mobile-centered {
    text-align: center;
  }

  .text-right-mobile-centered {
    text-align: center;
  }

  .margin-top-mobile-medium {
    margin-top: 10px;
  }

  .wrap-mobile-only {
    white-space: normal;
  }

  .mobile-big-size {
    width: 50px;
  }

}

/*
MAP
*/
#map {
  background: #012;
  height: 50vh;
}

.map-button-group {
  position: absolute;
  top: 5px;
  right: 0px;
  z-index: 1000;
}

.map-legend {
  position: absolute;
  bottom: 5px;
  left: 10px;
  z-index: 1000;
}

.map-legend > .item {
  width: 20px;
  height: 20px;
  border: 1px solid black;
  display: inline-block;
  cursor: pointer;
}

.map-legend .tooltip {
  opacity: 1;
}

/*
CSS for badges and tooltip of map
*/

.label-as-badge {
  border-radius: 1em;
  padding: 3px 7px;
}

.badge-margin {
  margin: 5px 5px 5px 5px;
}

.badge-region {
  padding-top: 5px;
  margin: 5px 5px 5px 5px;
}

.image-proxy {
  display: inline-block;
  height: 16px
}

.tooltip-map {
  position: absolute;
  background: rgb(0, 0, 0);
  border-radius: 4px;
  color: white;
  padding: 4px 8px;
  opacity: 1;
  z-index: 100000;
  display: none;
}

#divProgressBar {
  background: white;
  margin-top: 10px;
}

/*
CSS for pie chart popover styles
*/

.popover-title, .popover-content {
  color: black;
}

.popover {
  max-width: 100%;
}

.labels .units {
  fill: gray;
}

.labels .label {
  fill: #CCC;
  font-weight: bold;
}

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

/*
Overwrite cursor css of iThing.css
*/

/*
Alert style
*/
#alertWrapper {
  display: none;
  position: fixed;
  width: inherit;
  padding-right: 30px;
  text-align: center;
  z-index: 5000;
  top: 60px;
}

.no-data-label {
  width: inherit;
  position: relative;
  display: block;
  margin: 15px 0;
  padding: 15px 0;
}

/*
SVG STYLES
*/

.legend .legend-entry {
  cursor: pointer;
}

.svg-tooltip-text-wrapper {
  padding-top: 2px;
}

.svg-tooltip-text {
  background: rgb(0, 0, 0);
  border-radius: 4px;
  color: white;
  padding: 4px 8px;
  opacity: 0;
  height: 28px;
}

/*
BAR CHART STYLES
*/
.bar {
  fill: steelblue;
}

.bar-label {
  font: 11px sans-serif;
  font-weight: bold;
}

.axis text {
  font: 10px sans-serif;
}

.axis path,
.axis line {
  fill: none;
  stroke: #000;
  shape-rendering: crispEdges;
}

.x.axis path {
  display: none;
}

/*
GRAPHCHART STYLES
*/
path.graph {
  fill: none;
}

/*
TABLE STYLES
*/
.header-fixed {
  position: fixed;
  top: 100px;
}

.clickable {
  cursor: pointer;
}

.clickable:hover, .clickable:focus {
  text-decoration: none;
}

.expand-details {
  cursor: pointer;
}

.expand-details:hover {
  opacity: 0.8;
}

td.value {
  text-align: right;
  vertical-align: middle !important;
}

.scope-overall-heading {
  background-color: #222222;
  border-color: #080808;
  color: #ffffff;
}

.scope-heading td {
  background: #A4A4A4;
  border-color: #dddddd;
  font-weight: bold;
}

tr.bg-primary {
  font-weight: bold;
}

.chart-cell {
  width: 50%;
}

table.fixedCol {
  position: absolute;
  width: auto;
  /* below styles are specific for borderd Bootstrap tables
     to remove rounded corners on cloned table */
  z-index: 1000;
}

table.fixedCol tr:not(.scope-heading):not(.bg-primary) td,
table.fixedCol tr:not(.scope-overall-heading) th {
  /* background is set to white to hide underlaying column
     of original table */
  background: #f5f5f5;
}

.table-responsive {
  -ms-overflow-style: scrollbar !important;
}

.divider-alpha {
  background: linear-gradient(to right, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.2)) !important;
}

.table-wrapper .btn-toolbar {
  margin: 0;
}

.sticky-first-column-wrapper {
  min-width: 300px;
  white-space: normal;
}

@media (max-width: 768px) {
  .sticky-first-column-wrapper {
    min-width: 150px;
  }

}

/*
Bonsai adaptions
*/
li.has-children > .thumb:after {
  content: '+';
}

li.has-children.expanded > .thumb:after {
  content: '-';
}
