.map-container {
  display: flex;
  justify-content: space-between;
}
.map {
  position: relative;
  cursor: crosshair;
  background-color: #000;

  // Full-screen
  -moz-full-screen {
    height: 100%;
  }
  -webkit-full-screen {
    height: 100%;
  }
  -ms-fullscreen {
    height: 100%;
  }

  > div {
    height: 100%;
    position: fixed;
    width: 100%;
  }

  // Map scale
  .scale-viewer {
    top: 0.25em;
    left: 0.25em;
    background-color: transparent;
    opacity: 0.95;
    cursor: default;

    :hover {
      background-color: none !important;
      cursor: default;
    }
  }

  // Full-screen control
  .ol-full-screen {
    left: 7.5em;
    right: auto;
    top: 10em;
  }

  // Zoom controls
  .ol-zoom {
    right: 8px;
    left: auto;
    top: 8px;
    background-color: #fff;
    border: 2px solid #008cba;
  }

  // Reset rotation button
  .ol-rotate {
    left: 7.5em;
    right: auto;
    top: 7em;
  }

  // Zoom control
  .ol-zoom-in,
  .ol-zoom-out {
    background-color: #fff;
  }

  .ol-reset-button {
    right: 8px;
    left: auto;
    top: 78px;
    background-color: #fff;
    border: 2px solid #008cba;
  }

  // Reset pan button
  .reset-pan {
    left: 7.5em;
    top: 5em;
  }

  // Mouse coordinates
  .ol-mouse-position {
    top: 8px;
    bottom: inherit;
    left: inherit;
    right: 48px;
    min-width: 160px;
    width: auto;
    white-space: nowrap;
    border: 2px solid #008cba;
    border-radius: 5px;
    background-color: #fff;
    color: #008cba;
    opacity: 0.95;
    cursor: default;

    div {
      display: inline-block;
      padding: 0.5em;
    }
  }

  .compare {
    right: 20px !important;
  }

  // Popup balloon on map
  .ol-popup {
    opacity: 0.95;
    padding: 0.5em;
    line-height: 1.5;
    -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.5));
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.5));

    // Plotted data tooltip
    &.title {
      position: relative;
      background-color: #fff;
      min-height: $tooltip-height;
      text-align: center;

      span {
        display: block;
        font-size: x-small;
        margin-top: 0.3em;
      }

      &:before {
        content: "";
        display: block;
        width: 0;
        height: 0;
        position: absolute;

        border-left: $tooltip-arrow-size solid transparent;
        border-right: $tooltip-arrow-size solid transparent;
        border-top: $tooltip-arrow-size solid #fff;
        bottom: -$tooltip-arrow-size;
        right: calc(50% - #{$tooltip-arrow-size});
      }
    }

    // Click popup
    &.ballon {
      position: absolute;
      background-color: #fff;
      padding: 0.75em;
      bottom: 12px;
      left: -50px;
      cursor: text;

      &:before,
      &:after {
        top: 100%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
      }

      &:before {
        border-top-color: #fff;
        border-width: 11px;
        left: 48px;
        margin-left: -11px;
      }

      &:after {
        border-top-color: #fff;
        border-width: 10px;
        left: 48px;
        margin-left: -10px;
      }

      a {
        text-decoration: none;
        position: absolute;
        top: 5px;
        right: 5px;
      }

      .balloonClose a {
        &:after {
          content: "✖";
        }
      }

      .balloonLaunch a {
        &:after {
          content: "↪";
        }
      }

      p {
        white-space: nowrap;
        font-size: 90%;
        margin-right: 1em;
      }
    }

    table {
      font-size: 75%;
      tr {
        td {
          text-align: left;
          &:first-child:after {
            content: ":";
            margin-right: 1em;
          }
        }

        &:nth-child(even) {
          background-color: #f0f0f0;
        }
      }
    }
  }

  .ol-attribution {
    bottom: 0;
    right: 0;
    border-radius: 0;
    font-size: 0.75em;
    max-width: 75%;
    cursor: default;

    &.ol-uncollapsible {
      height: auto;
    }

    ul {
      li {
        font-size: 75%;
      }
      li + li {
        &:before {
          content: "\2022 ";
        }
      }
    }
  }
}
