@charset "utf-8";
/*
Licensed under http://www.apache.org/licenses/LICENSE-2.0
Attribution notice: by Stefan Müller in 2013 ff.
*/
::selection {
	background:#a4c5ff;
}
*, *::after, *::before {
	border:none;
	box-sizing:inherit;
	color:inherit;
	font-family:inherit;
	font-kerning:auto;
	font-size:inherit;
	font-style:inherit;
	line-height:inherit;
	margin:0;
	outline:none;
	padding:0;
	position:relative;
	text-decoration:none;
	transition:
		background-color 0.2s ease-out,
		border 0.2s ease-out,
		box-shadow 0.2s ease-out,
		color 0.2s ease-out,
		opacity 0.2s ease-out,
		text-shadow 0.2s ease-out;
}
*:focus, *:hover, *:active {
	outline:none;
	text-decoration:none;
	transition:
		background-color 0.2s ease-out,
		box-shadow 0.2s ease-out,
		border 0.2s ease-out,
		color 0.2s ease-out,
		opacity 0.2s ease-out,
		text-shadow 0.2s ease-out;
}
.abbr::after {
	content:"…";
}
.abbr:hover::after {
	content:"";
}
.abbr > .rest {
	display:none;
}
.abbr:hover > .rest {
	display:initial;
}
.arrowdown::after {
	color:#bbb;
	content:"▼";
}
.arrowleft::before {
	color:#bbb;
	content:"◀ ";
}
.arrowleftstop::before {
	color:#bbb;
	content:"◀◀ ";
}
.arrowright::after {
	color:#bbb;
	content:" ▶";
}
.arrowrightstop::after {
	color:#bbb;
	content:" ▶▶";
}
.card {
	background-color:#ffffff;
	border:none;
	border-radius:1px;
	box-shadow:0 0 3px 0 #b0c0e0;
	display:inline-block;
	max-width:100%;
	padding:4px 6px;
	z-index:0;
}
.citebox {
	border-top:1px solid #666666;
	border-bottom:1px solid #666666;
	color:#666666;
	font-size:0.9em;
	margin-top:3em;
	padding:0.8em 15px;
	text-align:start;
}
.cover {
	align-content:center;
	align-items:center;
	border-radius:1px;
	box-shadow:0 1px 3px 0 #b0c0f4;
	height:auto;
	justify-content:center;
	max-width:50em;
	padding:8% 8%;
}
.covertitle {
	background-color:#ffffff;
	opacity:0.84;
	padding:5% 6% 6% 6%;
	text-shadow:0 0 2px #ccccee;
}
.desk > body > footer {
	margin:1em 2px 4em 22%;
}
.desk > body > header {
	float:left;
	height:100%;
	overflow:auto;
	padding:1% 1% 0 2%;
	position:fixed;
	width:21%;
	z-index:1;
}
.desk > body > header .submenu summary + ul {
	border-radius:1px;
	box-shadow:inset 0 1px 3px 0 #b0c0f4;
	padding:4px 8px 8px 8px;
}
.desk > body > header form {
	display:flex;
	flex-wrap:nowrap;
	margin: 0.2em 0 0.4em 0;
	width:auto;
}
.desk > body > header form > input {
	width:calc(100% - 1.2em);
}
.desk > body > header form > input + .droparea {
	background-color:#f4f4f4;
	height:0;
	left:0;
	margin:1.4em 1px 0 0;
	opacity:0;
	overflow:hidden;
	position:absolute;
	text-align:start;
	width:100%;
}
.desk > body > header form > input + .droparea:hover,
.desk > body > header form > input:focus + .droparea {
	height:auto;
	opacity:1;
	padding:4px 8px 8px 8px;
	z-index:3;
}
.desk > body > header form > input + .droparea > a {
	width:1em;
}
.desk > body > header form > input + .droparea > table td,
.desk > body > header form > input + .droparea > table th {
	background-color:#e8e8e8;
	font-size:0.7em;
	padding:0 3px 0 3px;
	text-align:left;
	vertical-align:top;
}
.desk > body > header h1 {
	line-height:1.1;
	margin:0.5em 0 0.5em 0;
}
.desk > body > header hr {
	background-color:#e0e0e8;
	border-top:1px solid #e8e8ef;
	border-bottom:2px solid #f8f8f8;
	height:4px;
}
.desk > body > main {
	margin-left:22%;
	padding:1% 4px 1% 0;
}
:is(.desk, .desk_wide) > body > header .extra {
	font-size:0.8em;
	margin-top:1em;
}
:is(.desk, .desk_wide) > body > header .extra.lang {
	word-spacing:0.5em;
}
:is(.desk, .desk_wide) > body > header .submenu summary,
:is(.desk, .desk_wide) > body > header a {
	border:none;
	color:#606060;
	cursor:pointer;
	text-shadow:
		0 1px 0 #fdfdfd,
		1px 1px 0 #fdfdfd,
		1px 0 0 #fdfdfd;
}
:is(.desk, .desk_wide) > body > header a:is(:focus, :hover) {
	background-color:#ffffff;
	border:none;
	box-shadow:
		0 0 0 2px #ffffff,
		0 0 5px 2px #66afff;
	color:#000000;
}
:is(.desk, .desk_wide) > body > header a:active {
	box-shadow:none;
}
.desk_wide {
	padding:0.8vh 0.8vw 0.8vw 0.8vw;
}
.desk_wide > body > header {
	align-items:baseline;
	display:inline-flex;
	flex-wrap:wrap;
	gap:0 16px;
	padding:0 2px 0.1em 2px;
}
.desk_wide > body > header .extra {
	margin-top:0;
}
.desk_wide > body > header .extra.lang {
	flex-basis:100%;
}
.desk_wide > body > header :is(h1, h2, h3, h4, h5, h6) {
	margin:0;
}
.desk_wide > body > header nav,
.desk_wide > body > header nav > ul {
	display:flex;
	flex-wrap:wrap;
	gap:0 16px;
}
.desk_wide > body > main {
	margin-bottom:2em;
}
.dropcap::first-letter,
drop-cap {
	float:left;
	font-size:2.86em;
	line-height:0.6;
	padding:0.19em 0.07em 0 0;
	vertical-align:text-top;
}
.embed_left {
	clear:both;
	display:block;
	float:left;
	line-height:1;
	margin:0.4em 2% 0.4em 0;
	z-index:1;
}
.embed_right {
	clear:both;
	display:block;
	float:right;
	line-height:1;
	margin:0.4em 0 0.4em 2%;
	z-index:1;
}
.filter > table {
	border-spacing:0;
}
.filter > table > thead > tr:first-child > th {
	text-align:center;
}
.filter > table td,
.filter > table th {
	border-right:1px solid #ffffff;
	font-size:smaller;
	padding:1px 4px;
}
.filter > table th {
	background-color:#dfe2f6;
	font-weight:normal;
	white-space:nowrap;
}
.filter > table tr:first-of-type > th:first-child {
	letter-spacing:0.2em;
}
.filter > table tr:hover {
	background-color:#f4f4f6;
}
.filter > table tr > th,
.filter > table tr > td {
	border-top:1px solid #ffffff;
	text-align:left;
}
.filter > table [type="search"],
.filter > table [type="text"],
.filter > table [type="url"],
.filter > table select {
	width:100%;
}
.flexbase {
	align-items:baseline;
	display:flex;
	flex-wrap:wrap;
}
.flexcol {
	display:inline-flex;
	flex-direction:column;
	flex-wrap:wrap;
}
.flexrow {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
}
.flextable > label {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:3px 0 3px 0;
}
.flextable > label:hover {
	background:#fff8ba;
}
.flextable > label > :first-child {
	flex:0 0 auto;
	text-align:start;
}
.flextable > label > * + * {
	flex:1 1 auto;
}
.flip {
	display:none;
}
.flip + .lid ~ button {
	background:#00aa00;
	display:none;
}
.flip + .lid ~ button[value="delete"] {
	background:#aa0000;
	color:#ffffff;
}
.flip + .lid ~ button:focus, .lid ~ button:hover {
	background:#00ed00;
	box-shadow:0 0 8px 2px #00ed00;
}
.flip + .lid ~ button[value="delete"]:focus, .flip + .lid ~ button[value="delete"]:hover {
	background:#ff0000;
	box-shadow:0 0 8px 2px #ff0000;
}
.flip + .lid ~ button:active,
.flip + .lid ~ button[value="delete"]:active {
	box-shadow:none;
}
.flip + .menuswitch {
	display:none;
}
.flip + .notice + * {
	background:#000000;
	box-shadow:0 0 200px 124px #ffff00;
	color:#ffffff;
	margin:2px;
	padding-left:1.5em;
	white-space:pre-wrap;
}
.flip + .notice::after {
	content:"✕";
}
.flip + .top {
	position:fixed;
	z-index:9;
}
.flip + .top + * {
	position:fixed;
	z-index:8;
}
.flip + [data-unchecked]::after {
	content:attr(data-unchecked);
}
.flip:checked + .lid ~ button {
	display:initial;
}
.flip:checked + .notice + * {
	display:none;
}
.flip:checked + .notice::after {
	content:"✚";
}
.flip:checked + [data-checked]::after {
	content:attr(data-checked);
}
.img {
	border:none;
	display:inline-block;
	max-width:100%;
}
.img:focus,
.img:hover {
	background:#ffffff;
	border:none;
	box-shadow:0 0 6px 1px #66afff;
}
.img:active {
	border:none;
	box-shadow:none;
}
.img > img {
	display:block;
}
.index {
	background-color:#ffffff;
	border-radius:1px;
	box-shadow:0 1px 3px 0 #b0c0f4;
	display:table;
	font-size:smaller;
	margin-left:0;
	padding:4px 6px;
	width:100%;
}
.index > .card {
	margin-bottom:2px;
}
.index .dataTables_filter {
	margin:4px 0 4px 0;
}
.index .dataTables_info,
.index .dataTables_length,
.index .dataTables_paginate {
	display:inline-block;
	margin:4px 4px 4px 0;
}
.index .dataTables_info,
.index .dataTables_length {
	border-radius:1px;
	box-shadow:0 0 3px 0 #b0c0e0;
	padding:1px 4px;
}
.index .paginate_button {
	display:inline-block;
	min-width:24px;
	text-align:center;
}
.index h1:first-child {
	font-size:1.35em;
	line-height:1.1;
	margin-bottom:0.2em;
}
.index table {
	border-collapse:separate;
	border-spacing:0;
	box-shadow:0 1px 3px 0 #b0c0f4;
	margin:3px 0;
	width:100%;
}
.index td,
.index th {
	border-top:1px solid #dddddd;
	padding:4px;
	vertical-align:top;
}
.index td[class^="sorting_"],
.index th:is(:focus, :hover, :active) {
	background-color:#ecf3fe;
}
.index td:not(:first-child) {
	border-left:1px solid #dddddd;
}
.index th {
	cursor:pointer;
}
.index th:not(:first-child) {
	border-left:1px solid #ffffff;
}
.index th::after {
	content:" ↕";
}
.index th[data-filterless]::after {
	content:"";
}
.index thead {
	background:#dfe2f6;
}
.just {
	hyphens:auto;
	text-align:justify;
}
.just_ahyph {
	hyphens:manual;
	text-align:justify;
}
.key,
.paginate_button,
a.card,
a[onclick],
button {
	border:none;
	border-radius:1px;
	box-shadow:
		inset 0 0 0 1px #ffffff,
		0 0 3px 0 #aaafff;
	cursor:pointer;
	display:inline-block;
}
.key,
.paginate_button,
a[onclick],
button {
	background:#f7f8ff;
	margin:1px;
	padding:1px 2px;
}
.key.dark,
.paginate_button.current {
	background:none;
	background-color:#002266;
	box-shadow: 0 0 3px 0 #aaafff;
	color:#e8f8ff;
}
.key.disabled, .key.disabled:is(:focus, :hover, :active),
.paginate_button.disabled, .paginate_button.disabled:is(:focus, :hover, :active),
a.card.disabled, a.card.disabled:is(:focus, :hover, :active),
a[onclick].disabled, a[onclick].disabled:is(:focus, :hover, :active),
button.disabled, button.disabled:is(:focus, :hover, :active) {
	background-color:inherit;
	box-shadow: 0 0 2px 0 #808080;
	color:#606060;
	cursor:default;
}
.key:focus, .key:hover,
.paginate_button:focus, .paginate_button:hover,
a.card:focus, a.card:hover,
a[onclick]:focus, a[onclick]:hover,
button:focus, button:hover {
	background:#ffffff;
	border:none;
	box-shadow:
		inset 0 0 0 1px #ffffff,
		0 0 6px 1px #66afff;
	color:#000000;
}
.key:active,
.paginate_button:active,
a.card:active,
a[onclick]:active,
button:active {
	background:#b8c8f8;
	border:none;
	box-shadow:inset 0 0 0 1px #ffffff;
	color:#000000;
}
.lid ~ .key,
.lid ~ button {
	background:#00aa00;
	display:none;
}
.lid ~ .key[value="delete"],
.lid ~ button[value="delete"] {
	background:#aa0000;
	color:#ffffff;
}
.lid:focus ~ .key,
.lid:focus ~ button {
	display:block;
}
.lid ~ .key:focus, .lid ~ .key:hover,
.lid ~ button:focus, .lid ~ button:hover {
	background:#00ed00;
	box-shadow:0 0 8px 2px #00ed00;
	display:block;
}
.lid ~ .key[value="delete"]:focus, .lid ~ .key[value="delete"]:hover,
.lid ~ button[value="delete"]:focus, .lid ~ button[value="delete"]:hover {
	background:#ff0000;
	box-shadow:0 0 8px 2px #ff0000;
}
.lid ~ .key:active,
.lid ~ .key[value="delete"]:active,
.lid ~ button:active,
.lid ~ button[value="delete"]:active {
	box-shadow:none;
}
.mapping td {
	background-color:#f0f0ff;
}
.mapping td,
.mapping th {
	padding:2px 8px;
	text-align:start;
}
.mapping th {
	background-color:#dfe2f6;
	font-weight:normal;
	vertical-align:top;
}
.mapping th.light {
	background-color:#ffffff;
	font-weight:normal;
}
.margin_top_extended {
	margin-top:1.2em; /*thrice the margin of p*/
}
.mark,
mark {
	background-color:#ffffa0;
}
.petit {
	margin-left:auto;
	margin-right:auto;
	width:90%;
}
.petit,
small {
	font-size:0.9em;
}
.ref::before {
	color:#bbbbbb;
	content:"▶";
	font-size:0.9em;
	margin:0 0.1em 0 0;
	top:-0.1em;
}
.shadow {
	box-shadow:0 1px 3px 0 #b0c0f4;
}
.sheet {
	background-color:#ffffff;
	border-radius:1px;
	box-shadow:0 1px 3px 0 #b0c0f4;
	max-width:1111px;
	min-width:81%;
	padding:10% 12% 12% 12%;
	width:81%;
}
.sheet + .sheet {
	margin-top:5px;
}
.small-caps,
small-caps {
	font-variant:small-caps;
}
.start {
	text-align:start;
}
.txt {
	color:#000000;
}
.txtsrc {
	color:#104595;
}
.wide {
	width:100%;
}
[dir="rtl"] > .arrowleft::before {
	content:"▶ ";
}
[dir="rtl"] > .arrowleftstop::before {
	content:"▶▶ ";
}
[dir="rtl"] > .arrowright::after {
	content:" ◀";
}
[dir="rtl"] > .arrowrightstop::after {
	content:" ◀◀";
}
[type="email"],
[type="password"],
[type="search"],
[type="text"],
[type="url"],
select {
	border-radius:1px;
	box-shadow:inset 0 0 2px 0 #aaafff;
	max-width:100%;
	padding:0 3px 0 3px;
}
[type="email"]:focus, [type="email"]:hover,
[type="password"]:focus, [type="password"]:hover,
[type="search"]:focus, [type="search"]:hover,
[type="text"]:focus, [type="text"]:hover,
[type="url"]:focus, [type="url"]:hover,
select:focus, select:hover {
	box-shadow:inset 0 0 2px 1px #66afff;
}
[type="radio"],
label,
summary {
	cursor:pointer;
}
a {
	border-bottom:2px solid #80c8ff;
}
a:focus, a:hover {
	border-bottom:2px solid #0060c0;
}
a:active {
	border-bottom:2px dotted #00a000;
}
a.note {
	border:none;
	box-shadow:0 0 2px 0 #a0b0e0;
	padding:0.05em 0.1em 0 0.06em;
}
a.note:focus,
a.note:hover,
span.note:hover a.note {
	background-color:#ffffbb;
}
a.note::before,
small.note::before {
	color:#000000;
	content:attr(data-sign);
	line-height:0;
	top:2px;
	vertical-align:super;
}
a.note[aria-label]::before {
	content:attr(aria-label);
	font-size:0.8em;
}
a[title="Link"]:empty::before {
	border:none;
	color:#ccccee;
	content:"#"; /* §#❡⚭🔗●⸿ */
	float:left;
	font-weight:normal;
	font-size:1rem;
	hyphens:manual;
	left:-0.95rem;
	letter-spacing:0;
	line-height:1;
	position:absolute;
	text-indent:0;
	text-shadow:0.5px 0.5px 1.5px #ccccee;
}
a[title="Link"]:empty:dir(rtl)::before {
	float:right;
	left:0.95em;
}
b {
	font-weight:bolder;
}
big {
	font-size:larger;
}
code,
pre {
	font-family:"Consolas", "Source Code Pro", monospace;
	font-size:0.9em;
	overflow:auto;
}
del, del:focus, del:hover, del:active,
s, s:focus, s:hover, s:active {
	text-decoration:line-through 2px solid #00000044;
}
dd {
	padding-left:4%;
}
dd + dt,
dt:first-of-type {
	margin-top:0.4em;
}
dt {
	font-weight:bolder;
}
em {
	letter-spacing:0.2em;
}
fieldset {
	border:1px solid #c0c0c0;
	margin-top:0.5em;
	padding:0.3em 0.6em 0.4em 0.6em;
}
figcaption {
	display:table-caption;
	caption-side:bottom;
	font-size:0.9em;
	margin-top:0.3em
}
figure {
	display:inline-table;
	margin:0.4em 0; /*same as for p*/
	max-width:100%;
}
figure img {
	object-fit:contain;
}
:is(figure, h1, h2, h3, h4, h5, h6, p):first-child {
	margin-top:0;
}
footer .img {
	margin:0.4em 0.4em 0 0;
	padding:2px;
	vertical-align:text-top;
}
form.card {
	max-width:1111px;
}
h1 {
	font-size:1.8em;
}
h2 {
	font-size:1.5em;
}
h3 {
	font-size:1.3em;
}
h4 {
	font-size:1.15em;
}
h5 {
	font-size:1.05em;
}
h6 {
	font-size:1em;
}
h1, h2, h3, h4, h5, h6 {
	break-after:avoid;
	clear:both;
	font-weight:normal;
	hyphens:manual;
	line-height:1.2;
	margin:0.8em 0 0.6em 0;
	page-break-after:avoid;
	text-align:start;
}
.key:target,
:is(h1, h2, h3, h4, h5, h6):target,
section:target > :is(h1, h2, h3, h4, h5, h6),
tr:target > td,
tr.highlight > td {
	animation-duration:2s;
	animation-name:flash;
	background-color:#ffffa0 !important;
}
h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6, h2 + .heading_delayed {
	margin-top:0.4em;
}
html {
	background-color:#f0f0f0;
	box-sizing:border-box;
	font-family:"linbiolinum", "Linux Biolinum", "Linux Biolinum G", "Linux Biolinum O", sans-serif;
	font-size:20px;
	height:100%;
	line-height:1.4;
	z-index:0;
}
html:focus-within {
	scroll-behavior:smooth;
}
i {
	font-style:italic;
}
img {
	max-width:100%;
}
ins {
	bottom:0.15em;
	font-size:0.9em;
}
ins::after {
	color:#00aa00;
	content:"/";
	font-size:1.15em;
	font-weight:bolder;
}
ins::before {
	color:#00aa00;
	content:"\\";
	font-size:1.15em;
	font-weight:bolder;
}
kbd {
	font-family:inherit;
	font-style:italic;
}
legend {/* from github.com/necolas/normalize.css */
	display:table;
	max-width:100%;
	white-space:normal;
}
li {
	margin:0.15em 0;
}
main {
	display:block;
	z-index:2;
}
p {
	margin:0.4em 0;
}
pre {
	overflow-x:auto;
}
section {
	padding-top:0.5em;	
}
select {
	max-width:12em;
}
small.note {
	background-color:#ffffff;
	border-radius:1px;
	box-shadow:0 0 2px 0 #a0b0e0;
	float:right;
	font-size:0.85rem;
	margin-right:-53%;
	padding:4px 5px 4px 5px;
	text-align:justify;
	width:51%;
}
small.note:target {
	z-index:1;
}
span.note {
	font-weight:normal;
	margin:0 3px 0 3px;
}
span.note:hover > a.note,
span.note:hover > small.note {
	box-shadow:0 0 3px 2px #66afff;
	z-index:2;
}
/* sub and sup styles from github.com/necolas/normalize.css */
sub,
sup {
	font-size:0.8em;
	line-height:0;
	position:relative;
	vertical-align:baseline;
}
sub {
	bottom:-0.25em;
}
sup {
	top:-0.5em;
}
u, u:focus, u:hover, u:active {
	text-decoration:underline 1.2px;
}
ul {
	list-style-type:none;
}
ul.list,
ol.list {
	margin:0.4em 0;
	padding-left:1.5em;
}
ul.list {list-style-type:disc;}
ul.list ul.list {list-style-type:circle;}
ul.list ul.list ul.list {list-style-type:square;}
@keyframes flash {
	from {
		box-shadow:0 0 0 0.5em #aaaa00;
	}
	to {
		box-shadow:0 0 2em 1em #ffffa0;
	}
}
@media screen and (max-width:1000px) {
	.desk > body > footer {
		margin:1em 0 0 0;
		padding:8px 4px 8px 4px;
		text-align:center;
	}
	.desk > body > header {
		float:none;
		overflow:visible;
		padding:8px 4px 8px 4px;
		position:relative;
		width:100%;
	}
	.desk > body > header a > img {
		display:inline-block;
		height:2em;
		vertical-align:top;
	}
	.desk > body > header li {
		display:inline-block;
		margin:0 5px 0 5px;
	}
	.desk > body > header li > a,
	.desk > body > header li > b {
		padding:0 5px 0 5px;
	}
	.desk > body > main {
		margin-left:0;
		padding:8px 4px 8px 4px;
	}
	.sheet {
		width:84%;
		padding:5% 10% 8% 10%;
	}
	small.note {
		margin-right:-40%;
		text-align:start;
		width:38%;
	}
}
@media screen and (max-width:550px) {
	.card,
	.sheet {
		margin-left:0;
		margin-right:0;
		overflow:visible !important;
		width:100%;
	}
	.embed_left,
	.embed_right {
		display:block;
		float:none;
	}
	small.note,
	small.note small.note {
		border:1px solid #cccccc;
		box-shadow:none;
		clear:both;
		display:block !important;
		float:none;
		margin-left:5%;
		margin-right:0%;
		position:relative !important;
		top:auto !important;
		width:95% !important;
		z-index:1;
	}
}
@media print {
/*Partially taken from https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css*/
	@page {
		size:A4;
		margin:22mm 0 26mm 0;
	}
	*, *::before, *::after {
		background-color:transparent !important;
		overflow:visible !important;
		box-shadow:none !important;
	}
	.card,
	.sheet,
	html,
	main {
		margin:0;
		padding:0;
		width:100%;
	}
	.desk > body > footer,
	.desk > body > header,
	.filter,
	nav.prev_next {
		display:none;
	}
	a.note::after,
	a[href^="javascript:"]::after {
		content:"" !important;
	}
	caption, figcaption, p, small, tr {
		orphans:2;
		widows:2;
	}
	figure, h1, h2, h3, h4, h5, h6, img, tr {
		page-break-inside:avoid;
	}
	h1, h2, h3, h4, h5, h6 {
		page-break-after:avoid;
	}
	html {
		font-size:18px;
		margin-left:-3%;
		width:74%;
	}
	small.note,
	small.note small.note {
		border:1px solid #cccccc;
		box-shadow:none;
		clear:both;
		display:block !important;
		float:right;
		line-height:1;
		margin:0.4em 0 0.4em 2%;
		text-align:start !important;
		top:auto !important;
		width:36% !important;
		z-index:1;
	}
	span.note {
		box-shadow:none;
	}
}
