.portlet-mapa {
  display: flex;
  flex-flow: column wrap;
  justify-content: flex-start;
}

.portlet-mapa .row {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: row wrap;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 0;
  padding-right: 0;
}

.portlet-mapa-search {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: row wrap;
}

.portlet-mapa .row.portlet-mapa-search {
  padding-bottom: 0.3rem;
}

.portlet-mapa .row.portlet-mapa-opis-lokalizacji {
  padding-top: 0.5rem;
  padding-bottom: 0.3rem;
}

.portlet-mapa .row.portlet-mapa-mapa {
  padding-top: 0.3rem;
}

.portlet-mapa-search label {
  margin: 0 0 0 0;
}

.portlet-mapa-search input {
  margin-left: 1rem;
}

.portlet-mapa-search input:focus {
  border-color: rgba(82, 168, 236, 0.8);
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}

.portlet-mapa-search .btn {
  margin-left: 1rem;
  padding-top: 1px;
  padding-bottom: 1px;
  padding-left: 2rem;
  padding-right: 2rem;
  color: black;
  border-radius: 0;
  font-size: inherit;
}

.portlet-mapa-legenda {
  display: flex;
  justify-content: flex-start;
  flex-flow: column wrap;
}

.portlet-mapa-legenda-pozycje {
  display: flex;
  justify-content: flex-start;
  flex-flow: row wrap;
  align-items: center;
  flex-shrink: 0;
  padding-left: 0.75rem;
}

.portlet-mapa-legenda-pozycje img {
  align-self: center;
}

.portlet-mapa-legenda-pozycje-opis {
  padding-left: 1rem;
  margin: 0 0 0 0;
}

.portlet-mapa-klawisze {
  display: flex;
  justify-content: flex-start;
  flex-flow: column wrap;
}

.portlet-mapa-klawisze-pozycje-opis {
  margin: 0 0 0 0;
  padding-left: 1rem;
}

#searchAlert {
  margin-left: 1rem;
  margin-top: 0;
  margin-bottom: 0;
}

#searchAlert .close {
  position: absolute;
  width: 1rem;
  height: 1rem;
  right: 0;
  top: 0;
}

.ol-popup {
  position: absolute;
  background-color: white;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  padding: 15px;
  border-radius: 10px;
  border: 1px solid #cccccc;
  bottom: 12px;
  left: -50px;
  min-width: 450px;
}

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

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

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

.ol-popup-closer {
  text-decoration: none;
  position: absolute;
  top: 2px;
  right: 8px;
}

.ol-popup-closer:hover {
  text-decoration: none;
}

.ol-popup-closer:after {
  content: "✖";
}

.ol-popup-hover {
  position: absolute;
  background-color: white;
  padding: 5px;
  border-radius: 5px;
  border: 1px solid #cccccc;
  bottom: 12px;
  left: -50px;
  min-width: 90px;
  font-size: 0.8rem;
}

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

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

.ol-popup-hover:before {
  border-top-color: #cccccc;
  border-width: 11px;
  left: 48px;
  margin-left: -11px;
}

.popup-hover-inside {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column nowrap;
  text-wrap: nowrap;
  font-weight: bold;
}

#map {
  border: 2px dotted gray;
}

#map:focus, #map:active {
  border-color: gray;
  border-style: solid;
  border-width: 2px;
}

#map.contrast {
  background-color: white !important;
  background: white !important;
}

#map.contrast svg,
#map.contrast div {
  background-color: transparent !important;
  background: transparent !important;
}

#map.contrast .ol-popup {
  background-color: black !important;
  background: black !important;
}

.ol-mouse-position {
  font-family: inherit;
  font-weight: bold;
}

#map.contrast .ol-mouse-position {
  background-color: black !important;
}

#map.contrast .popup-content img {
  background-color: transparent !important;
  background: transparent !important;
  -webkit-filter: invert(100%);
  filter: invert(100%);
}