body * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
}
body {
  background: silver;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
#map {
  height: 100%;
  background: #ffffff;
}
@media (max-width: 727px) {
  #aside {
    display: none;
  }
}
body.i_can_not_haz_animation #overview {
  display: block;
}
body.i_can_not_haz_animation #deck {
  display: none;
  position: relative;
}
body.i_can_not_haz_animation .flipped #overview {
  display: none;
}
body.i_can_not_haz_animation .flipped #deck {
  display: block;
}
body.i_can_not_haz_animation .card {
  margin-left: 0;
}
body.i_can_not_haz_animation #backbutton {
  margin-left: -10px;
}
body.i_can_haz_animation .card {
  position: absolute;
  left: 0;
  top: 0;
}
body.i_can_haz_animation #overview,
body.i_can_haz_animation #deck {
  -webkit-transition: -webkit-transform 1s;
  transition: transform 1s;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
body.i_can_haz_animation #overview {
  -webkit-transform: perspective(1000px) rotateY(0deg);
  transform: perspective(1000px) rotateY(0deg);
}
body.i_can_haz_animation #deck {
  -webkit-transform: perspective(1000px) rotateY(180deg);
  transform: perspective(1000px) rotateY(180deg);
  position: absolute;
  top: 0;
  left: 0;
}
body.i_can_haz_animation .flipped #overview {
  -webkit-transform: perspective(1000px) rotateY(-180deg);
  transform: perspective(1000px) rotateY(-180deg);
}
body.i_can_haz_animation .flipped #deck {
  -webkit-transform: perspective(1000px) rotateY(0deg);
  transform: perspective(1000px) rotateY(0deg);
}
#overview {
  box-sizing: border-box;
  padding: 20px;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}
.card {
  margin-left: 20px;
  margin-right: 20px;
}
#overview,
.card {
  background: #fff;
  border-radius: 10px;
}
#aside {
  width: 270px;
  z-index: 100;
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
  padding: 20px;
  padding-bottom: 30px;
}
#aside h1 {
  margin-top: 0;
  margin-bottom: .5em;
  font-weight: normal;
}
#aside ul,
#aside li {
  list-style-type: none;
  margin-left: 0;
  padding-left: 0;
}
#aside li {
  padding: 4px 5px;
  margin: 0 -5px;
}
#aside li[data-show-owner] {
  white-space: nowrap;
}
#deck {
  width: 230px;
  margin-top: 20px;
  margin-bottom: 20px;
}
#deck #backbutton {
  background: #999999 url(../lib/images/buttonArrow@2x.png) 0 50% no-repeat;
  background-size: 50% auto;
  color: white;
  outline: none;
  padding: 5px 10px 5px 9%;
  border-radius: 3px;
  border: none;
  position: absolute;
  top: 10px;
  left: 30px;
  z-index: 1;
}
#deck .card {
  box-sizing: border-box;
  padding: 20px;
  width: 100%;
  background: white;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
  display: none;
}
#deck .card h1 {
  margin-top: 35px;
}
#deck .card.active {
  display: block;
}
#aside li {
  cursor: pointer;
}
.leaflet-popup-content h1 {
  font-size: 18px;
  font-weight: normal;
}
.leaflet-popup-content h2,
.leaflet-popup-content p {
  margin: 0;
}
.leaflet-popup-content h2 {
  margin-bottom: 0;
  font-size: 12px;
  text-transform: uppercase;
}
.leaflet-popup-content dl {
  overflow: hidden;
}
.leaflet-popup-content dt {
  font-weight: bold;
}
.leaflet-popup-content dt::after {
  content: ':';
}
.leaflet-popup-content dd {
  margin: 0;
  clear: left;
}
.leaflet-popup-content .result-positive {
  color: lime;
}
.leaflet-popup-content .result-negative {
  color: red;
}
.leaflet-popup-content ul {
  padding: 0;
  list-style-type: none;
}
.leaflet-popup-content ul,
.leaflet-popup-content dl {
  margin: .5em 0 1.5em 0;
}
.leaflet-popup-content li {
  cursor: pointer;
}
.leaflet-popup-content li:before {
  content: '\2714 \00a0';
  color: red;
}
.leaflet-popup-content .resultTable {
  font-size: 10px;
  border-collapse: collapse;
}
.leaflet-popup-content .resultTable th:not(:empty),
.leaflet-popup-content .resultTable td {
  border: 1px solid gray;
  padding: 5px 10px;
}
.leaflet-popup-content .resultTable th:not(:empty) {
  background: #efefef;
}
.leaflet-popup-content .resultTable td,
.leaflet-popup-content .resultTable th {
  white-space: nowrap;
  vertical-align: middle;
}
.leaflet-popup-content .resultTable tr:first-child th {
  text-align: center;
}
.leaflet-popup-content .resultTable td:not(:last-child) {
  text-align: right;
}
.leaflet-popup-content .resultTable td:last-child {
  text-align: center;
}
.leaflet-popup-content .resultTable td:empty {
  background: url(../lib/images/dash.svg) 50% 50% no-repeat;
}
.highlighted {
  background: #efefef;
}
