body {
	color: beige ;
	background: #262626 ;
	background-image: linear-gradient(black, #262626);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	margin-bottom: 150px ;
    	font-family: sans-serif ;
	height: 100%;
}



.articleTitle {
	color: beige;
	font-size: 10pt;
	font-weight: bold;
}

.journalTitle{
	color: beige;
	font-size: 10pt;
	margin-top: -10px;
}

/* Abstract box etc. borrowed from Keenan Crane: https://www.cs.cmu.edu/~kmcrane/ */

.abstractBox
{
   display: inline-block;
   position: relative;
   width: 58px;
   height: 10pt;
   margin-right: 15pt;
}
.abstractBox .abstract
{
   text-align:justify;
   position:absolute;
   top:15px;
   left:0px;
   padding: 0px;
   margin: 0px;
   width: 500px;
   height: auto;
   color: beige;
   padding: 10px;
   font-size: 8pt;
   background: rgba(0, 0, 0, .8);
   box-shadow: 10px 10px 10px rgba(0,0,0,.4);
   border-radius: 6pt;
   z-index: 200;
   line-height: 125%;
   visibility: hidden;
   opacity: .0001;
   transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   -moz-transition: .5s;
   -webkit-transition: .5s;
}


.abstractBox .doi
{
   text-align:justify;
   position:absolute;
   top:15px;
   left:0px;
   padding: 0px;
   margin: 0px;
   width: 500px;
   height: auto;
   color: #ffffff;
   padding: 10px;
   font-size: 10pt;
   background: rgba(0, 0, 0, .8);
   box-shadow: 10px 10px 10px rgba(0,0,0,.4);
   border-radius: 6pt;
   z-index: 200;
   line-height: 125%;
   visibility: hidden;
   opacity: .0001;
   transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   -moz-transition: .5s;
   -webkit-transition: .5s;
}	

.abstractBox .authors
{
   text-align:justify;
   position:absolute;
   top:15px;
   left:0px;
   padding: 0px;
   margin: 0px;
   width: 500px;
   height: auto;
   color: #ffffff;
   padding: 10px;
   font-size: 10pt;
   background: rgba(0, 0, 0, .8);
   box-shadow: 10px 10px 10px rgba(0,0,0,.4);
   border-radius: 6pt;
   z-index: 200;
   line-height: 125%;
   visibility: hidden;
   opacity: .0001;
   transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   -moz-transition: .5s;
   -webkit-transition: .5s;
}	

.abstractBox .doi:before
{
	content: "DOI: ";
	font-weight: bold;
}


.abstractBox .authors:before
{
	content: "Authors: ";
	font-weight: bold;
}

.abstractBox:hover .doi
{
   visibility: visible;
   opacity: 1.0;
   transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   -moz-transition: .5s;
   -webkit-transition: .5s;
}


.abstractBox:hover .authors
{
   visibility: visible;
   opacity: 1.0;
   transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   -moz-transition: .5s;
   -webkit-transition: .5s;
}

.abstractBox .abstract:before
{
   content: "Abstract: ";
   font-weight: bold;
}
.abstractBox:hover .abstract
{
   visibility: visible;
   opacity: 1.0;
   transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   -moz-transition: .5s;
   -webkit-transition: .5s;
}

.button
{
   display: inline-block;
   background-color: #666666;
   color: lightblue;
   border-radius: 3pt;
   padding: 2px;
   padding-left: 4px;
   padding-right: 4px;
   text-decoration: none;
}
.button:hover
{
   color: white;
}


.siteHeader {
	margin: 18px auto 0 auto;
	width: 70%;
	max-width: 1008px;
	box-sizing: border-box;
	font-family: sans-serif;
}

.siteHeaderInner {
	border: 3px solid black;
	background-color: #333333;
	padding: 16px 20px 14px 20px;
	box-sizing: border-box;
}

.siteHeaderTitle {
	display: inline-block;
	color: lightgreen;
	font-size: 28px;
	font-weight: bold;
	text-decoration: none;
	line-height: 1.1;
}

.siteHeaderTitle:hover {
	color: white;
}

.siteNav {
	margin: 12px auto 0 auto;
	width: 70%;
	max-width: 1008px;
	padding: 0;
	font-family: sans-serif;
	box-sizing: border-box;
}

.siteNavInner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 18px;
	border: 3px solid black;
	background-color: #333333;
	padding: 12px 16px;
	box-sizing: border-box;
	width: 100%;
}

.siteNavLinks {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.linkbuttonforTOC {
	display: inline-block;
	padding: 6px 10px;
	text-decoration: none;
	border: 2px solid black;
	background-color: #666666;
	color: lightblue;
	line-height: 1.2;
}

.siteNavTheme {
	display: flex;
	align-items: center;
	gap: 8px;
}

.siteNavThemeLabel {
	color: beige;
	font-size: 10pt;
}

.siteNavTheme select {
	border: 2px solid black;
	background-color: #666666;
	color: beige;
	padding: 4px 6px;
}


h1 {
	text-align: left ;
	color: lightgreen ;
	font-size: 26px ;
}

header h1 {
	font-size: 26px ;
}

h2 {
	text-align: left ;
	color: lightblue ;
	font-size: 18pt ;
/*	border-bottom: dashed #ddd 1px ;
	max-width: 500px ;
	margin: 1em auto ;
*/
}

h3 {
	color: beige ;
	clear: both ;
	font-size: 13pt ;
}

/* links */
a {
    color: lightblue ;
}

a:hover {
    color: white ;
}

li {
	margin: 3px 0;
	line-height: 1.2;
}

dt {
	font-weight: bold ;
}

pre {
	border-radius: 20px ;
	padding: 1em ;
	white-space: pre-wrap;
	overflow-wrap: break-word ;
	max-width: 600px ;
	margin: auto ;
}

.wide { max-width: inherit ; }

p img, li img, h1 img, h2 img, h3 img, h4 img, dt img, .inline {
	vertical-align: middle ;
	max-width: 1em;
	max-height: 1em;
	border: none ;
	display: inline ;
}

p img, li img, h1 img, h2 img, h3 img, h4 img, dt img, .inline {
	vertical-align: middle ;
	max-width: 1em;
	max-height: 1em;
	border: none ;
	display: inline ;
}

img {
	max-width: 90% ;
	margin: auto ;
	display: block ;
	border: solid 5px beige ;
}
.titleimg {
	border: none ;
/*	height: 150px ;*/
}
strong {
	color: orange ;
}

footer {
	text-align: center ;
	clear: both ;
	padding: 2em 0 ;
	font-size: large;
	flex-grow: 1;
}
footer li {
	display: inline-block ;
	padding: 0 .5em ;
	font-size: x-large ;
}
footer li:hover {
	background: lightblue ;
}

nav { font-size: small ;}

nav ul, footer ul, #taglist {
	padding: 0;
}

main {
	margin: 18px auto 0 auto;
	width: 70%;
	max-width: 1008px;
	margin-top: 18px;
	border: 3px solid black ;
	background-color: #333333 ;
	padding: 20px 20px 20px 20px ;
	text-align: justify ;
	font-weight: normal ;
	box-sizing: border-box;
}

@media (max-width: 54.999em) {
	.siteNav {
		width: 90%;
		max-width: none;
	}

	.siteHeader {
		width: 90%;
		max-width: none;
	}

	.siteHeaderInner {
		padding: 14px 16px 12px 16px;
	}

	.siteHeaderTitle {
		font-size: 24px;
	}

	.siteNavInner {
		padding: 10px 12px;
	}

	.siteNavLinks {
		gap: 6px;
	}

	.linkbuttonforTOC {
		padding: 6px 8px;
		font-size: 10pt;
	}

	.siteNavTheme {
		width: 100%;
		justify-content: flex-start;
	}

	main {
		width: 90%;
		max-width: none;
	}
}

@media (min-width: 55em) {

    aside {
    margin: 0 30px 0 30px;
    }

	.resright, .disappear {
		display: block ;
		float: right;
		padding: 20px ;
		clear: both ;
		max-height: 400px ;
		max-width: 300px ;
	}

    header { max-width: 980px ; margin: auto;}
}

.ll {
	font-size: large ;
	line-height: 1.3em ;
	max-width: 600px;
	margin: auto ;
	display: block ;
}

.ll dt {
	display: inline-block ;
	width: 6em ;
	background: gray ;
	max-width: 30% ;
}

.ll dd {
	display: inline ;
	background: blue ;
	max-width: 60% ;
}

.ll dd:after {
	display:block;
	content: '' ;
}

.left {
	width: 45% ;
	float: left ;
	clear: both ;
}

.right {
	width: 45% ;
	float: right ;
}
