body {
	margin: 25px 0px 0px 0px;
	background-color: #FFFFFF;
	background-image: url(images/bg.gif);
	background-position: center;
	background-repeat: repeat-y;
	text-align: center;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 100%;	/* 100% of default browser text size, usually medium=16px */
}
body.book {
	font-family: 'PT Serif', 'Times New Roman', 'Times', serif;
}

/* top-row navigation tabs */
ul.tabs {
	float: left;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 75%;
	width: 80%;		/* to prevent motorboating on hover at large font sizes; see .fontsize below */
	padding: 0;
	margin: 0;
    border-top: 1px solid gold;
}
footer ul.tabs {
	margin-top: 2em;
	float: right;
	width: auto;
}
ul.tabs li {
	position: relative;
	float: left;
	width: auto;
	padding: 0px;
	margin: 1px;
	list-style-type: none;
}
ul.tabs a {
	display: inline-block;
	padding: 3px 5px;
}
ul.tabs li ul {
	position: relative;
	left: 0px;
	top: 0px;
	display: none;
	padding: 0px;
	border: 1px solid #CCCCCC;
    border-top: 1px solid gold;
}
ul.tabs li ul.dropdown {
	position: absolute;
	top: 21px;
	width: 170px;
	background-color: #FAFAFA;
}
ul.tabs li:last-child ul.dropdown {
	right: 0px;
	width: 110px;
}
ul.tabs li:hover ul,
ul.tabs li:focus ul {
	display: block;
}
ul.tabs li ul li {
	float: left;
	margin: 0px;
	padding: 0px;
}
ul.tabs li ul.dropdown li {
	float: none;
}
ul.tabs li ul.dropdown li:hover {
	background-color: #EFEFEF;
}
ul.tabs li ul li a,
footer ul.tabs li a {
	padding: 1ex 2ex 1.5ex 1ex;
}
ul.tabs a:link, ul.tabs a:visited, ul.tabs a:active {
	text-decoration: none;
	color: #006633;
}
ul.tabs a:hover, ul.tabs a:focus {
	text-decoration: underline;
	color: black;
	background-color: #EFEFEF;
}
@media only print {
	ul.tabs {
		display: none;
	}
}

.fontsize {
	float: right;
	max-width: 19.5%;		/* fits with width 80% on ul.tabs */
	overflow: hidden;
}
.fontsize a {
	display: inline-block;
	width: 3.8ex;
	padding: 1px 0px 3px;
	text-align: center;
	background-color: inherit;
	border: thin solid bisque;
	text-decoration: none;
	font-weight: normal;
}
.fontsize a:hover {
	background-color: cornsilk;
	font-weight: bold;
}

header, footer {
	height: 4em;		/* space for page navigation menu */
	min-height: 4em;
}

#main, section {
	width: 719px;
	margin-left: auto;
	margin-right: auto;
	padding: 0px;
	text-align: left;
	background-color: #FFFFFF;
}

input {
	font-size: 100%;
	color: #666666;
}

/* left-hand navigation bar */
.navdiv, .nav-notebook {
	font-weight: bold;
	color: #006633;
	background-color: #FAFAFA;
	text-decoration: none;
	margin: 0px 0px 0px 0px;
	text-align: right;
}
.navdiv {
	float: left;
	font-size: 70%;
	padding: 5px 5px 15px 5px;
	width: 120px;
	border-color: #CCCCCC;
	border-style: solid;
	border-width: 1px 1px 1px 0px;
}

#content, article {
	width: 535px;
	padding: 5px 5px 15px 5px;
	margin-left: 170px;
	font-size: .8125em;		/* =13px if 100%=16px */
	color: #555;
	text-decoration: none;
	text-align: left;
	background-color: #FFFFFF;
}
article {
	width: 525px;
	padding-bottom: 0px;
	margin-bottom: 15px;
	margin-left: 120px;
}

p.more {
	text-align: right;
}
p.more a {
	font-style: italic;
	margin-right: 1ex;
}

#footer {
	font-size: 70%;
	color: #777;
	padding: 40px 0px 10px 0px;
	text-align: center;
	clear: left;
	background-color: #FFFFFF;
}

a {
	color: #006633;
	text-decoration: underline;
}
a:hover {
	color: #006633;
	text-decoration: none;
}

table.list td {
	padding: 2px 3px;
	vertical-align: top;
}
table.list td.vb {
	vertical-align: bottom;
}
table.list a {
	text-decoration: none;
}
table.list a:hover {
	text-decoration: underline;
}

a.navigation {
	color: #666666;
	border-width: 0px 0px 0px 5px;
	border-color: #DEDEDE;
	border-style: solid;
	text-decoration: none;
	display: block;
	padding: 3px 0px 3px 5px;
	text-align: left;
	font-weight: normal;
}

a.navigation:hover {
	border-color: #006633;
	background-color: #EFEFEF;
}

a.ssel {	/* section selected */
	border-color: #777;	/* #006633; */
}

a.nav-notebook {
	display: block;
	padding: 3px 0px 3px 5px;
	margin: 2px 0px 0px 0px;
	border: thin solid transparent;
}

a.nav-notebook:hover, a.nsel {	/* notebook selected */
	background-color: #EFEFEF;
	border: thin solid #CCCCCC;		/* #006633; */
}


.navdiv hr {
	width: 100%;
	height: 0px;
	padding: 0px;
	margin: 0px 0px 2px 0px;
	text-align: center;
	border-color: #CCCCCC;
	border-style: dashed;
	border-width: 0px 0px 1px 0px;
}


#header {
	position: relative;
/*	width: 720px;*/
	height: 400px;
	margin: 0px;
	padding: 0px;
	background-color: #FFFFFF;
}
#banner {
	position: absolute;
	top: 10px;
	left: 0px;
	margin: 0px;
	padding: 0px;
	border: none;
}
#logo {
	position: absolute;
	top: -10px;
	right: 10px;
}
h1 {
	color: #006633;
	font-size: 180%;
	text-decoration: none;
	text-align: right;
	margin: 0px 0px 25px 0px;
	font-weight: normal;
	padding: 0px 50px 0px 0px;
	border-width: 0px 0px 1px 0px;
	border-style: solid;
	border-color: #006633;
	background-color: #FFFFFF;
}
h1.part {
	border: none;
	margin-bottom: 3em;
	text-align: center;
}
/*h2, h3, h4 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
}*/
h1.appendix {
	margin-bottom: 35px;
}
article h1 {
	color: #555;
	font-size: 1.7692em;
	text-align: left;
}
article h2 {
	font-size: 120%;
	font-weight: bold;
	margin-top: 2em;
	padding-right: 15%;
	line-height: 140%;
}
article h2:first-child {
	margin-top: 1em;
}
article h3 {
	margin-top: 1.6em;
	font-size: 100%;
	margin-right: 10%;
}
article h4 {
	font-style: italic;
	font-size: 100%;
	margin-bottom: .8em;
}
article h5 {
	text-align: center;
	font-style: italic;
	font-weight: normal;
	font-size: 100%;
	margin: 1.5em 20% 1em;
	padding-right: 20px;
}

p {
	line-height: 170%;
/*	padding: 0px 14px 10px 0px;*/
	padding: 0px 14px 0px 0px;
	margin: 0px;
	margin-bottom: 10px;
}
.loose, #footnotes ol {	/* for <ol>, <ul>, etc. elements that are single-spaced by default */
	padding-left: 32px;
	padding-right: 14px;	/* match <p> padding */
}
.loose li, #footnotes ol li {
	margin: 1em 0 0 0;
	line-height: 150%;
}
#footnotes ol li {
	margin: .75em 0 0 0;
}
.numbered-paragraph {
	margin: 0;
	padding: 0;
}
.numbered-paragraph p::first-letter {
	font-weight: bold;
}
.dropcap {
	display: inline-block;
	float: left;
	margin: -10px 2px 0px 0px;
	font: 350% bold;
}
p.c {
	text-align: center;
}

blockquote, ol {
	-webkit-margin-before: 0px;
}
blockquote {
	line-height: 140%;
}
blockquote.loose {
	line-height: 160%;
	padding: 0;
	margin-right: 10px;
}
blockquote p {
	line-height: inherit;
}
blockquote.poem {
	white-space: pre;	/* pre-line; */
	line-height: 150%;
	width: calc(100% - 80px);	/* match -webkit-margin-before + -after */
	overflow: auto;
}
blockquote.quoted {			/* move the leading " character into the left margin  */
	padding-left: .65ex;
	text-indent: -.6ex;
}
blockquote.ref::after {
	content: '\2014 ' attr(data-ref) ' ';
	font-style: italic;
	display: block;
	text-align: right;
}

#TOC-table tr a {
	font-weight: normal;
	text-decoration: none;
	color: #555;
}
#TOC-table tr.chapter a {
	font-weight: bold;
	color: #006633;
}
#TOC-table tr a:hover {
	text-decoration: underline;
	color: #006633;
}
#TOC-table tr.chapter td:first-child {
	font-weight: bold;
	text-align: right;
}

figure, aside {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	border-top: 3px solid gray;
	border-bottom: 3px solid gray;
	background-color: #fdfdf2;
	padding: 10px;
    margin: 20px 0;
}
figure {
	overflow: auto;
}
aside {
	width: 40%;
	float: left;
	margin: 6px 1em 2ex 0;
	font-size: 110%;
	text-align: center;
	line-height: 150%;
}
aside:nth-of-type(even) {
	float: right;
	margin-right: 0;
	margin-left: 1em;
}
div.byline {
	font-size: inherit;
	font-style: italic;
	text-align: right;
}
figure table {
	border-collapse: collapse;
	margin: 0 auto;
	font-size: .9375em;		/* 93% of parent size, which is .8125em, or 12px if body is 16px */
}
figure table thead {
	border-bottom: 2px solid orange;
}
figure table th {
	text-align: center;
	vertical-align: bottom;
}
figure table th.title {
	font-size: 140%;
	padding-bottom: 1em;
}
figure table td {
	vertical-align: top;
	padding: 4px 8px;
}
figcaption {
	font-family: 'PT Serif', 'Times New Roman', 'Times', serif;
	margin-top: 14px;
	font-style: italic;
}
figcaption span:first-child {
	font-style: normal;
	font-weight: bold;
}
/* footnotes */
section {
  counter-reset: footnotes;
}
article.with-footnotes a:not(.marker) {
  counter-increment: footnotes;
  text-decoration: none;
  color: inherit;
  cursor: default;
  outline: none;
  pointer-events: none;
  white-space: nowrap;
}
article.with-footnotes a:not(.marker)::after {
  content: '[' counter(footnotes) ']';
  font-size: smaller;
  margin-left: 1px;
  margin-right: 3px;
  color: green;
  text-decoration: none;
  cursor: pointer;
  pointer-events: auto;
}
article.with-footnotes a.internal {
	counter-increment: none;
	text-decoration: underline;
	color: green;
}
#footnotes :target {
  background: #f5f598;
}

pre {
	margin-left: 40px;
	font-size: 100%;
}
video {
   padding: 10px 10px 20px 0px;
   width: 100%; 
   max-width: 480px; 
   height: auto; 
}

.diagram {
	text-align: center;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 11px;	/* fixed size */
}
.diagram span {
	display: inline-block;
	padding: 4px 5px 5px;
	vertical-align: middle;
	line-height: 12px;
}
.diagram span:not(.rarr) {
	background-color: #fdfdf2;
	border: thin solid black;
}
.diagram span.rarr {
	font-size: 14pt;	/* fixed size */
	padding: 4px 0 8px;
	vertical-align: middle;
}
.diagram span.rarr::after {
	content: "\2192 ";
}

dl {
	display: block;
}
dt {
	display: inline-block;
	float: left;
	margin-right: 1.5ex;
	font-weight: bold;
}
dd {
	display: block;
	margin: 2px 10px 7px 30px;
}
i::after {
	content: '\200A ';		 /* hair space */
}
cite::after {
	content: '\200A ';		 /* hair space */
}

address {
	white-space: pre-line;
	font-style: normal;
}
