:root {
	--bgcolor: white;
	--fgcolor: black;
	--hlcolor: darkgray;
	--incolor: white;
	--primary-normal: #D67C2E;
	--neutral-normal: #173136;
	--secondary-light: #F4F7F2;
	--secondary-normal: #8EAF81;
	--secondary-dark: #6B8361;
	--tones-white: #fff;
	--headerheight: 52px;
	--iconwidth: 40px;
	--buttonsize: 40px;
	--map-title-font-size: 20px;
	--map-title-font-fam: "Source Serif Pro";
	--map-hdr-font-fam: "Source Sans Pro";
	--map-hdr-width: 860px;
	--findfontsize: 24px;
	--entrywidth: 50%;
	--iosoffset: 0px;
	--desk-display: flex;
	--phone-display: none;
	--icondisplay: flex;
	--hamdisplay: none;
	--fontfamilylrg: "Source Serif Pro";
	--fontfamilysml: "Source Sans Pro";
	--nav-font-size: 1.2em;
	--btn-icon-size: 16px;
	--btn-txt-align: right;
	--logo-max-width: 200px;
	--legend-width: 210px;
	--legendfontsize: 1.2em;
	--entry-dlg-width: 536px;
	--dlg-radio-size: 28px;
	--dlg-select-size: 300px;
	--dlg-notes-height: 60px;
	--mdl-max-width: 700px;
}

.map-title {
	display: flex;
	flex: 1 0 0;
	padding: 16px 58px 16px 16px;
	align-items: center;
	align-self: stretch;
	background-color: var(--tones-white);
	box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
}

.map-title-font {
	color: #000;
	/* Heading 05 Black */
	font-family: "Source Serif Pro";
	font-size: 20px;
	font-style: normal;
	font-weight: 900;
	line-height: normal;	
	align-content: center;
	margin: auto;
}

.map-back {
	display: flex;
	flex-flow: row;
}

.admin-title {
	display: flex;
	/* flex: 1 0 0; */
	height: 28px;
	padding: 16px 58px 16px 16px;
	/* align-items: center; */
	/* align-self: stretch; */
	background-color: var(--tones-white);
	box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
}

.admin-title-font {
	color: #000;
	/* Heading 05 Black */
	font-family: "Source Serif Pro";
	font-size: 20px;
	font-style: normal;
	font-weight: 900;
	/* line-height: normal;	 */
	/* align-content: center; */
	margin: 2px auto;
}

.admin-title-back {
	display: var(--desk-display);
	color: #000;
	background-color: var(--tones-white);
	/* Paragraph 01 Black */
	font-family: "Source Sans Pro";
	font-size: 16px;
	font-style: normal;
	font-weight: 900;
	/* line-height: normal;	 */
	border: none;
}

.admin-content {
	margin: 20px auto;
}

/* iPhone */
@media only screen and (max-device-width: 480px) 
		/* , (-webkit-device-pixel-ratio: 3)
		, (-webkit-device-pixel-ratio: 2) */
		{
	:root {
		--headerheight: 52px;
		--iconwidth: 32px;
		--buttonsize: 40px;
		--map-title-font-size: 16px;
		--map-title-font-fam: "Source Sans Pro";
		--map-hdr-width: 100%;
		--findfontsize: 16px;
		--entrywidth: 80%;
		--iosoffset: 100px;
		--desk-display: none;
		--phone-display: inline-flex;
		/* --fontfamilylrg: "Source Serif Pro";
		--fontfamilysml: "Source Sans Pro"; */
		--icondisplay: none;
		--hamdisplay: block;
		--btn-icon-size: 0px;
		--btn-txt-align: center;
		--legend-width: 180px;
		--legendfontsize: .8em;
		--entry-dlg-width: calc(100vw - 64px);
		--dlg-radio-size: 20px;
		--dlg-select-size: 200px;
		--dlg-notes-height: 80px;
		--mdl-max-width: 210px;
	}

	.map-title {
		display: flex;
		padding: 8px 32px 8px 8px;
		align-items: center;
		align-self: stretch;
		background-color: var(--tones-white);
		box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
	}
	
	.map-title-font {
		color: #000;
		/* Heading 05 Black */
		font-family: "Source Sans Pro";
		font-size: 16px;
		font-style: normal;
		font-weight: 900;
		line-height: normal;	
		align-content: center;
		margin: auto;
	}

}

/* iPad */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) 
		/* , (-webkit-device-pixel-ratio: 3)
		, (-webkit-device-pixel-ratio: 2) */
		{
	:root {
		--headerheight: 52px;
		--iconwidth: 20px;
		--buttonsize: 20px;
		--map-hdr-width: 100%;
		--findfontsize: 16px;
		--entrywidth: 80%;
		--iosoffset: 100px;
		--icondisplay: flex;
		--hamdisplay: none;
		--entry-dlg-width: calc(100vw - 64px);
	}

	.map-title {
		display: flex;
		flex: 1 0 0;
		padding: 16px 80px 16px 16px;
		align-items: center;
		align-self: stretch;
		background-color: var(--tones-white);
		box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
	}
}

option:checked {
	color: var(--bgcolor);
	background-color: var(--fgcolor);
}

img {
	width: 100%;
	height: auto;
}

.map-page {
	display: flex;
	flex-flow: column;
	position: absolute;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
}

.map-title-back {
	display: var(--desk-display);
	color: #000;
	background-color: var(--tones-white);
	/* Paragraph 01 Black */
	font-family: "Source Sans Pro";
	font-size: 16px;
	font-style: normal;
	font-weight: 900;
	line-height: normal;	
	border: none;
}

.map-hdr-line {
	display: flex;
	flex-flow: row;
	justify-content: space-around;
	align-items: center;
	background-color: var(--secondary-light);
}

.map-header {
	display: flex;
	flex-flow: row;
	justify-content: space-around;
	align-items: center;
	height: var(--headerheight);
	background-color: var(--secondary-light);
	margin: 0px 4px;
	/* width: var(--map-hdr-width); */
}

.back-img {
	width: 25px;
	height: 25px;
}

.map-select-div {
	display: flex;
	flex-flow: row;
	background: var(--secondary-light);
	color: var(--neutral-normal);
	margin: 20px 0px;
}

.map-selector {
	background-color: var(--tones-white);
	color: var(--neutral-normal); 
	font-size: 16px; 
	font-family: var(--fontfamilysml);
	font-weight: normal;
	line-height: normal;
	border: .5px solid var(--neutral-normal);
	border-radius: 8px;
	padding: 4px 8px;
	width: 100px;
	margin: 0px 2px;
}

.map-hdr-btns {
	display: var(--phone-display);
	padding: 0px 8px;
	justify-content: flex-end;
	align-items: center;
	gap: 16px;
	flex-flow: row wrap;
	align-self: stretch;	
	color: var(--primary-normal);
	background-color: var(--secondary-light);
}

.map-hdr-links {
	display: var(--desk-display);
	padding: 0px 8px;
	justify-content: flex-end;
	align-items: center;
	gap: 16px;
	flex-flow: row wrap;
	align-self: stretch;	
	color: var(--primary-normal);
	background-color: var(--secondary-light);
}

.map-hdr-btn {
	display: var(--phone-display);
	color: var(--tones-white);
	/* background-color: transparent; */
	background-color: var(--primary-normal);
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	border-radius: 8px;
	padding: 8px 8px;
	justify-content: center;
	align-items: center;
	/* width: 100px; */
}

.map-hdr-undo-btn {
	display: none;
	color: black;
	background-color: var(--secondary-light);
	background-repeat: no-repeat;
	background-position: 10px center; 
	background-size: 28px;
	background-image: url("/static/undo.png");
	/* background-size: 28px; */
	border: none;
	border-radius: 8px;
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 900;
	margin-top: 8px;
	margin-left: 10px;
	padding-right: 10px;
	padding-left: 10px;
	text-align: right; 
	height: 36px;
	width: 90px;
}
	
.map-hdr-link {
	color: var(--primary-normal);
	background-color: transparent;
	border: none;
	font-size: 14px; 
	font-family: var(--fontfamilysml);
	font-weight: 700;
	padding: 16px 8px;
	line-height: normal;
	text-decoration: underline;
}

.done-btn-div {
	display: flex;
	flex-flow: row;
	background-color: var(--secondary-light);
}

.status-div {
	display: none;
	flex-flow: row;
}

.status-btn {
	width: var(--buttonsize);
	height: var(--buttonsize);
	border-style: none;
	background-color: var(--bgcolor);
	padding: 2px;
	margin-left: 2px;
	margin-top: 4px;
}

#inst-div {
	display: var(--desk-display);
	flex-flow: row wrap;
}

#edit-instructions-box {
	height: var(--headerheight);
}

.icon-div {
	display: flex;
	flex-direction: row;
	gap: 4px;
	margin-bottom: 4px;
}
.icon-button {
	width: var(--iconwidth);
	height: var(--iconwidth);
	margin: 2px 2px 0px 2px;
	padding: 0px;
	border: thin solid var(--fgcolor);
	background-color: var(--bgcolor);
	line-height: 1;
}

#add-insp-btn {
	background: url(/static/addicon.png);
	width: 26px;
	height: 26px;
	margin: 2px 2px 0px 2px;
	padding: 0px;
	border: thin solid var(--fgcolor);
	background-color: var(--bgcolor);
}

#edit-insp-btn {
	background: url(/static/editicon.png);
	width: 26px;
	height: 26px;
	margin: 2px 2px 0px 2px;
	padding: 0px;
	border: thin solid var(--fgcolor);
	background-color: var(--bgcolor);
}

#del-insp-btn {
	background: url(/static/delicon.png);
	width: 26px;
	height: 26px;
	margin: 2px 2px 0px 2px;
	padding: 0px;
	border: thin solid var(--fgcolor);
	background-color: var(--bgcolor);
}

.hdr-line-2 {
	display: none;
	flex-flow: row;
	justify-content: space-around;
	background-color: var(--secondary-light);
}


.admin-page {
	display: flex;
	flex-flow: column;
	position: absolute;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
}


.ham-div {
	grid-column: 2;
	grid-row: 1;
	display: var(--hamdisplay);
	/* flex-flow: row wrap; */
}

.ham-button {
	width: var(--iconwidth);
	height: var(--iconwidth);
	margin: 8px 2px 0px 2px;
	padding: 0px;
	border: none;
	background-color: transparent;
	cursor: pointer;
	/* var(--bgcolor); */
	/* line-height: 1; */
}

.ham-dlg {
	display: none;
	flex-flow: column;
	width: 90vw;
	height: 90vh;
	background-color: white;
}

.ham-sel-btn {
	font-size: 28px !important;
	font-family: var(--fontfamilysml);
	border: none !important;
	background-color: white !important;
	border-bottom: 1px solid black !important;
	margin: 4px;
	text-align: left;
}

.ham-edit {
	font-size: 2em !important;
	/* border: none !important; */
	background-color: white !important;
	/* border-bottom: 1px solid black !important; */
	margin: 4px;
	text-align: left;
}

.close-div {
	display: block;
	height: var(--iconwidth);
}

.close-btn {
	position: absolute;
	display: block;
	right: 2em;
	/* width: var(--iconwidth);
	height: var(--iconwidth); */
	width: 30px;
	height: 30px;
	border: none !important;
	background-color: transparent !important;
}

.findLabel {
	font-size: var(--findfontsize);
	line-height: var(--findfontsize);
	margin-top: 2px;
	padding: 0px 2px;
}

.findText {
	border: thin solid var(--fgcolor);
	background-color: var(--incolor);
	color: var(--fgcolor);
	width: calc(var(--buttonsize) * 2);
	margin-left: 4px;
	height: calc(var(--buttonsize) - 2px);
	font-size: var(--findfontsize);
	line-height: var(--findfontsize);
	margin-top: 2px;
	padding: 0px 2px;
}

.navbar a, .dropdown .dropbtn {
	--nav-line-height: 1.4em;
}

#logo-img {
	max-width: var(--logo-max-width);
}

.logo-div {
	display: var(--desk-display);
	align-items: center;
}

.nav-header {
	display: flex;
	flex-direction: column;
	padding: 8px 0px;
	background-color: white;
}

/* Navbar container */
.navbar {
	display: var(--desk-display);
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	color: var(--neutral-normal);
	background-color: white;
	padding: 0px 26px;
	width: calc(100% - 52px);
	max-width: 1168px;
	margin: auto;
}
 
.nav-btns {
	display: flex;
	align-items: flex-start;
	gap: 48px;	
 }
 
 .nav-btns-left {
	display: flex;
	align-items: flex-start;
	gap: 24px;	
 }
 
 .nav-btns-user {
	display: flex;
	align-items: flex-start;
	gap: 24px;	
 }

 /* Links inside the navbar */
.navbar a {
	float: left;
	line-height: var(--nav-line-height);
	border: none;
	padding: 6px 8px;
}

.nav-btn {
	display: grid;
	margin-top: 4px;
	color: white;
	padding: 4px 8px;
}

.nav-btn-wbkg {
	display: grid;
	margin-top: 4px;
	background-color: var(--secondary-light);
	color: white;
	border: none;
	border-radius: 8px;
	padding: 4px 8px;
	gap: 4px;
}

.nav-btn-icon {
	grid-column: 1;
	grid-row: 1;
	width: 24px;
	height: 24px;
	padding-top: 0px;
}

.nav-btn-text {
	grid-column: 2;
	grid-row: 1;
	padding-top: 0px;
	color: black;
}

.nav-btn-drop {
	grid-column: 3;
	grid-row: 1;
	width: 24px;
	height: 24px;
	padding-top: 4px;
}

.nav-adm {
	display: block;
}

.nav-new {
	display: block;
}

.dlg-page {
	display: flex;
	flex-direction: column;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	align-items: center;
	background-color: var(--secondary-light);
}

.entry-dialog {
	display: flex;
	flex-direction: column;
	position: absolute;
	top: 0;
	width: var(--entry-dlg-width);
	padding: 32px;
	align-items: flex-start;
	gap: 32px;
	background-color: var(--tones-white);
	border-radius: 8px;
	box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
	margin: auto;
	/* z-index: 10; */
}

.entry-title {
	color: #000;
	/* Heading 02 Black */
	font-family: var(--fontfamilylrg);
	font-size: 38px;
	font-style: normal;
	font-weight: 900;
	line-height: normal;
	margin: 0px;
}

.entry-subtitle {
	color: #000;
	/* Paragraph 01 Regular */
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0px;
}

.entry-fields {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	width: 100%;
}

.entry-field {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
}

.entry-line {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 4px;
}

.entry-label {
	color: #000;
	/* Paragraph 01 Regular */
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;	
}

.dlg-select-class {
	display: flex;
	width: var(--dlg-select-size);
	padding: 4px 8px;
	color: var(--neutral-normal);
	/* Paragraph 01 Regular */
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;	
	justify-content: space-between;
	align-items: center;	
	border-radius: 8px;
	border: 0.5px solid var(--neutral-normal);
	background: var(--tones-white);
}
	
.dlg-link {
	color: var(--primary-normal);
	background-color: transparent;
	padding: 4px 8px;
	border: none;
	font-size: 14px; 
	font-family: var(--fontfamilysml);
	font-weight: 700;
	line-height: normal;
	text-decoration: underline;
}

.dlg-check-class {
	width: 28px;
	height: 28px;
	flex-shrink: 0;
	line-height: 28px;	
	margin: 0px;
}

.dlg-check-label {
	color: var(--neutrals-normal, #173136);
	/* Paragraph 01 Regular */
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 28px;	
	vertical-align: middle;
}

.dlg-radio-group {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 4px;
}

.dlg-radio-btn {
	width: var(--dlg-radio-size);
	height: var(--dlg-radio-size);
	flex-shrink: 0;
	border-radius: 14px;
	border: 2px solid var(--primary-normal);
	accent-color: var(--primary-normal);
	line-height: var(--dlg-radio-size);	
	margin: 0px;
}

.dlg-radio-txt {
	display: inline;
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: var(--dlg-radio-size);	
	margin-right: 8px;
}

.dlg-input-date {
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 4px 8px;
	border-radius: 8px;
	border: 0.5px solid var(--neutral-normal);
	background: var(--tones-white);
}

.dlg-input-number {
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 4px 8px;
	border-radius: 8px;
	border: 0.5px solid var(--neutral-normal);
	background: var(--tones-white);
}

.dlg-input-text {
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 4px 8px;
	border-radius: 8px;
	border: 0.5px solid var(--neutral-normal);
	background: var(--tones-white);
}

.dlg-input-notes {
	width: calc(var(--entry-dlg-width) - 6px);
	height: var(--dlg-notes-height);
}

.dlg-ok-btn-row {
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	gap: 8px;
	align-self: stretch;
	width: var(--entry-dlg-width);
}

.dlg-ok-btn-class {
	display: flex;
	height: 40px;
	padding: 8px 14px;
	justify-content: center;
	align-items: center;
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;	
	background: var(--primary-normal);
	border: none;
	color: var(--tones-white);
	border-radius: 8px;
	/* width: 160px; */
}

.dlg-btn-class {
	display: flex;
	height: 40px;
	padding: 8px 14px;
	justify-content: center;
	align-items: center;
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;	
	background: var(--tones-white);
	border: 1px solid var(--primary-normal);
	color: var(--primary-normal);
	border-radius: 8px;
	/* width: 160px; */
}

.zone-title {
	color: black;
	background-color: white;
	padding-left: 3px;
	padding-right: 3px;
	border: 1px solid black;
	border-radius: 4px;
	box-shadow: 4px 4px 4px gray;
	text-shadow: darkgray 1px 1px 2px;
}

#zone-sel-div {
	overflow-y: auto;
	height: 200px;
	padding: 2px;
}

#zone-sel-tbl {
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	border-collapse: collapse;
}

.zone-sel-cell {
	padding: 0px 4px;
	background-color: var(--tones-white);
	color: black;
	border: none;
}

.zone-selected {
	color: var(--tones-white);
	background-color: var(--secondary-dark);
}

.mdl-sel-tbl {
	font-family: var(--fontfamilysml);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	border-collapse: collapse;
}

.mdl-sel-cell {
	padding: 0px 4px;
	background-color: var(--tones-white);
	color: black;
	border: none;
}

.mdl-selected {
	color: var(--tones-white);
	background-color: var(--secondary-dark);
}

#mr-sel-div {
	overflow-y: auto;
	height: 120px;
	padding: 2px;
	border: 1px solid var(--neutral-normal);
	border-radius: 4px;
}

#mr-sel-tbl {
	font-family: var(--fontfamilysml);
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	border-collapse: collapse;
}

.modal-layout {
	margin: 4px;
	font-family: var(--fontfamilysml);
	font-size: 16px;	
}

.wait-dialog {
	display: block;
	top: 100px;
	border-radius: 12px;
	color: darkgreen;
	background-color: var(--secondary-normal);
	font-weight: bold;
	font-size: 18px;
	/* animation: "wait_animate 3s infinite"; */
}

@keyframes wait_animate {
	from {
		background-color: pink;
	}
	to {
		background-color: yellow;
	}
}