/* Global element preferences */

html {
	margin: 0pt;
  line-height: 1.3;
  font-size: 13pt;
  font-family: "Latin Modern Sans", sans-serif;
  background-color: #446622;
	background-image: url(/theme/image/root-bg.png);
	color: white;
}

h1, h2, h3  {
    font-weight: 800;
}

h1 {
	margin: 1ex 0pt;
	font-size: 200%;
}

h2 {
	font-size: 140%;;
}

h3 {
	font-size: 130%;
}

h4 {
	font-size: 130%;
	font-style: italic;
}

h5 {
	font-size: 120%;
	font-style: italic;
}

h6 {
	font-size: 100%;
	font-style: italic;
}

p {
	margin-top: 0.2rem;
	margin-bottom: 0.6rem;
	hyphens: auto;
	-webkit-hyphens: auto;
}

ul.nobull {
  list-style-type: none;
  padding-left: 0px;
  margin: 2ex;
}

.nobull li {
    margin-top: 1ex;
}

address {
    margin-top: 3ex;
}

dt {
    font-style: oblique;
    margin-top: 4pt;
}


pre.literal-block {
	overflow: auto;
	box-sizing: border-box;
	border-top: 1pt solid rgba(0,0,0,0);
	border-bottom: 1pt solid rgba(0,0,0,0);
	background-color: rgba(255,255,100,0.2);
	padding: 0.3rem 1rem;
	margin: 0.3rem 0rem;
	width: 100%;
  transition:
  	border-top-color 1.5s ease-in-out,
  	border-bottom-color 1.5s ease-in-out,
  	background-color 1.5s ease-in-out,
  	width 1.5s,
  	padding 0.5s;
}

pre.literal-block:hover {
	border-top-color: #8a9;
	border-bottom-color: #8a9;
	background-color: rgba(255,255,255,1);
  width: 90vw;
	padding: 2rem 1rem;
  transition:
  	border-top-color 1.5s ease-in-out,
  	border-bottom-color 1.5s ease-in-out,
  	background-color 1.5s ease-in-out,
  	width 1.5s,
  	padding 0.5s;
}

/* Individual content elements */

article.hentry {
	padding: 1ex;
	max-width: 10cm;
	height: 8cm;
	background-color:white;
	border: 1pt solid #bbb;
	margin: 0 0.5ex;
	position: relative;
	overflow: hidden;
}


article.hentry header h2 {
	font-size: 120%;
	font-weight: 600;
}

.summary .dekofig, .summary .toc {
	display: none;
}

#post, #pagebody {
	position: relative;
	z-index: 200;
	width: 90%;
	max-width: 16cm;
	margin: 2pt auto 2pt 2%;
	padding: 2ex;
	background-color: #f5f5f0;
}

header#main-header, footer#main-footer {
	position: relative;
	width: 100%;
	margin: 0;
}

header#main-header {
	height: 100pt;
	padding: 1em;
	background-size: auto 100pt;
	background-repeat: repeat-x;
	background-origin: content-box;
	background-image: url(/theme/image/title-bg.jpeg);
}

footer#main-footer {
	margin-top: 2ex;
  padding-top: 1.5em;
}

header {
	margin-bottom: 2ex;
	padding-bottom: 0;
}

.post-meta {
	position: relative;
	margin-left: auto;
	margin-right: 0pt;
	display: block;
	font-size: 80%;
}

div#logo {
	display: block;
	position: absolute;
	bottom: 10pt;
	padding: 4pt;
}

#logo a {
	margin: 0;
	font-size: 200%;
	font-weight: 600;
	display: inline-block;
	text-decoration: none;
}

#logo a {
	color: white;
}

#taginfo {
	width: 70%;
	max-width: 19cm;
	border-left: 4pt solid white;
	padding-left: 1ex;
	margin-bottom: 1ex;
	font-family: serif;
	font-style: italic;
}

.feedlink {
	margin-left: 2ex;
}

hr.docutils {
	width: 3cm;
	margin: 5mm auto 1mm auto;
}

img.mainlogo {
	width: 70pt;
	display: inline-block;
	margin-right: 20pt;
}

nav {
	position: absolute;
	top: 4pt;
	right: 4pt;
	z-index: 150;
	padding: 1ex;
	margin: 0.5ex;
	width: 18%;
	min-width: 150pt;
	background-color: rgba(160,208,160,0.9);
	box-shadow: -3pt 3pt rgba(50, 50, 50, 0.5);
	border-radius: 4pt;
	color: black;
}

nav:hover {
	z-index: 300;
}

.widget-title {
	font-weight: bold;
	background-color: #353;
	color: white;
	margin: 2pt;
	padding: 4pt 2pt;
	text-align:center;
	border-radius: 4pt;
}

.widget-title a {
	color: white;
	border-bottom: 0.5pt solid #6a6;
}

.widget-title a:hover {
	color: #ccc;
  transition:all .2s ease-in-out;
}

.katlist li, .tagcloud li {
	margin: 0 3pt;
}

ul.horizontal {
    display:table-row;
    list-style-type: none;
}

ul.horizontal li {
    display: table-cell;
    padding-right: 1ex;
}

.flowing {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	list-style-type: none;
	justify-content: space-evenly;
}

.flowing li {
	display: block;
	overflow: hidden;
	position: relative;
	margin: 0;
}

.article-list {
	position: relative;
	z-index: 200;
}

.article-list li {
	margin-bottom: 3ex;
}

.summary {
	position: relative;
	z-index: 1;
}

.hentry footer {
	position: absolute;
	z-index: 40;
	background-color: white;
	right: 0pt;
	bottom: 0pt;
}

.content-archive {
	background-color: rgba(240,255,240,0.8);
	color: black;
	margin: 0 0 3ex 0;
	padding: 1ex;
}

li.tag-1 {
    font-size: 110%;
}

li.tag-2 {
  font-size: 105%;
}

li.tag-3 {
  font-size: 95%;
}

li.tag-4 {
  font-size: 90%;
}

li.tag-5 {
  font-size: 80%;
}

div.line-block {
	padding: 0.2ex 2pt 0.2ex 4em;
	font-style: italic;
}

blockquote.pull-quote {
	hyphens: auto;
	-webkit-hyphens: auto;
	margin-left: 0em;
	margin-top: 0px;
	font-size: 92%;
	padding: 0.2ex 2pt 0.2ex 4em;
	background-color: #EEEEEE;
	background-image:url(/theme/image/quotation.png);
	background-position: top left;
	background-repeat: no-repeat;
}

audio {
	width: 100%;
}

.transcript {
	background-color: #EEEEEE;
	font-size: 92%;
	padding: 0.2ex 2em 0.2ex 2em;
}

.widget-wrapper .widget-body {
	display: none;
}

.widget-wrapper:hover .widget-body {
	display: block;
}

table.docutils {
	empty-cells: show;
	border-spacing: 0pt;
	border-collapse: collapse;
	border: 1pt solid #999999;
}	

table.docutils td {
	padding: 2pt 1ex;
}

table.docutils tr:last-child td {
	padding-bottom: 1ex;
}

table.field-list {
	border: none;
}

/* BEGIN Colors */

nav, #post, #pagebody, .posts {
	color: black;
}

nav a, #post a, .posts a, #pagebody a {
    color: #414abe;
    cursor:pointer;
    text-decoration:none;
    transition:all .2s ease-in-out;
}

nav a:hover, #post a:hover {
    color: #414aff;
    text-decoration:underline;
    transition:all .2s ease-in-out;
}

#logo a:hover {
	color: #ccccff;
	text-decoration: none;
}

a {
    color: #ccc;
}


#main-footer a:hover {
    color: #eee;
    text-decoration: underline;
}
.font-small {
    font-size: .9em;
}
/* END Colors */


/* Einzelne Elemente stylen */

p.paginator {
	font-size: 170%;
	text-align: center;
	color: #ccc;
}

.paginator a {
	color: white;
}

img.full {
	width: 100%;
}

.full object {
	width: 100%;
}

table.footnote {
	border-style: none;
}

table.footnote:first-of-type td:first-of-type {
	margin-top: 4ex;
	border-top: 1pt solid black;
}


table.footnote:first-of-type td {
	padding-top: 1.5ex;
}

table.footnote {
	margin-top: 1ex;
	font-size: 85%;
}

a.footnote-reference, a.fn-backref {
	text-decoration: none;
	position: relative;
	font-size: 70%;
	bottom: 4pt;
}

table.footnote:target {
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 2em;
  background: #FFF;
  box-shadow: 0 0 3em 3em #FFF;
  width: 100%;
  max-height: 25%;
}

table.footnote:target tbody {
	display: block;
	max-width: 16cm;
}

a.morelink {
	display: block;
	font-size: 25pt;
	font-weight: bold;
	background: #eef;
	padding: 2pt 3pt 2pt 4pt;
	border: 1pt solid #bbb;
	border-radius: 6pt 0pt 0pt 0pt;
}

a.morelink:hover {
	color:
}

.caption {
	font-style: italic;
	font-size: 90%;
	text-align: right;
}

div.dekofig {
	max-width: 6cm;
	float: right;
	margin-left: 5mm;
	background-color:
}

div.dekofig .caption {
	font-size: 80%;
}

div.dekofig img {
	width: 100%;
}

div.aside {
	width: 50%;
	max-width: 10cm;
	float: right;
	margin-left: 5mm;
}

div.aside img {
	width: 100%;
}

div.centerfig {
	width: 100%;
}

div.centerfig img {
	display: block;
	margin: 3pt auto;
	max-width: 100%;
}

div.centerfig object {
	display: block;
	margin: 3pt auto;
	max-width: 100%;
	width: 100%!important;
	height: auto!important;
}


p#user-message {
	font-family: monospace;
	margin: 2ex 2ex;
}

p.attribution {
	text-align:right;
	font-style: italic;
}

p.citedby {
	margin-top: 0.7cm;
	text-align: right;
	font-style: italic;
	font-size: 85%;
}

span.citedlink {
	white-space: nowrap;
	padding: 0 0.5rem;
}

/************ Stile für Einzelrollen */

.kopfzahl {
	display: inline-block;
	background-color: #ffffaa;
	color: #000033;
}

.kopfzahl:before {
	content: "➳";
}

.original-container > * {
	display: none;
}

.original-header:hover ~ * {
	display: block;
	padding: 0.2ex 2pt 0.2ex 4em;
	margin-top: 0;
	margin-right: 0;
	margin-left: 5%;
	background-color: white;
	background-image:url(/theme/image/quotation.png);
	background-position: top left;
	background-repeat: no-repeat;
	font-size: 92%;
	text-align: right;
}

.original-header:hover {
	background-color: white;
	color: black;
	margin-left: 5%;
	margin-bottom: 0;
}

.original-container .original-header {
	display:block;
	text-align: right;
	font-style: italic;
  color: #414abe;
}

div.parallel {
  display: flex;
  flex-flow: row nowrap;
  width: 100%;
}

.parallel > p {
	width: 48%;
  padding: 0.5rem;
}

.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.broken-out {
	background-color: #ded;
	color: black;
	padding: 1ex 0pt;
}

.broken-out a {
	color: blue;
	text-decoration: none;
	font-weight: bold;
}

.broken-out a:hover {
	text-decoration: underline;
	color: blue;
}

blockquote.display-pull {
	text-align: right;
	font-style: italic;
	font-size: 120%;
	width: 28%;
	float: right;
	position: relative;
	padding: 0.5ex;
	border-top: 1pt solid #aaa;
	margin: 4ex 0 0.5ex 0.5ex;
}

.toc ul {
  list-style-type: none;
  padding-left: 0px;
  font-size: 80%;
  border-top: 1pt dotted #aaa;
  border-bottom: 1pt dotted #aaa;
  margin: 2em 0;
  padding-bottom: 2pt;
}

.toc li {
  display: inline;
  padding: 0 2ex;
}

.toc li:before {
	content: '•';
	position: relative;
	left: -2.4ex;
}

.toc li:first-child {
	padding-left: 0pt;
}

.toc li:first-child:before {
	content: '';
}

p.redax {
	padding-left: 1rem;
	border-left: 3pt solid grey;
	font-style: italic;
}

div.footnote-closer {
	display: none;
}

:target div.footnote-closer {
	display: block;
	position: absolute;
	top: -14pt;
	right: 6pt;
	font-size: 17pt;
  cursor:pointer;
}

/* Feedback form */
#feedback-form {
	display: block;
	width: 70%;
	background-color: #e0e0d5;
	border-left: 1% solid #e0e0d5;
	border-right: 1% solid #e0e0d5;
	padding: 0.5ex 4% 0.5ex 4%;
	margin: 3ex auto 1ex auto;
}

#feedback-form h1 {
	font-size: 16pt;
}

#feedback-form label {
	display: block;
	font-style: italic;
}

.feedback-sender {
	width: 90%;
	margin-left: 10%;
}

.feedback-message {
	width: 90%;
	margin-left: 10%;
}

div.noncc {
	padding-right: 75px;
	margin: 8pt 0 8pt 0;
	border-top: 3pt solid #cc9999;
	border-bottom: 3pt solid #cc9999;
	background-image: url(/theme/image/non-cc0.png);
	background-repeat: repeat-y;
	background-position-x: right;
}

p.topic-title {
	font-size: 140%;
	font-weight: bold;
}

/* Feedback items */

div.feedback {
	width: 95%;
	margin: 1rem 0pt 0.5rem auto;
	border-radius: 6pt 0pt 6pt 0pt;
	border: 1pt solid #335500;

}

.feedback-header {
	margin: 0pt;
	background: #335500;
	color: white;
	padding: 3pt 4pt 4pt 4pt;
	border-radius: 6pt 0pt 0pt 0pt;
}

.feedback p {
	padding: 4pt;
}


/* Additions */

div.addition {
	border-left: 2pt solid #ccc;
	padding-left: 4pt;
}

.addition-header {
	font-weight: bold;
}

/* Recommendations */

#picks {
	width: 70%;
	margin: 1em auto 1em auto;
	padding: 2pt 1ex 5pt 1ex;
}

#picks h2 {
	text-align: center;
	font-size: 130%;
	margin: 0;
}

#picks li {
	text-align: center;
	background-color: #efe;
	padding: 1ex;
	border-radius: 1ex;
}

/* Burger menu management */
label.hamburger { display: none;}
input.hamburger { display: none;}

/* Per-media */
@media(max-width: 14cm) {
	#burger-content {
		display: none;
		font-size: 150%;
	}

	nav {
		text-align: right;
		background-color: rgba(160,208,160,0.9);
		border-color: transparent;
		box-shadow: none;
		min-width: 1em;
		width: auto;
		z-index: 300;
	}

	label.hamburger {
		display: inline-block;
		font-size: 150%;
		font-weight: bold;
	}

  nav label {
  	position: relative;
    display: block;
    text-align: right;
    color: white;
    font-style: normal;
    font-size: 1em;
    padding: 0.3em;
  }

  #sidebar {
  	margin: 0pt;
  	padding: 1ex;
  }

  .discardable, img.mainlogo, div.dekofig {
  	display: none;
  }

	div.aside {
		width: 100%;
		float: none;
		margin-bottom: 5mm;
	}

  input.hamburger:checked ~ #burger-content {
  	display: block;
		background-color: rgba(160,208,160,0.9);
		width: 100%;
  }

  #post {
  	width: 90%;
  	margin: 2pt auto;
  }

	header#main-header {
		height: 75pt;
		background-size: auto 75pt;
	}

	.widget-wrapper .widget-body {
		display: block;
	}

		body, html {
		margin: 0;
		padding: 0;
		width: 100%;
	}

	section#post {
		width: auto;
		padding: 5pt;
	}

	header#main-header, footer#main-footer {
		padding: 0
	}
}

@media(min-width: 28cm) {
	aside#feedback-form {
		position: fixed;
		right: 0.5cm;
		bottom: 2cm;
		width: 9cm;
		border: none;
		margin: none;
		padding: 1ex 1em 1ex 1em;
	}
}
