/* Common */
.left   { text-align: left; }
.right  { text-align: right; }
.center { text-align: center; }
.fleft  { float: left; }
.fright { float: right; }
.clear  { clear: both; }
.small  { font-size: 80%; }
.footnote {
	clear: both;
	font-size: 80%;
}
.overflow { _zoom: 1; overflow: hidden; }
.bkgBlue { color: inherit; background-color: #CCDDFF; }
.skipnav { text-align: left; }
.skipnav a { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.skipnav a:focus, .skipnav a:active { position: static; left: 0; width: auto; height: auto; overflow: visible; text-decoration: underline; }

/* links */
a:link {
	color: #0044CC; background-color: inherit;
	text-decoration:none;
}
a:active {
	color: #215dc6; background-color: #CCDDEE;
	text-decoration:none;
}
a:visited {
	color: #a63d21; background-color: inherit;
	text-decoration:none;
}
a:hover {
	color: #215dc6; background-color: #CCDDEE;
	text-decoration:underline;
}
a.note_super {
  color:#DD3333;
  background-color:inherit;
  font-weight:bold;
  font-size:60%;
  vertical-align:super;
}

/* Elements */
h1 {
   font-family:verdana, arial, helvetica, Sans-Serif;
   color: inherit; background-color: #DDEEFF;
   padding:.3em;
   margin: 0px 0px .5em 0px;
   border: 0px;
}
h2 {
   font-size: 120%;
   font-family:verdana, arial, helvetica, Sans-Serif;
   color: inherit; background-color: #F0F8FF;
   padding:.3em;
   margin: 0px 0px .5em 0px;
   border-bottom:  3px solid #D0E0FF;
   border-top:     1px solid #D0E0FF;
   border-left:   10px solid #D0E0FF;
   border-right:   5px solid #D0E0FF;
}
h3 {
   font-family:verdana, arial, helvetica, Sans-Serif;
   color: inherit; background-color: #FFFFFF;
   padding:.3em;
   margin: 0px 0px .5em 0px;
   border-bottom:  3px solid #DDEEFF;
   border-top:     1px solid #DDEEFF;
   border-left:   10px solid #DDEEFF;
   border-right:   5px solid #DDEEFF;
}
h4 {
   font-family:verdana, arial, helvetica, Sans-Serif;
   color: inherit; background-color: #F8F8FF;
   padding:.3em;
   margin:0px 0px .5em 0px;
   border-top:     1px solid #DDEEFF;
   border-left:   18px solid #DDEEFF;
}

pre, dl, ol, ul, p, blockquote { line-height: 1.6em; }
body, td { font-size:90%; }
p, dd { text-indent: 1em; }
ul { margin-bottom:.5em; }
ruby { line-height: 1; }
pre {
	white-space:pre;
	word-wrap: break-word;
}
pre, blockquote {
	padding: 0.3em;
	margin:  0px 1em;
	border-top:#DDDDEE 1px solid;
	border-bottom:#888899 1px solid;
	border-left:#DDDDEE 1px solid;
	border-right:#888899 1px solid;
	background-color: #F0F8FF;
}
p.quotation { padding:0; margin: 0; border: 0; }
img {
   border:none;
   vertical-align:middle;
   max-width: 100%;
   width:auto\9; /* for IE8 */
   height:auto;
}

table {
   word-break:break-all;
   word-wrap:break-word;
}
thead td.style_td,
tfoot td.style_td {
	color: inherit; background-color: #D0D8E0;
}
thead th.style_th,
tfoot th.style_th {
	color: inherit; background-color: #E0E8F0;
}
.style_table {
	padding:0px;
	border:0px;
	margin:auto;
	text-align:left;
	color: inherit; background-color: #ccd5dd;
}
.style_th {
	padding:5px;
	margin:1px;
	text-align:center;
	color: inherit; background-color: #EEEEEE;
}
.style_td {
	padding:5px;
	margin:1px;
	color: inherit; background-color: #EEF5FF;
}
div.fl {
	float: left;
	margin-left: 10px;
}
div.fc {
	display:         flex;
	flex-wrap:       wrap;
	justify-content: center;
}
h2, h3, h4 { clear: left; }

/* id */
#header {
	font-size: 90%;
	color: inherit; background-color: #F0F8FF;
}
#header span { line-height: 1.6em; }
.bread { float: left; }
#footer {
	clear: both;
	font-size: 80%;
	margin: 5px;
	border-top: #000000 1px solid;
}
#lastmodified {
	text-align: right;
}
#rss {
    color: #FFFFFF; background-color: #D84010;
    font-weight: bold;
    padding: .1em .2em;
}
#lang {
    color: #FFFFFF; background-color: #01804E;
    font-weight: bold;
    padding: .1em .2em;
}
#wide {
   line-height: 179%;
}

/* Google Custom Search */
#cse-box {
   width: 300px !important;
}
.gsib_a, .gsib_b {
	height: 100% !important;
}
#cse-results {
   float: right;
}

@media (prefers-color-scheme: dark) {
	body {
		background-color: #121212;
		color: #e4e4e4;
	}
	a:link    { color: #a8afff; }
	a:visited { color: #e39777; }
	h1, h2, h3, h4, pre, blockquote {
		background-color: #1C2227;
		border-color: #24344C;
	}
	pre { color: #e4e4e4; }
	img { filter: grayscale(30%); }
	#header   { background-color: #1C2227; }
	.style_th { background-color: #24344C; }
	.style_td { background-color: #1C2227; }
	thead th.style_th { background-color: #24344C; }
	thead td.style_td { background-color: #1C2227; }
}
