@charset "utf-8";
/*
======================================
css for util-leaflet.js
======================================
*/

/* vars */
:root {
  --timing-function-bounce: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/*
------------------------------------------
L.Control.SimplePicker
------------------------------------------
*/
.leaflet-control-simplepicker {
  background-size: cover;
  cursor: pointer;

  -webkit-box-shadow: 0 0 0 1px #ccc;
  border: 0.125rem solid white;
  box-shadow: 0 0 0 1px #ccc;
  height: 3.438rem;
  width: 5rem;

  -webkit-transition: all 150ms ease;
  transition: all 150ms ease;
}

.leaflet-control-simplepicker:hover {
  -webkit-box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.25);
  border: 0.25rem solid white;
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.25);
  height: 8.125rem;
  width: 11.25rem;
}

/*
------------------------------------------
L.Control.LayerPicker
------------------------------------------
*/

/* button show-hide */
.layerpicker-btn {
  -webkit-transition: all 250ms;
  display: block;
  max-height: auto;
  max-width: auto;
  opacity: 1;
  transition: all 250ms;
}

.layerpicker-btn.layerpicker-min {
  -webkit-transform: rotate(180deg);
  -webkit-transition: all 0ms;
  max-height: 0;
  max-width: 0;
  opacity: 0;
  padding: 0;
  transform: rotate(180deg);
  transition: all 0ms;
}

/* panel show-hide base class (all effects fade) */
.layerpicker-pnl {
  height: 16pc;
  -webkit-transition: opacity 2000ms, -webkit-transform 500ms;
  -webkit-transition-timing-function: var(--timing-function-bounce);
  max-height: 21.88rem;
  overflow: hidden;
  transition: transform 500ms, opacity 2000ms, -webkit-transform 500ms;
  transition-timing-function: var(--timing-function-bounce);
  width: 22rem;
}

.layerpicker-pnl.layerpicker-min {
  -webkit-transition: all 0ms;
  max-height: 0;
  opacity: 0;
  transition: all 0ms;
  width: 0;
}

/* effects classes */
.layerpicker-down {
  -webkit-transform: translateY(-25rem);
  transform: translateY(-25rem);
}

.layerpicker-up {
  -webkit-transform: translateY(25rem);
  transform: translateY(25rem);
}

.layerpicker-left {
  -webkit-transform: translateX(25rem);
  transform: translateX(25rem);
}

.layerpicker-right {
  -webkit-transform: translateX(-25rem);
  transform: translateX(-25rem);
}

.layerpicker-zoom {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

.layerpicker-rotate {
  -webkit-transform: scale(0.5) rotate(-180deg);
  transform: scale(0.5) rotate(-180deg);
}

.layerpicker-rotateX {
  -webkit-transform: scale(0.8) rotateX(270deg);
  transform: scale(0.8) rotateX(270deg);
}

.layerpicker-rotateY {
  -webkit-transform: scale(0.8) rotateY(270deg);
  transform: scale(0.8) rotateY(270deg);
}

.layerpicker-scaleX {
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
}

.layerpicker-scaleY {
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
}

.layerpicker-skewX {
  -webkit-transform: scale(0) skewX(60deg);
  transform: scale(0) skewX(60deg);
}

.layerpicker-skewY {
  -webkit-transform: scale(0) skewY(60deg);
  transform: scale(0) skewY(60deg);
}

/* misc */
.layerpicker-pnl,
.layerpicker-pnl .btn {
  font-size: 0.75rem !important;
}

.layerpicker-pnl img {
  -o-object-fit: cover;
  height: 3.438rem;
  object-fit: cover;
  width: 5.313rem;
}

.layerpicker-pnl input {
  cursor: pointer;
}

.layerpicker-pnl .nav-link:not(.active) {
  color: #495057;
}

/*
------------------------------------------
L.Control.Zoomer
------------------------------------------
*/
.leaflet-control-zoom {
  border: 1px solid rgba(0, 0, 0, 0.2) !important;
}

.leaflet-control-zoom,
.leaflet-control-zoom > a {
  border-radius: 0;
}

/*
(1) search for icons here (search box at top): https://www.flaticon.com/
(2) click icon to get and click [+] buttom top right  [png][svg][+] <==
(3) click base64 in menu, then Free Download
(4) copy the css background and paste here
*/
.leaflet-control-zoom-home {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE2LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9IjUxMHB4IiBoZWlnaHQ9IjUxMHB4IiB2aWV3Qm94PSIwIDAgNTEwIDUxMCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEwIDUxMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGcgaWQ9ImhvbWUiPg0KCQk8cG9seWdvbiBwb2ludHM9IjIwNCw0NzEuNzUgMjA0LDMxOC43NSAzMDYsMzE4Ljc1IDMwNiw0NzEuNzUgNDMzLjUsNDcxLjc1IDQzMy41LDI2Ny43NSA1MTAsMjY3Ljc1IDI1NSwzOC4yNSAwLDI2Ny43NSANCgkJCTc2LjUsMjY3Ljc1IDc2LjUsNDcxLjc1IAkJIi8+DQoJPC9nPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPC9zdmc+DQo=");
  background-size: 1.125rem 1.125rem;
}

.leaflet-control-zoom-home.leaflet-disabled {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjUxMnB4IiBoZWlnaHQ9IjUxMnB4IiB2aWV3Qm94PSIwIDAgNTEwIDUxMCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEwIDUxMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxnIGlkPSJob21lIj4KCQk8cG9seWdvbiBwb2ludHM9IjIwNCw0NzEuNzUgMjA0LDMxOC43NSAzMDYsMzE4Ljc1IDMwNiw0NzEuNzUgNDMzLjUsNDcxLjc1IDQzMy41LDI2Ny43NSA1MTAsMjY3Ljc1IDI1NSwzOC4yNSAwLDI2Ny43NSAgICAgNzYuNSwyNjcuNzUgNzYuNSw0NzEuNzUgICAiIGZpbGw9IiNiYmJiYmIiLz4KCTwvZz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.leaflet-control-zoom-geo {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE4LjEuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgODYgODYiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDg2IDg2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8Zz4NCgk8Zz4NCgkJPHBhdGggc3R5bGU9ImZpbGw6IzAzMDEwNDsiIGQ9Ik04NC43OTMsMS4yMDdjLTIuOTI4LTIuOTI4LTUuNzE5LTAuMTYzLTE1LjIwNSw0LjM5N0M0NC4yMjEsMTcuNzk3LDAsNDIuNTc4LDAsNDIuNTc4DQoJCQlsMzcuOTkyLDUuNDI4TDQzLjQyLDg2YzAsMCwyNC43ODMtNDQuMjIsMzYuOTc1LTY5LjU4OUM4NC45NTcsNi45MjUsODcuNzIxLDQuMTM1LDg0Ljc5MywxLjIwN3ogTTc1LjY3OCwxMC45OEw0OC4wODQsNjIuMjI2DQoJCQlsLTIuODAxLTIzLjI5TDc1LjY3OCwxMC45OHoiLz4NCgk8L2c+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8L3N2Zz4NCg==");
  background-size: 0.9375rem 0.9375rem;
}

.leaflet-control-zoom-geo.leaflet-disabled {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMS4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDg2IDg2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA4NiA4NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSI1MTJweCIgaGVpZ2h0PSI1MTJweCI+CjxnPgoJPGc+CgkJPHBhdGggZD0iTTg0Ljc5MywxLjIwN2MtMi45MjgtMi45MjgtNS43MTktMC4xNjMtMTUuMjA1LDQuMzk3QzQ0LjIyMSwxNy43OTcsMCw0Mi41NzgsMCw0Mi41NzggICAgbDM3Ljk5Miw1LjQyOEw0My40Miw4NmMwLDAsMjQuNzgzLTQ0LjIyLDM2Ljk3NS02OS41ODlDODQuOTU3LDYuOTI1LDg3LjcyMSw0LjEzNSw4NC43OTMsMS4yMDd6IE03NS42NzgsMTAuOThMNDguMDg0LDYyLjIyNiAgICBsLTIuODAxLTIzLjI5TDc1LjY3OCwxMC45OHoiIGZpbGw9IiNiYmJiYmIiLz4KCTwvZz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.leaflet-control-zoom-points {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgdmlld0JveD0iMCAwIDUxMiA1MTIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDUxMiA1MTI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxnPg0KCQk8cGF0aCBkPSJNMjU2LDBDMTUzLjc1NSwwLDcwLjU3Myw4My4xODIsNzAuNTczLDE4NS40MjZjMCwxMjYuODg4LDE2NS45MzksMzEzLjE2NywxNzMuMDA0LDMyMS4wMzUNCgkJCWM2LjYzNiw3LjM5MSwxOC4yMjIsNy4zNzgsMjQuODQ2LDBjNy4wNjUtNy44NjgsMTczLjAwNC0xOTQuMTQ3LDE3My4wMDQtMzIxLjAzNUM0NDEuNDI1LDgzLjE4MiwzNTguMjQ0LDAsMjU2LDB6IE0yNTYsMjc4LjcxOQ0KCQkJYy01MS40NDIsMC05My4yOTItNDEuODUxLTkzLjI5Mi05My4yOTNTMjA0LjU1OSw5Mi4xMzQsMjU2LDkyLjEzNHM5My4yOTEsNDEuODUxLDkzLjI5MSw5My4yOTNTMzA3LjQ0MSwyNzguNzE5LDI1NiwyNzguNzE5eiIvPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K");
  background-size: 0.9375rem 0.9375rem;
}

.leaflet-control-zoom-points.leaflet-disabled {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjUxMnB4IiBoZWlnaHQ9IjUxMnB4Ij4KPGc+Cgk8Zz4KCQk8cGF0aCBkPSJNMjU2LDBDMTUzLjc1NSwwLDcwLjU3Myw4My4xODIsNzAuNTczLDE4NS40MjZjMCwxMjYuODg4LDE2NS45MzksMzEzLjE2NywxNzMuMDA0LDMyMS4wMzUgICAgYzYuNjM2LDcuMzkxLDE4LjIyMiw3LjM3OCwyNC44NDYsMGM3LjA2NS03Ljg2OCwxNzMuMDA0LTE5NC4xNDcsMTczLjAwNC0zMjEuMDM1QzQ0MS40MjUsODMuMTgyLDM1OC4yNDQsMCwyNTYsMHogTTI1NiwyNzguNzE5ICAgIGMtNTEuNDQyLDAtOTMuMjkyLTQxLjg1MS05My4yOTItOTMuMjkzUzIwNC41NTksOTIuMTM0LDI1Niw5Mi4xMzRzOTMuMjkxLDQxLjg1MSw5My4yOTEsOTMuMjkzUzMwNy40NDEsMjc4LjcxOSwyNTYsMjc4LjcxOXoiIGZpbGw9IiNiYmJiYmIiLz4KCTwvZz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.leaflet-control-zoom-home,
.leaflet-control-zoom-geo,
.leaflet-control-zoom-points {
  background-position: center center;
  background-repeat: no-repeat;
  text-indent: -999em;
}

.leaflet-control-zoom-home:focus,
.leaflet-control-zoom-geo:focus,
.leaflet-control-zoom-points:focus {
  outline: 0;
}

/* geolocate button */
.leaflet-control-zoom-geo.active {
  background-color: #b3e0ff;
}

.leaflet-control-zoom-geo.active:hover {
  background-color: #80ccff;
}

/* geolocate icon */
.leaflet-control-zoom-geolocate-marker {
  background: none;
}

.leaflet-control-zoom-geolocate-marker-circle {
  background-color: #00f;
  border-radius: 9999rem;
  height: 0.9375rem;
  position: relative;
  width: 0.9375rem;
}

.leaflet-control-zoom-geolocate-marker-pulse {
  -webkit-animation: geolocatePulse 1.2s ease-in-out infinite;
  animation: geolocatePulse 1.2s ease-in-out infinite;
  background-color: #9ef;
  background-image: radial-gradient(#9ef, #09f);
  border-radius: 9999rem;
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

@-webkit-keyframes geolocatePulse {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: scale(4);
    transform: scale(4);
  }
}

@keyframes geolocatePulse {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: scale(4);
    transform: scale(4);
  }
}

/*
------------------------------------------
L.Control.InsetMap
------------------------------------------
*/
.leaflet-control-insetmap {
  -webkit-box-shadow: 0 0 0 1px #ccc;
  -webkit-box-sizing: content-box;
  -webkit-transition: all 400ms;
  background: white;
  border: 0.25rem solid white;
  box-shadow: 0 0 0 1px #ccc;
  box-sizing: content-box;
  cursor: move;
  transition: all 400ms;
}

.leaflet-control-insetmap a {
  -webkit-transition: all 400ms;
  -webkit-transition-timing-function: var(--timing-function-bounce);
  background-color: rgba(255, 255, 255, 1);
  background-repeat: no-repeat;
  transition: all 400ms;
  transition-timing-function: var(--timing-function-bounce);
  z-index: 99999;
}

.leaflet-control-insetmap a.minimized-bottomright,
.leaflet-control-insetmap a.minimized-topleft,
.leaflet-control-insetmap a.minimized-bottomleft,
.leaflet-control-insetmap a.minimized-topright {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

.leaflet-control-insetmap-button {
  color: #444 !important;
  font-size: 28px;
  line-height: 30px;
  position: absolute;
  text-align: center;
}

.leaflet-control-insetmap-button-bottomright {
  bottom: 0;
  right: 0;
}

.leaflet-control-insetmap-button-topleft {
  left: 0;
  top: 0;
}

.leaflet-control-insetmap-button-bottomleft {
  bottom: 0;
  left: 0;
}

.leaflet-control-insetmap-button-topright {
  right: 0;
  top: 0;
}

/*
------------------------------------------
L.Control.ScaleBar
------------------------------------------
*/
.leaflet-top .leaflet-control-scale {
  margin-top: 0.625rem;
}

.leaflet-right .leaflet-control-scale {
  margin-right: 0.625rem;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 0.625rem;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 0.625rem;
}

.leaflet-control-scale-line {
  background: rgba(255, 255, 255, 0.7);
}

/*
------------------------------------------
L.Control.Coordinates
------------------------------------------
*/
.leaflet-control-coordinates {
  background: rgba(255, 255, 255, 0.7);
  font-size: 80%;
  padding: 0.3rem 0.6rem;
}

/*
------------------------------------------
L.Control.CenterPanel
------------------------------------------
*/
.leaflet-center-top,
.leaflet-center-bottom {
  text-align: center;
  width: 100%;
}

.leaflet-control-centerpanel {
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid #ddd;
  clear: none;
  display: inline-block;
  float: none;
  padding: 0.625rem;
  text-align: initial;
}

/*
------------------------------------------
L.nwsWatches
------------------------------------------
*/
.util-leaflet-nwsWatches-warning {
  fill: #f00;
  stroke: #900;
}

.util-leaflet-nwsWatches-watch {
  fill: #f93;
  stroke: #c60;
}

.util-leaflet-nwsWatches-advisory {
  fill: #ff0;
  stroke: #cc0;
}

.util-leaflet-nwsWatches-statement {
  fill: #69e;
  stroke: #36c;
}

.util-leaflet-nwsWatches-other {
  fill: #b9f;
  stroke: #73f;
}

.util-leaflet-nwsWatches:hover {
  fill: #0ff;
  stroke: #077;
  stroke-opacity: 1;
}

.util-leaflet-nwsWatches {
  -webkit-transition: stroke 200ms linear, fill 200ms linear;
  transition: stroke 200ms linear, fill 200ms linear;
}

.util-leaflet-popup-thumbnail-nwsWatches div {
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE4LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgdmlld0JveD0iMCAwIDYwIDYwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA2MCA2MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZD0iTTM2LjQ5MSwyMmgtMjVjLTAuNTUzLDAtMSwwLjQ0OC0xLDFzMC40NDcsMSwxLDFoMjVjMC41NTMsMCwxLTAuNDQ4LDEtMVMzNy4wNDQsMjIsMzYuNDkxLDIyeiIvPg0KCTxwYXRoIGQ9Ik0xMS40OTEsMTZoMTBjMC41NTMsMCwxLTAuNDQ4LDEtMXMtMC40NDctMS0xLTFoLTEwYy0wLjU1MywwLTEsMC40NDgtMSwxUzEwLjkzOCwxNiwxMS40OTEsMTZ6Ii8+DQoJPHBhdGggZD0iTTM3LjQ5MSwzMWMwLTAuNTUyLTAuNDQ3LTEtMS0xaC0yNWMtMC41NTMsMC0xLDAuNDQ4LTEsMXMwLjQ0NywxLDEsMWgyNUMzNy4wNDQsMzIsMzcuNDkxLDMxLjU1MiwzNy40OTEsMzF6Ii8+DQoJPHBhdGggZD0iTTI5LjQ5MSwzOWMwLTAuNTUyLTAuNDQ3LTEtMS0xaC0xN2MtMC41NTMsMC0xLDAuNDQ4LTEsMXMwLjQ0NywxLDEsMWgxN0MyOS4wNDQsNDAsMjkuNDkxLDM5LjU1MiwyOS40OTEsMzl6Ii8+DQoJPHBhdGggZD0iTTExLjQ5MSw0NmMtMC41NTMsMC0xLDAuNDQ4LTEsMXMwLjQ0NywxLDEsMWgxNGMwLjU1MywwLDEtMC40NDgsMS0xcy0wLjQ0Ny0xLTEtMUgxMS40OTF6Ii8+DQoJPHBhdGggZD0iTTIuNDkxLDJoMjl2MTRoMTR2MTVoMlYxNC41ODZMMzIuOTA1LDBIMC40OTF2NjBoMzd2LTJoLTM1VjJ6IE0zMy40OTEsMy40MTRMNDQuMDc3LDE0SDMzLjQ5MVYzLjQxNHoiLz4NCgk8cGF0aCBkPSJNNTkuMjMyLDU4LjI5MWwtNS45Ny02LjI0NGMxLjc0Ni0xLjkxOSwyLjgyLTQuNDU4LDIuODItNy4yNTFDNTYuMDgzLDM4Ljg0Myw1MS4yNCwzNCw0NS4yODcsMzQNCgkJcy0xMC43OTYsNC44NDMtMTAuNzk2LDEwLjc5NnM0Ljg0MywxMC43OTYsMTAuNzk2LDEwLjc5NmMyLjQ0MiwwLDQuNjg5LTAuODI0LDYuNDk5LTIuMTk2bDYuMDAxLDYuMjc2DQoJCWMwLjE5NiwwLjIwNiwwLjQ1OSwwLjMwOSwwLjcyMywwLjMwOWMwLjI0OSwwLDAuNDk3LTAuMDkyLDAuNjkxLTAuMjc3QzU5LjU5OSw1OS4zMjMsNTkuNjE0LDU4LjY4OSw1OS4yMzIsNTguMjkxeiBNMzYuNDkxLDQ0Ljc5Ng0KCQljMC00Ljg1LDMuOTQ2LTguNzk2LDguNzk2LTguNzk2czguNzk2LDMuOTQ2LDguNzk2LDguNzk2cy0zLjk0Niw4Ljc5Ni04Ljc5Niw4Ljc5NlMzNi40OTEsNDkuNjQ2LDM2LjQ5MSw0NC43OTZ6Ii8+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8L3N2Zz4NCg==");
  background-position: center center;
  background-repeat: no-repeat;
  height: 2.5rem;
  margin: 0 auto 0.3125rem auto;
  width: 2.5rem;
}

/*
------------------------------------------
popup animations
can animate popups by:
(1) add use marker className option when creating, eg: className:"util-leaflet-animate-EFFECT"
(2) add "util-leaflet-animate-EFFECT" to a parent of the marker, eg: map or popup pane:
    >> map.getPane("popupPane").classList.add("util-leaflet-animate-EFFECT");
(3) connect map popup event:
    >> map.on("popupopen", ()=> map.getPane("popupPane").classList.add("util-leaflet-animate-EFFECT") );
where "EFFECT" is the effect name, eg: "down","up", etc (see below)

TODO: CAN WE MAKE KEYFRAMES GENERIC AND HAVE BOTH THIS AND LAYERPICKER USE ???
------------------------------------------
*/

/* beautify ignore:start */
.util-leaflet-animate-down .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-down 350ms
    var(--timing-function-bounce);
  animation: util-leaflet-animate-down 350ms var(--timing-function-bounce);
}
@-webkit-keyframes util-leaflet-animate-down {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5) translateY(-200px);
    transform: scale(1.5) translateY(-200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
  }
}
@keyframes util-leaflet-animate-down {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5) translateY(-200px);
    transform: scale(1.5) translateY(-200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
  }
}

.util-leaflet-animate-up .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-up 350ms var(--timing-function-bounce);
  animation: util-leaflet-animate-up 350ms var(--timing-function-bounce);
}
@-webkit-keyframes util-leaflet-animate-up {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5) translateY(200px);
    transform: scale(1.5) translateY(200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
  }
}
@keyframes util-leaflet-animate-up {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5) translateY(200px);
    transform: scale(1.5) translateY(200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
  }
}

.util-leaflet-animate-left .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-left 350ms
    var(--timing-function-bounce);
  animation: util-leaflet-animate-left 350ms var(--timing-function-bounce);
}
@-webkit-keyframes util-leaflet-animate-left {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) translateX(-200px);
    transform: scale(0.5) translateX(-200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateX(0);
    transform: scale(1) translateX(0);
  }
}
@keyframes util-leaflet-animate-left {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) translateX(-200px);
    transform: scale(0.5) translateX(-200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateX(0);
    transform: scale(1) translateX(0);
  }
}

.util-leaflet-animate-right .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-right 350ms
    var(--timing-function-bounce);
  animation: util-leaflet-animate-right 350ms var(--timing-function-bounce);
}
@-webkit-keyframes util-leaflet-animate-right {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) translateX(200px);
    transform: scale(0.5) translateX(200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateX(0);
    transform: scale(1) translateX(0);
  }
}
@keyframes util-leaflet-animate-right {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) translateX(200px);
    transform: scale(0.5) translateX(200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateX(0);
    transform: scale(1) translateX(0);
  }
}

.util-leaflet-animate-zoom .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-zoom 350ms
    var(--timing-function-bounce);
  -webkit-transform-origin: 50% 100%;
  animation: util-leaflet-animate-zoom 350ms var(--timing-function-bounce);
  transform-origin: 50% 100%;
}
@-webkit-keyframes util-leaflet-animate-zoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes util-leaflet-animate-zoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.util-leaflet-animate-rotate .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-rotate 700ms
    var(--timing-function-bounce);
  animation: util-leaflet-animate-rotate 700ms var(--timing-function-bounce);
}
@-webkit-keyframes util-leaflet-animate-rotate {
  0% {
    opacity: 0;
    -webkit-transform: scale(0) rotate(-360deg);
    transform: scale(0) rotate(-360deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}
@keyframes util-leaflet-animate-rotate {
  0% {
    opacity: 0;
    -webkit-transform: scale(0) rotate(-360deg);
    transform: scale(0) rotate(-360deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

.util-leaflet-animate-rotateX .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-rotateX 700ms
    var(--timing-function-bounce);
  -webkit-transform-origin: 50% 100%;
  animation: util-leaflet-animate-rotateX 700ms var(--timing-function-bounce);
  transform-origin: 50% 100%;
}
@-webkit-keyframes util-leaflet-animate-rotateX {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) rotateX(360deg);
    transform: scale(0.5) rotateX(360deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotateX(0);
    transform: scale(1) rotateX(0);
  }
}
@keyframes util-leaflet-animate-rotateX {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) rotateX(360deg);
    transform: scale(0.5) rotateX(360deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotateX(0);
    transform: scale(1) rotateX(0);
  }
}

.util-leaflet-animate-rotateY .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-rotateY 700ms
    var(--timing-function-bounce);
  -webkit-transform-origin: 50% 100%;
  animation: util-leaflet-animate-rotateY 700ms var(--timing-function-bounce);
  transform-origin: 50% 100%;
}
@-webkit-keyframes util-leaflet-animate-rotateY {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) rotateY(360deg);
    transform: scale(0.5) rotateY(360deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotateY(0);
    transform: scale(1) rotateY(0);
  }
}
@keyframes util-leaflet-animate-rotateY {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) rotateY(360deg);
    transform: scale(0.5) rotateY(360deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotateY(0);
    transform: scale(1) rotateY(0);
  }
}

.util-leaflet-animate-scaleX .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-scaleX 350ms
    var(--timing-function-bounce);
  animation: util-leaflet-animate-scaleX 350ms var(--timing-function-bounce);
}
@-webkit-keyframes util-leaflet-animate-scaleX {
  0% {
    opacity: 0.5;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}
@keyframes util-leaflet-animate-scaleX {
  0% {
    opacity: 0.5;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

.util-leaflet-animate-scaleY .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-scaleY 350ms
    var(--timing-function-bounce);
  -webkit-transform-origin: 50% 100%;
  animation: util-leaflet-animate-scaleY 350ms var(--timing-function-bounce);
  transform-origin: 50% 100%;
}
@-webkit-keyframes util-leaflet-animate-scaleY {
  0% {
    opacity: 0.5;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}
@keyframes util-leaflet-animate-scaleY {
  0% {
    opacity: 0.5;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}

.util-leaflet-animate-skewX .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-skewX 350ms
    var(--timing-function-bounce);
  -webkit-transform-origin: 50% 100%;
  animation: util-leaflet-animate-skewX 350ms var(--timing-function-bounce);
  transform-origin: 50% 100%;
}
@-webkit-keyframes util-leaflet-animate-skewX {
  0% {
    opacity: 0;
    -webkit-transform: skewX(-60deg);
    transform: skewX(-60deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: skewX(0);
    transform: skewX(0);
  }
}
@keyframes util-leaflet-animate-skewX {
  0% {
    opacity: 0;
    -webkit-transform: skewX(-60deg);
    transform: skewX(-60deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: skewX(0);
    transform: skewX(0);
  }
}

.util-leaflet-animate-skewY .leaflet-popup-content-wrapper {
  -webkit-animation: util-leaflet-animate-skewY 350ms
    var(--timing-function-bounce);
  -webkit-transform-origin: 50% 100%;
  animation: util-leaflet-animate-skewY 350ms var(--timing-function-bounce);
  transform-origin: 50% 100%;
}
@-webkit-keyframes util-leaflet-animate-skewY {
  0% {
    opacity: 0;
    -webkit-transform: skewX(60deg);
    transform: skewX(60deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: skewX(0);
    transform: skewX(0);
  }
}
@keyframes util-leaflet-animate-skewY {
  0% {
    opacity: 0;
    -webkit-transform: skewX(60deg);
    transform: skewX(60deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: skewX(0);
    transform: skewX(0);
  }
}
/* beautify ignore:end */

/*
------------------------------------------
leaflet popups
------------------------------------------
*/
.leaflet-popup-content-wrapper,
.leaflet-popup-content-wrapper .btn {
  border-radius: 0;
  font-size: 0.75rem;
}

.leaflet-popup-content {
  font-family: Arial, Helvetica, sans-serif;
  margin: 0.5rem;
}

.util-leaflet-popup h4 {
  color: #777;
  font-size: 1rem;
  font-weight: normal;
  margin: 0;
  text-align: center;
}

.util-leaflet-popup table {
  border-top: 1px solid #ccc;
  margin: 0.3125rem 0 0 0;
  width: 100%;
}

.util-leaflet-popup td {
  padding: 0.3125rem;
  text-align: left;
  vertical-align: middle;
}

.util-leaflet-popup .alert {
  border-radius: 0;
  margin: 0;
  margin-top: 0.1875rem;
  padding: 0.3125rem 0.625rem;
}

.util-leaflet-popup .alert-info {
  background: #ebf3f9;
  border: 1px solid #31708f;
  color: #31708f;
}

.util-leaflet-popup .alert-warning {
  background: #fcf8e3;
  border: 1px solid #9f875b;
  color: #9f875b;
}

.util-leaflet-popup b {
  font-size: 120%;
}

.util-leaflet-popup .btn-group-justified {
  margin: 0.3125rem 0 0 0;
  text-align: center;
  width: 100%;
}

.util-leaflet-popup button {
  cursor: pointer;
}

.util-leaflet-popup-thumbnail {
  border: 1px solid #ccc;
  cursor: pointer;
  margin: 0;
  padding: 0.1875rem;
  text-align: center;
}

.util-leaflet-popup-thumbnail:hover {
  background: #e6e6e6;
}

/*
--------------------------------------
unselectable
--------------------------------------
*/
.util-leaflet-unselectable {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-touch-callout: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  user-select: none;
}
