@charset "utf-8";

/* -------- Tools -------- */

.group:after {
  content: "";
  display: table;
  clear: both;
}

/* -------- Theme -------- */

html {
	box-sizing: border-box;
	background-color:rgb(255,247,237);
	color: rgb(93,76,55);
	overflow: auto;
	overflow-x: auto;
	overflow-y: scroll;
	cursor: default;
	font: normal normal 19px/1.6em -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	height: 100%;
}

body {
	height: 100%;
	display: flex;
	flex-direction: column;
}

#header {
	flex-shrink: 0;
}

#header-logo {
	background-color: #fff;
}

#header-logo a {
	display: block;
	padding: 20px 0;
}

#header-logo a img {
	max-width: 100%;
}

#header-menu {
	border-top: 1px solid rgba(93,76,55,0.25);
	border-bottom: 1px solid rgba(93,76,55,0.25);
}

#center {
	flex: 1 0 auto;
}

#footer {
	flex-shrink: 0;
}

#footer-menu {
	border-top: 1px solid rgba(93,76,55,0.25);
}

.menubar ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	gap: 0 1em;
	padding: 0;
	z-index: 0;
}

.menubar ul li {
}

.menubar li {
	text-align: left;
	position: relative;
	display: inline-block;
}

.menubar li a {
	display: block;
	margin: 0;
	line-height: 2.75em;
	white-space: pre;
}

.menubar li > a:hover {
	opacity: 0.5;
}

.menubar ul ul {
	z-index: 10;
	position: absolute;
	display: none;
	left: 0;
	top: 100%;
}

.menubar ul ul ul {
	left: 100%;
	top: 0;
}

.menubar ul ul li {
	display: block;
	padding: 0;
	margin: 0;
}

.menubar li > ul {
	display: none;
	width: auto;
}

.menubar li:hover > ul {
	display: block;
}

.menubar li > ul.menu-open {
	display: block;
}

.menubar li.menu-parent > a:after,
.menubar li:hover.menu-parent > a:after {
	content: "";
    background-position: center center;
    background-size: 0.6em 0.6em;
    background-repeat: no-repeat;
    display:inline-block;
    width: 0.6em;
    height: 0.6em;
    vertical-align: middle;
    margin-left: 0.5em;	
}

.menubar li.menu-parent > a:after {
	background-image: url("../images/arrow-down.png");
}

.menubar li:hover.menu-parent > a:after {
}

.menu-item {
	border-bottom: 2px solid transparent;
}

.menu-item-selected,
.menu-item-related {
	color: rgb(97,175,244);
	border-bottom: 2px solid rgb(97,175,244);
}

.content {
	padding: 20px 0;
	margin-top: 20px;
	overflow: hidden;
}

.content:first-child {
	margin-top: 0;
}

.content h1,
.content h2,
.content h3,
.content h4 {
}

.content hr,
.content h1,
.content h2,
.content h3,
.content h4,
.content p,
.content form,
.content ul,
.content table {
}

.content hr {
	width: 100%;
	height: 1px;
	background-color: #aaa;
	margin: 25px 0;
}

.content h1 {
	font: normal 700 2.0em/1em -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	margin-bottom: 0.75em;
}

.content h2 {
	font: normal 600 1.5em/1.2em -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	margin-bottom: 0.5em;
}

.content h3 {
	font-size: 1.5em;
	font-weight: 300;
	margin: 0.8em 0;
}

.content h4 {
	font-style: italic;
	margin: 0.5em 0;
}

.content p,
.content ul,
.content table {
	margin-bottom: 20px;
	text-align: left;
}

.content ul {
	list-style-type: disc;
	list-style-position: outside;
	list-style-image: none;
	padding-left: 30px;
}

.content ul li {
	padding-left: 10px;
}

.content strong {
	font-weight: bold;
}

.content em {
	font-style: italic;
}

.content a {
	color: rgb(97,175,244);
}

.content a:hover {
	text-decoration: underline;
}

.content small {
	font-size: 11pt;
	line-height: 1.5em;
	vertical-align: middle;
}

.content img {
	display: block;
	width: 100%;
	height: auto;
}

.content img.center {
	margin: 0 auto 1em auto;
}

.content img.left {
	float: left;
	margin: 0.35em 1em 1em 0;
}

.content img.right {
	float: right;
	margin: 0.35em 0 1em 1em;
}

.content img.book {
	box-shadow: 0 5px 10px #aaa;
}

.content table {
}

.content table td {
	padding-left: 15px;
}

.content table td:first-child {
	padding-left: 0;
}

.content video,
.content audio,
.content iframe {
	max-width: 100%;
}

.content .header {
	margin-bottom: 10px;
}

.content .header .date {
	color: #777;
	font-style: italic;
}

.content .more-hidden {
	display: none;
}

.content .reveal {
	display: none;
}

/* -------- two columns -------- */

.content .twocolumns {
	display: flex;
	flex-flow: row wrap;
	margin-bottom: 1.2em;
}

.content .twocolumns .left,
.content .twocolumns .right {
	flex: 0 0 50%;
	margin-top: 1.2em;
}

.content .twocolumns .left {
	padding-right: 12px;
}

.content .twocolumns .right {
	padding-left: 12px;
}

.content .twocolumns .left:first-child,
.content .twocolumns .left:first-child + .right {
	margin-top: 0;
}

.content .twocolumns .left > :first-child,
.content .twocolumns .right > :first-child {
	margin-top: 0;
}

.content .twocolumns .left > :last-child,
.content .twocolumns .right > :last-child {
	margin-bottom: 0;
}


/* -------- book -------- */

.content .book {
	display: flex;
	flex-flow: row wrap;
	margin-bottom: 1.2em;
}

.content .book .left,
.content .book .right {
	margin-top: 1.2em;
}

.content .book .left {
	flex: 0 0 28%;
	padding-right: 12px;
}

.content .book .right {
	flex: 1 1 0%;
	padding-left: 12px;
}

.content .book .left:first-child,
.content .book .left:first-child + .right {
	margin-top: 0;
}

.content .book .left > :first-child,
.content .book .right > :first-child {
	margin-top: 0;
}

.content .book .left > :last-child,
.content .book .right > :last-child {
	margin-bottom: 0;
}

