body {
	margin:0px;
	/* width:100%; */
	background-repeat:repeat; background-image:url('/images/background_contours.png');
}

body,td { font:10pt Verdana,sans-serif; }
select.normal { font:8pt Verdana,sans-serif; }
select.taller { font:8pt Verdana,sans-serif; height:18px; }
select.bigger { font:9pt Verdana,sans-serif; height:18px; }
h1 { color:#004400; font:bold 15pt Verdana,sans-serif; margin-bottom:9px; }
h2 { color:#004400; font:bold 13pt Verdana,sans-serif; margin-bottom:9px; }
h3 { color:#000000; font:bold 11pt Verdana,sans-serif; margin-bottom:9px; }
h4 { color:#000000; font:bold 10pt Verdana,sans-serif; margin-bottom:9px; }
h5 { color:#000000; font:bold 9pt Verdana,sans-serif; margin-bottom:9px; }
p { font-size:10pt; margin-top:0pt; margin-bottom:8pt; }

.nospacebefore { margin-top:0px; padding-top:0px; }
.nospaceafter { margin-bottom:0px; padding-bottom:0px; }
.footer { font-size:10px; }
.normalsize { font-size:11px; }
.smaller { font-size:9pt; }
.smallest { font-size:8pt; }
.larger { font-size:11pt; }
.largest { font-size:12pt; }

.visible { display:block; }
.invisible { display:none; }

::placeholder { color:#008800; opacity: 0.5; }

.nonmobile_body { min-width:728px; padding:8px 8px 8px 10px; }
/* .mobile_body { min-width:447px; box-sizing:border-box; padding:8px; } */
.mobile_body { width:100%; box-sizing:border-box; padding:8px; }
.mobile_body body, .mobile_body div, .mobile_body td, .mobile_body p, .mobile_body li { font-size:13pt; }
.mobile_body .normalsize { font-size:13pt; }
.mobile_body .smaller { font-size:11pt; }
.mobile_body .smallest { font-size:10pt; }
.mobile_body .larger { font-size:14pt; }
.mobile_body .largest { font-size:15pt; }
.mobile_body select.normal { font-size:10pt; }
.mobile_body select.taller { font-size:10pt; }
.mobile_body select.bigger { font-size:11pt; }
.mobile_body h1 { font-size:17pt; }
.mobile_body h2 { font-size:15pt; }
.mobile_body h3 { font-size:13pt; }
.mobile_body h4 { font-size:12pt; }
.mobile_body h5 { font-size:11pt; }
.mobile_body tt { font-size:90%; }
.mobile_body .mobile_hidden { display:none; }
.mobile_body .nonmobile_only { display:none; }
.nonmobile_body .nonmobile_hidden { display:none; }
.nonmobile_body .mobile_only { display:none; }

a:link { color:#006600; }
a:visited { color:#005500; }


.advanced_options_box { background-color:#ddffdd; padding:2px; margin-top:4px; margin-bottom:4px; }
.gpsv_form td { font-size:9pt; }
.gpsv_submit { font-size:11pt; font-weight:bold; background-color:#ccffcc; box-shadow:2px 2px 3px #999999; }
.gpsv_form_heading, .gpsv_form_heading table tr td { font-weight:bold; color:#ffffff; background-color:#004400; }
.gpsv_show_advanced_link { color:#cccccc !important; font-weight:normal; text-decoration:none; }
.gpsv_submit { font-size:13px; font-weight:bold; background-color:#ccffcc; box-shadow:2px 2px 3px #999999; }
.delete_box { display:inline-block; width:13px; height:13px; cursor:pointer; background-repeat:no-repeat; background-image:url('/images/x.png'); }
.delete_box:hover { background-image:url('/images/x-over.png'); }

em { font-style:italic; }
ul { margin-top:0em; }
p.listheader { margin-bottom:0.5em; }
ol { padding-left:2.5em; }
ul { padding-left:2em; }
li.spaced { margin-bottom:0.5em; }
a.plain { text-decoration:none; }
form[name="main"] input[type="text"]:focus { background-color:#ffffcc; }
table { border-collapse:collapse; }

.error { color:#CC0000; font-weight:bold; }
.header_link { font-size:10px; color:white; text-align:left; }
.header_link p { font-size:10px; font-weight:bold; line-height:1; margin:0px 0px 0px 0px; padding:2px 1px 4px 1px; }
.header_link a { color:#FFFFFF; text-decoration:none; }
.header_link a:hover { text-decoration:underline; }
.header_link a:link { color:#FFFFFF; }
.header_link a:visited { color:#FFFFFF; }
.header_link_green { font-size:10px; font-weight:bold; }
.header_link_green p { line-height:1; margin:0px 0px 0px 0px; padding:0px 0px 5px 0px; }
.header_link_green a { color:#006600; }
.header_link_green a:link { color:#006600; }
.header_link_green a:visited { color:#006600; }
.facebook_link img { margin:0px; box-shadow:-2px 2px 2px rgba(0,0,0,0.3); }
.xfacebook_link:hover img { margin:1px 1px 0px 0px; box-shadow:none; }
.mobile_masthead .header_link p { font-size:10px; line-height:1.1; }


/* Home page */
.home_links { white-space:nowrap; }
.home_links p { font-weight:bold; margin:0px 0px 3px 0px; font-size:9pt; }
.mobile_body .home_links p { font-size:10.5pt; }

/* News box on home page */
.news_header { color:#ffffff; font-size:10pt; font-weight:bold; text-transform:uppercase; text-align:center; }
.news_items td { text-align:left; font-size:9pt; border-bottom:1px solid #660000; padding-bottom:6px; }
.news_title { width:165px; font-weight:bold; color:#660000; }
.mobile_body .news_header { font-size:12pt; }
.mobile_body .news_items td { font-size:10pt; }
.mobile_body .news_title { width:25%; }

/* Input pages */
.linktohelp { cursor:help; }
p.formlist { font-size:9pt; margin-bottom:4px; margin-top:0px; margin-left:0.9em; text-indent:-0.9em; }
input { font:11px Verdana,sans-serif; }
input.smaller { font:9px Verdana,sans-serif; padding:0px; }
select.illustrated { height:1.75em; }
select.illustrated option { padding:2px 0px 2px 0px; vertical-align:middle; background-repeat:no-repeat; background-position:1px 2px; }

.mobile_body input { font-size:13px; }
.mobile_body input.smaller { font-size:11px; }


/* Help page */
ul.help_toc { column-count:3; column-fill:balance; column-gap:2em; }
ul.help_toc li { font-size:8pt; font-weight:bold; margin-bottom:3px; }
.help_heading { font-size:10pt; font-weight:bold; margin:0px; padding-bottom:2px; }
.help_body { font-size:9pt; }
p.help_appliesto { color:#666666; font-size:8pt; font-weight:normal; margin:0px; padding-bottom:4px; }
a.help_toplink { font-size:8pt; font-weight:normal; }
li.help_body { margin-bottom:4px; }
.help_example { font-style:italic; }
img.flag { vertical-align:-1px; display:none; }
.help_symbol_table { column-count:2; column-fill:balance; column-gap:2em; }
.help_symbol_table p span { white-space:nowrap; }
.help_symbol_table p span img { vertical-align:middle; }

.mobile_body ul.help_toc { column-count:1; }
.mobile_body ul.help_toc li { font-size:10pt; }
.mobile_body .help_symbol_table { column-count:1; }


/* FAQ page */
.faqindex { font-size:10pt; }
.mobile_body .faqindex li { font-size:12pt; }
.faqindex h4 { margin-bottom:4px; margin-top:0px; }
.faqindex li { margin-bottom:4px; }
.faqindex a { text-decoration:none; }
.faqindex a:hover { text-decoration:underline; }
.faqindex a:link { color:#004400; }
.faq li { margin-bottom:0.5em; margin-top:0.5em; }
.faq_formats { width:100%; border-collapse:collapse; background:rgba(240,240,240,0.5); }
.faq_formats td { border:1px solid #aaaaaa; padding:2px; font-size:90%; }
.faq_formats tr > td:first-child { width:6em; }

.faq { margin-top:6px; position:relative; }
.faq .letter { width:1.75em; position:absolute; font-weight:bold; }
.faq .text { position:relative; left:0em; margin-left:1.75em; }
.faq_q .text { font-weight:bold; margin-bottom:4px; }
.faq_a { border-bottom:1px solid #004400; }
.faq_section_header { display:flex; flex-direction:row; background:#004400; padding:2px 4px 2px 4px; white-space:nowrap; }
.faq_section_header > div { flex:1; display:inline-block; padding:0px; color:white; }
.faq_section_header > div:first-child { text-align:left; font-weight:bold; }
.faq_section_header > div:last-child { text-align:right; }
.faq_section_header a[href] { color:white; font-size:90%; }


/* Tutorials page */
textarea.csv_data { padding:0px 8px 0px 8px; border:1px solid #999999; background-color:#f3f3f3; font-family:monospace; font-size:12px; line-height:1.4; }
.csv_data PRE { font-family:monospace; font-size:10px; line-height:1.5; }
h2.tutorial { padding-top:6px; }
h3.tutorial { padding-top:6px; }
h4.tutorial { margin-bottom:2px; }
hr.tutorial { margin-top:24px; }


/* Examples page */
h3.example_heading { border-top:solid 1px #006600; padding-top:5px; }
td.example_block { padding:0px 20px 20px 0px; width:33%; }
td.example_thumbnail { text-align:center; width:80px; }
td.example_caption { text-align:left; padding:0px 12px 0px 6px; }
.mobile_body .example_caption { font-size:10pt; }


/* Background sample page */
li.sample { font-size:10px; }


/* Output page */
.infobox_heading { font-size:10px; font-style:italic; }
.infobox_data { font-size:10px; }



/* Tables */
table {
	border-collapse:collapse;
}
table.allrules {
	border:solid 1px #999999;
}
table.allrules td {
	border:1px #999999;
	border-style:solid solid solid solid;
}
table.allrules th {
	border:1px #999999;
	border-style:solid solid solid solid;
}
table.horizrules {
	border:none 1px #999999;
}
table.horizrules td {
	border:1px #999999;
	border-style:solid none solid none;
}
table.horizrules th {
	border:1px #999999;
	border-style:solid none solid none;
}
table.vertrules {
	border:none 1px #999999;
}
table.vertrules td {
	border:1px #999999;
	border-style:none solid none solid;
}
table.vertrules th {
	border:1px #999999;
	border-style:none solid none solid;
}
table.norules {
	border:none;
}
table.norules td {
	border:none;
}
table.norules th {
	border:none;
}
table.small tr td, div.small {
	font-size:90%;
}

/* Simple geocoder */
table.geocode { margin:6px 0px 6px 0px; border-collapse:collapse; }
table.geocode th { font-weight:normal; font-style:italic; background:#eeeeee; }
table.geocode td { font-weight:normal; font-style:normal; background:#f8fff8; }

/* ad gradients */
#header_strip {
	background-color:#ccffbb;
	background:-webkit-linear-gradient(left,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Safari 5.1-6*/
	background:-o-linear-gradient(right,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Opera 11.1-12*/
	background:-moz-linear-gradient(right,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Fx 3.6-15*/
	background:linear-gradient(to right,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0));
}
#header_strip.mobile {
	background:#ccffbb;
}
#footer_strip {
	background-color:#ccffbb;
	background:-webkit-linear-gradient(left,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Safari 5.1-6*/
	background:-o-linear-gradient(right,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Opera 11.1-12*/
	background:-moz-linear-gradient(right,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Fx 3.6-15*/
	background:linear-gradient(to right,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0));
}
#footer_strip.mobile {
	background:#ccffbb;
}
#sidebar {
	background-color:#ccffbb;
	background:-webkit-linear-gradient(top,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Safari 5.1-6*/
	background:-o-linear-gradient(bottom,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Opera 11.1-12*/
	background:-moz-linear-gradient(bottom,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0)); /*Fx 3.6-15*/
	background:linear-gradient(to bottom,rgba(194,255,185,1),rgba(194,255,185,1),rgba(194,255,185,0));
}

/* Fun with sliding elements */
.slider_open {
	max-height:24px; /* approximate max height */
	overflow-y:hidden;
	transition-property:all;
	transition-duration:0.5s;
}
.slider_open_instant {
	max-height:24px; /* approximate max height */
	overflow-y:hidden;
}
.slider_closed {
	max-height:0px;
	overflow-y:hidden;
	transition-property:all;
	transition-duration:0.7s;
}


/* Mobile stuff, god help us */

@media screen {
	.mobile_body .scrolling_container { width:100%; overflow:auto; }
	.mobile_body .scroll_note { width:100%; }
}
@media screen and (max-width:900px) {
	.xmobile_body .scrolling_container { max-width:700px; }
	.xmobile_body .scroll_note { width:700px; }
}
@media screen and (max-width:732px) {
	.xmobile_body .scrolling_container { max-width:447px; }
	.xmobile_body .scroll_note { width:447px; }
}
.mobile_body .scrolling_container .gpsv_form td { font-size:11pt; }

.mobile_body #footer * { font-size:9pt; }

.mobile_body .nonmobile { display:none !important; }
.mobile_body .nonmobilemargins { margin-right:0 !important; margin-left:0 !important; }
.nonmobile_body .mobileonly { display:none !important; }

.scrolling_container {
	background:none;
	scroll-behavior:smooth;
}
.scrolling_container.overflowing {
	/* background:#ffdddd; */
}
.scroll_note {
	width:100%; height:7px; margin-top:2px; overflow:hidden; text-align:right;
}



/* for layouts that look better as two columns; widths also might be set inline */

.multi_column {
	width:100%;
	display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex;
	display:flex;
	flex-direction:row;
	align-items:flex-start;
}
.multi_column.centered_boxes {
	align-items:center;
}
.mobile_body .multi_column {
	display:block;
}
.mobile_body .multi_column.centered_boxes {
	text-align:center;
}
.mobile_body .multi_column.centered_boxes > div {
	vertical-align:middle;
}
.mobile_body .multi_column > div {
	margin-right:0px !important;
	display:inline-block;
}

/* a non-flex way to do it */

.inline_box_container {
	text-align:center;
}
.inline_box_container > div {
	display:inline-block;
	vertical-align:top;
	text-align:left;
}

/* possibly non-mobile but still quite skinny */
@media screen and (max-width:950px) {
	.multi_column {
		display:block;
	}
	.multi_column.centered_boxes {
		text-align:center;
	}
	.multi_column.centered_boxes > div {
		vertical-align:middle;
	}
	.multi_column > div {
		margin-right:0px !important;
		display:inline-block;
	}
}

