html, body {
 margin: 0px;
 font-family: Tahoma, sans-serif; 
}

.content {
 margin-top: 60px;
 margin-left: 10px;
 margin-right: 10px;
 z-index: 400;
}

.content p, 
.content h4, 
.content h5, 
.content div, 
.content dl { 
 margin-left: inherit;
 margin-right: inherit;
 z-index: inherit;
}

.content > h4 {
 color: #555;
}

.content dt {
 font-weight: bolder;
}

.lister dt {
 font-weight: normal;
}

.nopad {
 margin-top: 0px; 
 margin-bottom: 0px;
}

.header {
 position: fixed;
 top: 0px;
 left: 0px;
 width: 100%;
 color: black;
 background-color: #f9f9f9;
 height: 40px;
}

.header:hover {
 cursor: pointer;
}

.page_menu {
 position: fixed;
 top: 40px;
 left: 0px;
 width: 100%;
 color: #000;
 background-color: rgb(63, 190, 193);
 height: 20px;
 z-index: 500; 
 font-size: 16px;
 overflow-x: hidden;
}

.page_menu_item {
 font-size: 12px;
 margin-left: 8px;
}
.page_menu_item:hover {
 text-decoration: underline;
 cursor: pointer;
}

.footer_item{
 font-size: smaller;
 margin-right: 8px;
}


.menu {
 padding: 4px;
 position: fixed;
 left: -400px;
 top: 0px;
 height: 260px;
 width: 240px;
 background-color: white;
 transition: left 0.2s;
 z-index: 1000;
}

.menu_items {
 margin: 0px;  
 padding: 4px;
 white-space: nowrap;
 font-size: 18px;
 color:#555;
}

.menu_items > li {
 padding: 8px;
 margin-left: 0px;
 margin-right: 8px;
 cursor: pointer;
}

.menu_items > li:hover {
 font-weight: bolder;
}

.blackout {
 position: fixed;
 left: 0px;
 top: 0px;
 height: 100%;
 width: 100%;
 background-color: black;
 opacity: 0.3;
 z-index: 999;
 display: none;
}

.full_screen {
 position: fixed; 
 left: 0px; 
 top: 40px; 
 width: 100vw; 
 height: calc(100vh - 40px); 
 margin: 0px; 
 padding: 0px;
 z-index: 500;
 display: none;
}

.map_buttons {
 position: fixed;
 left: 10px;
 top: 40px;
 z-index: 510;
}

.map_title {
 position: fixed;
 top: 50px;
 left: 50px;
 background: rgba(255,255,255,0.5);
 z-index: 510;
}

.link, 
.drilldown {
 cursor: pointer;
 width: 100%;
}

.blue, 
.drilldown {
 color: blue;
}

.drilldown:hover {
 text-decoration: underline;
}

a, 
.link {
 color: #1A1A1A;
 font-weight: normal;
 position: relative;
 -webkit-transition: background-size 220ms ease-in;
 -o-transition: background-size 220ms ease-in;
 transition: background-size 220ms ease-in;
 background-size: 100% 0.2em; 
}

a:hover, 
a:focus,
.link:hover, 
.link:focus {
 text-decoration: none;
 color: #1A1A1A;
 background-size: 100% 100%;
 background-image: -o-linear-gradient(330deg, #00bec0 0%, #00bec0 100%);
 background-image: linear-gradient(120deg, #00bec0 0%, #00bec0 100%);
 background-repeat: no-repeat;
 background-position: 0 100%; 
}

button { 
 background-color: rgb(0 165 167); 
 outline: none;
 border-radius: 4px;
 border: none;
 padding-left: 12px;
 padding-right: 12px;
 padding-top: 4px;
 padding-bottom: 4px;
 margin: 3px;
 color: white;
 min-height: 28px; 
 -webkit-transition: background-size 220ms ease-in;
 -o-transition: background-size 220ms ease-in;
 transition: background-size 220ms ease-in;
 background-size: 100% 0.2em;
}

button:hover {
 cursor: pointer;
 background-color: rgb(0 195 197);
}

button.sep, 
.sep button {
 margin-top: 8px;
}

.spin {
 animation: spin 1.0s linear infinite;
}
@keyframes spin {
 0% {
  transform: rotate(0deg);
 }
 100% {
  transform: rotate(360deg);
 }
}

.sortable {
 list-style-type: none;
 margin: 0px;
 float: left;
 margin-right: 0px;
 background-color: rgba(0, 190, 192, 0.4);
 padding: 5px;
 width: 170px;
 max-width: 170px;
 min-height: 40px;
 overflow-x: hidden;
 max-height: 280px;
 overflow-y: auto;
}

.sortable li {
 margin: 5px;
 padding: 5px;
 font-size: x-small;
 font-weight: bolder;
 width: 120px;
 max-width: 120px;
 overflow: hidden; 
 border: 1px solid black;
 border-radius: 2px;
 background-color: rgba(0, 190, 192);
 cursor: grab;
}

ul.status {
 position: fixed;
 bottom: 0px;
 right: 0px;
 width: 350px;
 max-width: calc(100% - 6px);
 list-style-type: none;
 list-style-position: outside;
 pointer-events: none;
 z-index: 9000;
}

ul.status > li {
 padding: 10px 20px;
 padding: 0.75rem;
 margin: 6px;
 margin: 0.5rem; 
 -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
 -webkit-box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.2);
         box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
         box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.2);
 background: #fff;
 border-radius: 4px;
 border-radius: 0.25rem;
 z-index: 9000;
}

.status_right {
 opacity: 0.2;
 transform: translateX(500px);
 transition: all 0.5s cubic-bezier(.36,-0.64,.34,1.76);
}

.status_show {
 opacity: 1;
 transform: none;
 transition: all 0.5s cubic-bezier(.36,-0.64,.34,1.76);
}

.loading_throbber {
 min-width: 100vw;
 height: 100vh;
 overflow-y: auto;
 position: fixed;
 top: 0px;
 left: 0px;
 display: flex;
 justify-content: center;
 align-items: center;
 z-index: 9000;
 pointer-events: none;
 font-size: 70px; 
 color: rgb(51 80 117);
 background-color: rgba(0, 0, 0, 0.1); 
}

.feedback {
 position: fixed;
 bottom: 15px; 
 left: 15px; 
 z-index: 9000; 
 pointer-events: none; 
 color: dodgerblue; 
 text-shadow: white 0.1em 0.1em 0.4em; 
 font-size: larger; 
 font-weight: bolder;
 background-color: rgba(255, 255, 255, 0.6)
}

dialog {
 z-index: 1200;
 position: fixed;
 top: 65px;
 max-height: calc(100vh - 140px); 
 max-width: 80%; 
 overflow: auto;
}


textarea {
 width: 80%;
 max-width: 640px;
}

textarea,
select, 
input[type="text"],
input[type="number"],
input[type="search"] {
 min-height: 30px;
 min-height: 1.5rem;
 border-radius: 4px;
 border-radius: 0.25rem;
 padding: 5px 8px;
 padding: 0.3125rem 0.5rem;
 background: whitesmoke; 
 box-sizing:content-box;
}

input[type="checkbox"] {
 width: 16px;
 height: 16px;
 border: 1px solid #7e7e7e;
 background: whitesmoke;
 border-radius: 2px;
}

/* Plugins styling */
.leaflet-popup-content {
 font-size: larger !important;
 overflow-x: auto;
 overflow-y: auto;
}
