.api-search-input {
  width: 100%;
}

.api-search-results {
  max-height: 400px;
  overflow: hidden;
  overflow-y: auto;
  margin: 0;
  padding: 0;
  list-style: none;
  background-color: #fff;
}

.api-search-results .autocomplete-result {
  cursor: pointer;
  padding: 4px;
}

.ol-box {
  box-sizing: border-box;
  border-radius: 2px;
  border: 2px solid blue;
}

.ol-mouse-position:before {
  content: 'Coord. : ';
  font-weight: bold;
}

.ol-mouse-position {
  top: 10px;
  left: 50px;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.7);
  padding: 5px;
}

.ol-scale-line {
  background-color: #ffffff;
  border-radius: 4px;
  bottom: 8px;
  right: 8px;
  padding: 2px;
  position: absolute;
}

.ol-scale-line-inner {
  border: 0.12rem solid #66acb4;
  border-top: none;
  color: #000000;
  font-size: 10px;
  text-align: center;
  margin: 1px;
  will-change: contents, width;
}

.ol-overlay-container {
  will-change: left, right, top, bottom;
}

.ol-unsupported {
  display: none;
}

.ol-viewport,
.ol-unselectable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.ol-overlaycontainer,
.ol-overlaycontainer-stopevent {
  pointer-events: none;
}
.ol-overlaycontainer > *,
.ol-overlaycontainer-stopevent > * {
  pointer-events: auto;
}

.ol-selectable {
  -webkit-touch-callout: default;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.ol-grabbing {
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

.ol-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.ol-control {
  position: absolute;
  border-radius: 4px;
  padding: 2px;
}

.ol-zoom {
  top: 0.5em;
  left: 0.5em;
}

.ol-rotate {
  top: 0.5em;
  right: 0.5em;
  transition: opacity 0.25s linear, visibility 0s linear;
}

.ol-rotate.ol-hidden {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s linear, visibility 0s linear 0.25s;
}

.ol-zoom-extent {
  top: 4.643em;
  left: 0.5em;
}

.ol-full-screen {
  right: 0.5em;
  top: 0.5em;
}

@media print {
  .ol-control {
    display: none;
  }
}

.ol-control button {
  display: block;
  padding: 0;
  font-size: 1.14em;
  text-decoration: none;
  text-align: center;
  line-height: 0.4em;
  margin: 0;
  margin-bottom: 0.12rem;
  height: 2rem;
  width: 2rem;
  background-color: white;
  border: 0.06rem solid #66acb4;
  color: black;
}

.ol-control button::-moz-focus-inner {
  border: none;
  padding: 0;
}

.ol-zoom-extent button {
  line-height: 1.4em;
}

.ol-compass {
  display: block;
  font-weight: normal;
  font-size: 1.2em;
  will-change: transform;
}

.ol-touch .ol-control button {
  font-size: 1.5em;
}

.ol-touch .ol-zoom-extent {
  top: 5.5em;
}

.ol-control button:hover,
.ol-control button:focus {
  text-decoration: none;
  background-color: #d9d9d9;
}

.ol-zoom .ol-zoom-in {
  border-radius: 2px 2px 0 0;
}

.ol-zoom .ol-zoom-out {
  border-radius: 0 0 2px 2px;
}

.ol-attribution {
  text-align: right;
  bottom: 0.5em;
  right: 0.5em;
  max-width: calc(100% - 1.3em);
}

.ol-attribution ul {
  margin: 0;
  padding: 0 0.5em;
  font-size: 0.7rem;
  line-height: 1.375em;
  color: #000;
  text-shadow: 0 0 2px #fff;
}

.ol-attribution li {
  display: inline;
  list-style: none;
  line-height: inherit;
}

.ol-attribution li:not(:last-child):after {
  content: ' ';
}

.ol-attribution img {
  max-height: 2em;
  max-width: inherit;
  vertical-align: middle;
}

.ol-attribution ul,
.ol-attribution button {
  display: inline-block;
}

.ol-attribution.ol-collapsed ul {
  display: none;
}

.ol-attribution:not(.ol-collapsed) {
  background: rgba(255, 255, 255, 0.8);
}

.ol-attribution.ol-uncollapsible {
  bottom: 0;
  right: 0;
  border-radius: 4px 0 0;
  height: 1.1em;
  line-height: 1em;
}

.ol-attribution.ol-uncollapsible img {
  margin-top: -0.2em;
  max-height: 1.6em;
}

.ol-attribution.ol-uncollapsible button {
  display: none;
}

.ol-zoomslider {
  top: 4.5em;
  left: 0.5em;
  height: 200px;
}

.ol-zoomslider button {
  position: relative;
  height: 10px;
}

.ol-touch .ol-zoomslider {
  top: 5.5em;
}

.ol-overviewmap {
  left: 0.5em;
  bottom: 0.5em;
}

.ol-overviewmap.ol-uncollapsible {
  bottom: 0;
  left: 0;
  border-radius: 0 4px 0 0;
}

.ol-overviewmap .ol-overviewmap-map,
.ol-overviewmap button {
  display: inline-block;
  bottom: 3px;
  left: 4px;
}

.ol-overviewmap button:focus {
  outline: none;
}

.ol-overviewmap .ol-overviewmap-map {
  border: 1px solid #7b98bc;
  height: 150px;
  margin: 2px;
  width: 150px;
}

.ol-overviewmap:not(.ol-collapsed) button {
  bottom: 3px;
  left: 4px;
  position: absolute;
}

.ol-overviewmap.ol-collapsed .ol-overviewmap-map,
.ol-overviewmap.ol-uncollapsible button {
  display: none;
}

.ol-overviewmap:not(.ol-collapsed) {
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0.37rem 0.75rem rgb(0 0 0 / 30%);
}

.ol-overviewmap-box {
  border: 2px dotted rgba(0, 60, 136, 0.7);
}

.ol-overviewmap .ol-overviewmap-box:hover {
  cursor: move;
}

.ol-popup {
  position: absolute;
  background-color: white;
  -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
  padding: 25px 15px 15px 15px;
  border: 0.06rem solid #66acb4;
  bottom: 12px;
  left: -50px;
  width: 300px;
  font-size: 13px;
}

.ol-popup p {
  margin-bottom: 0;
  padding-bottom: 5px;
  font-size: 13px;
}

.ol-popup th {
  text-align: left;
}

.popup-dynamic .ol-popup:after,
.popup-dynamic .ol-popup:before {
  top: 100%;
  border: solid transparent;
  content: ' ';
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.popup-dynamic .ol-popup:after {
  border-top-color: white;
  border-width: 10px;
  left: 48px;
  margin-left: -10px;
}

.popup-dynamic .ol-popup:before {
  border-top-color: #66acb4;
  border-width: 11px;
  left: 48px;
  margin-left: -11px;
}

.ol-popup-closer {
  cursor: pointer;
  text-decoration: none;
  position: absolute;
  top: 8px;
  right: 8px;
  width: 17px;
  height: 17px;
}

.ol-popup-closer:before,
.ol-popup-closer:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -1px;
  background: #8c8c8c;
  height: 4px;
  margin-top: -2px;
  border-radius: 5px;
}

.ol-popup-closer:hover:before,
.ol-popup-closer:hover:after {
  background: #66acb4;
}

.ol-popup-closer:before {
  transform: rotate(45deg);
}

.ol-popup-closer:after {
  transform: rotate(-45deg);
}

.popup-static .ol-overlay-container {
  right: 0px !important;
  top: auto !important;
  bottom: 0;
}

.popup-static > .ol-viewport > .ol-overlaycontainer-stopevent > .ol-overlay-container {
  left: auto !important;
  transform: none !important;
}

.popup-static .ol-popup {
  left: auto !important;
  right: 8px !important;
  bottom: 35px !important;
  width: 250px !important;
}

.popup-static .ol-popup-content p {
  overflow: auto;
  max-height: 60px;
  /* Only for firefox */
  scrollbar-color: #60999f #e2e3df;
  scrollbar-width: thin;
}

.map-without-scale-line .ol-scale-line {
  display: none;
}

.map-without-scale-line.popup-static .ol-popup {
  bottom: 5px !important;
}

.map-without-scale-line.popup-static .ol-overlay-container {
  right: 237px !important;
}

.layer-switcher.shown.ol-control {
  background-color: transparent;
}

.layer-switcher.shown.ol-control:hover {
  background-color: transparent;
}

.layer-switcher {
  position: absolute;
  top: 4.75em;
  left: 0.5em;
  text-align: left;
}

.layer-switcher.shown {
  bottom: 3em;
}

.layer-switcher .panel {
  padding: 0 1em 0 0;
  margin: 0;
  border: 4px solid #eee;
  border-radius: 4px;
  background-color: white;
  display: none;
  max-height: 100%;
  overflow-y: auto;
}

.layer-switcher.shown .panel {
  display: block;
}

.layer-switcher button {
  float: right;
  width: 32px;
  height: 32px;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgd2lkdGg9IjIwIgogICBoZWlnaHQ9IjIwIgogICBpZD0ic3ZnMiIKICAgdmVyc2lvbj0iMS4xIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkxIHIxMzcyNSIKICAgc29kaXBvZGk6ZG9jbmFtZT0ibGF5ZXJzLnN2ZyI+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhMTIiPgogICAgPHJkZjpSREY+CiAgICAgIDxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj4KICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4KICAgICAgICA8ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+CiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJERj4KICA8L21ldGFkYXRhPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxMCIgLz4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IgogICAgIGJvcmRlcm9wYWNpdHk9IjEiCiAgICAgb2JqZWN0dG9sZXJhbmNlPSIxMCIKICAgICBncmlkdG9sZXJhbmNlPSIxMCIKICAgICBndWlkZXRvbGVyYW5jZT0iMTAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTp3aW5kb3ctd2lkdGg9IjE2MjkiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iMTAyNiIKICAgICBpZD0ibmFtZWR2aWV3OCIKICAgICBzaG93Z3JpZD0iZmFsc2UiCiAgICAgaW5rc2NhcGU6em9vbT0iMjAuMzM3ODA0IgogICAgIGlua3NjYXBlOmN4PSIxNS4yNDkxOTUiCiAgICAgaW5rc2NhcGU6Y3k9IjguNDcxNzc0OCIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iNTEiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjI0IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjEiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnMiIgLz4KICA8ZwogICAgIGlkPSJnNCIKICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjAxOTUsMCwwLC0wLjAxOTUsMC4wMTYsMTguNzM2KSI+CiAgICA8cGF0aAogICAgICAgZD0iTSAxMDI0LDY0MCA1MTIsODk2IDAsNjQwIDUxMiwzODQgMTAyNCw2NDAgWiBNIDUxMiw4MTEuMDMgODU0LjA1OCw2NDAgNTEyLDQ2OC45NyAxNjkuOTQyLDY0MCA1MTIsODExLjAzIFogTSA5MjEuNDQ0LDQ5OS4yNzggMTAyNCw0NDggNTEyLDE5MiAwLDQ0OCAxMDIuNTU2LDQ5OS4yNzggNTEyLDI5NC41NTYgWiBtIDAsLTE5MiBMIDEwMjQsMjU2IDUxMiwwIDAsMjU2IDEwMi41NTYsMzA3LjI3OCA1MTIsMTAyLjU1NiBaIgogICAgICAgaWQ9InBhdGg2IgogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICA8L2c+Cjwvc3ZnPgo=')
    /*logo.png*/;
  background-repeat: no-repeat;
  background-position: center;
  background-color: white;
  border-radius: 2px;
  border: 0.06rem solid #66acb4;
}

.layer-switcher.shown button {
  display: none;
}

.layer-switcher button:focus,
.layer-switcher button:hover {
  background-color: white;
}

.layer-switcher ul {
  padding-left: 1em;
  list-style: none;
  margin-top: 16px;
  margin-bottom: 16px;
}

.layer-switcher li.group {
  padding-top: 5px;
}

.layer-switcher li.group > label {
  font-weight: bold;
}

.layer-switcher li.layer {
  display: table;
  margin-botton: 5px;
}

.layer-switcher li.layer label,
.layer-switcher li.layer input {
  display: table-cell;
}

.layer-switcher label.disabled {
  opacity: 0.4;
}

.layer-switcher input {
  margin: 4px;
}

.layer-switcher.touch ::-webkit-scrollbar {
  width: 4px;
}

.layer-switcher.touch ::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
}

.layer-switcher.touch ::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
}

.layer-switcher .group.layer-switcher-fold > label:before {
  content: '';
  border: solid black;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 2px;
  margin-right: 2px;
  margin-bottom: 2px;
}

.layer-switcher .group.layer-switcher-fold.layer-switcher-close > label:before {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.layer-switcher .group.layer-switcher-fold.layer-switcher-open > label:before {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

.layer-switcher .group.layer-switcher-fold.layer-switcher-close > ul {
  overflow: hidden;
  height: 0;
}

.ol-popup p::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

.ol-popup p::-webkit-scrollbar-thumb {
  background: #99c8cd;
}

.ol-popup p::-webkit-scrollbar-track {
  background: #e2e3df;
}

.ol-popup p::-webkit-scrollbar-thumb:hover {
  background: #60999f;
}

.btn-geoportal,
.btn.prime {
  color: #60999f;
  background: #ffffff;
  margin-bottom: 5px;
  padding: 8px 10px;
  border: 1px solid #60999f;
  border-radius: 2px;
  font-weight: bold;
}

.btn-geoportal:hover,
.btn.prime:hover {
  background: #d9d9d9;
}

.btn-geoportal:focus,
.btn.prime:focus {
  outline: none;
}
