#map { 
	position: absolute;
	width: 100%;
	left: 0; right: 0; top: 0; bottom: 0;
	z-index: 0;
}

/* Page with header bar */

body.title_header_bar #pageHeader {
	height: 4rem;
}
body.title_header_bar #pageHeaderTitle {
	display: inline-block;
	padding: 0.5rem 0 0 1rem; 
	font-size: 2rem; font-weight: bold;
}
body.title_header_bar #pageHeaderLogo {
	display: inline-block;
	float: right;
	padding: 0.2rem 1rem 0 0;
	vertical-align: center;
}
body.title_header_bar #map {
	top: 4rem;
}

/* Page with on-map title */

body.title_on_map #pageHeader { display: none; }

/* Page with no title */

body.title_none #pageHeader { display: none; }

/* Controls */

.leaflet-control-layers { position: fixed; right: 40px; top: 0px; z-index: 1000; }
body.title_header_bar .leaflet-control-layers { top: 4rem !important; }
.leaflet-control-layers-toggle { height: 56px !important; }
.leaflet-control-zoom.leaflet-bar a { width: 26px !important; height: 28px !important; font-size: 14px; }

/* Content control */

.leaflet-control-content { padding-right: 2px; }
.leaflet-content-interior {
    display: block;
    padding: 3px;
    box-shadow: 0 1px 7px rgba(0, 0, 0, 0.65);
    cursor: auto;
    background-color: white;
	max-height: 50vh; overflow-y: auto;
}
.leaflet-control-content .closable { border-right: 4px solid white; }
.leaflet-content-interior.rounded {
    border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px;
}
.leaflet-control-content-close { 
	right: 0; top: 0; position: absolute;
	color: #222; cursor: pointer; font-size: 18px;
	margin-right: 4px; margin-top: -4px;
}
.leaflet-control-content .help_info img { width: 30px; cursor: pointer; }
.leaflet-control-content .help_info div:hover { background-color: #F4F4F4; }
.leaflet-control-content .intro-control { padding: 10px 10px 3px 10px; max-width: min(50vw,300px); }
.leaflet-control-content .intro-control h1,
.leaflet-control-content .intro-control h2,
.leaflet-control-content .intro-control h3 { padding: 0px; line-height: 1.2em; border-bottom-width: 0px; margin: 0 0 8px 0; }
.leaflet-control-content .intro-control p { padding: 0 0 8px 0; margin: 0; }
.leaflet-control-content .intro-control * { margin-top: 0; }
.leaflet-control-content .key-control { padding: 0.5em; max-width: min(50vw,300px); }
.leaflet-control-content .key-control p { padding: 0; margin: 0; }
.leaflet-control-content ol, .leaflet-control-content ul { padding-left: 0; list-style-position: inside; }
.leaflet-control-content .login-control { padding: 10px; font-size: small; }
.leaflet-control-content .login-control a:hover { cursor: pointer; }
	
/* Large popup content */

#large_popup {
    border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px;
	background-color: white;
	position: absolute;
	display: none;
	left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%);
	width: 700px; max-width: 80%;
	height: 700px; max-height: 80%;
	z-index: 100;
	padding: 10px 20px 10px 20px;
	font-size: 0.8em;
	overflow: auto;
}

/* Tweaks for accessibility */

.leaflet-popup-content { font-size: 1.3em; }
.leaflet-container a.leaflet-popup-close-button { color: #222 !important; }
#loginFooter { font-size: 1.3em; }

/*.leaflet-key-interior:hover { background-color: #F4F4F4; }*/

/*#loginFooter {
	position: absolute;
	left: 10px; bottom: 10px;
		z-index: 1;
	background-color: white;
	font-size: small;
}
#loginFooter a:hover { cursor: pointer; }
*/

