html, body, div, span, object, iframe,
	h1, h2, h3, h4, h5, h6, p, blockquote, pre,
	abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
	small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td,
	article, aside, canvas, details, figcaption, figure,
	footer, header, hgroup, menu, nav, section, summary,
	time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}


:root {
	--font-stack: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	--iconscale: 1;
	--pur-color: #704e91;
	--doctrine-color: #01915d;

	--djo-blue-dark: #036;
	--djo-blue-medium: #7890a8;
	--djo-blue-light: #8198b5;

	--pale-blue: #eff5f7;

	--background-ausserkraft: #8a2a12;
	--background-kuenftigesrecht: #00366c;
	--background-ahnhaengig: #00366c;
	--background-nichtig: #9c3c25;

	--color-suchanfragen: papayawhip;
	--color-notizen: #ccfaff;

	--body-background-color: #eee;
	--font-color: #333;
	--font-color-medium: #444;
	--font-color-light: #666;
	--font-color-disabled: #aaa;
	--link-color: #c30;
	--link-hover-color: #036;

	--border-color: #eee;
	--border-color-light: #f4f4f4;
	--border-color-lighter: #f9f9f9;
	--border-color-strong: #ddd;
	--border-color-dark: #bbb;
	--border-color-checkbox: rgba(255, 255, 255, .8);
	--background-color: rgb(255, 255, 255);
	--background-color-light: #f9f9f9;
	--background-color-lighter: #f4f4f4;
	--background-color-light-blue: #d8e0e8;
	--background-color-light-medium: #eee;
	--background-color-medium: #ddd;
	--background-color-disabled: #ccc;
	--background-color-dark: #aaa;
	--content-border-color: #fff;
	--content-header-background-dark: var(--djo-blue-medium);
	--content-header-background: #d8e0e8;
	--content-header-background-medium: #eff5f7;
	--content-header-background-light: #f3f5f7;
	--content-fadeout-from: rgba(255, 255, 255, 0);
	--content-fadeout-to: var(--background-color);
	--note-background: #ffc;
	--note-background: #fdffd5; /* weniger kraeftig */
	--zettel-background-color: var(--background-color-light);
	--footer-background-color: linear-gradient(to bottom, #fefefe 0%, #eeeeee 100%);
	--footer-border-color: #fff;
	--footer-color: #666;

	--suchfeld-background-color: var(--background-color);
	--suchfeld-border-color: var(--border-color);
	--suchfeld-button-background-color: var(--background-color-light-medium);

	--menu-success-background: #f2ffea;
	--menu-success-border: #cdddb2;
	--menu-warning-background: #fffeea;
	--menu-warning-border: #ece190;

	--background-info-green: #f2ffea;
	--border-info-green: #cdddb2;
	--background-info-yellow: #fffeea;
	--border-info-yellow: #ece190;
	--background-info-red: #ffccb8;
	--border-info-red: #ddb2b2;

	--background-flashing: lemonchiffon;
	--shadow-color-light: rgba(215, 215, 215, 1);
	--text-shadow-color-light: rgba(255, 255, 255, 0.9);
	--img-background: transparent;
}

html {
	/*-webkit-tap-highlight-color: rgba(255,0,255,0);*/
	/*tap-highlight-color: rgba(0,255,255,0);*/
	background-color: #fff;
	-ms-text-size-adjust:none;
	-webkit-text-size-adjust: none;
	scroll-padding-top: 45px;
}
@supports not (scroll-padding-top: 45px) {
	:target::before {
		content: "";
		display: block;
		height: 45px; /* fixed header height*/
		margin: -45px 0 0; /* negative fixed header height */
		visibility: hidden;
	}
}

body {
	background-color: #fff;
	color: #333;
	font-family: var(--font-stack);
	/*font-size: .95em;*/
	font-size: 0.875rem;
	line-height: 1.6rem;
	margin: 0;
	padding: 0 0 60px 0;
	min-height: 410px;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

@media only screen and (-moz-min-device-pixel-ratio: 2),
only screen and (-o-min-device-pixel-ratio: 2/1),
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {
	body {
		font-size: .95rem;
	}
}

body.noscroll {
	overflow: hidden;
}

label.checkbox {
	display: block;
	padding-left: 25px;
}
	label.checkbox input[type=checkbox] {
		position: absolute;
		left: 0px;
	}

#mobildiv {
	background-size: 40px 12px;
	background: transparent url(anzeige_horizontal.svg) no-repeat 0 0;
	display: block;
	margin: 0 auto 10px auto;
	height: 100px;
	padding-top: 13px;
	min-width: 320px;
	position: absolute;
	top: 62px;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 3;
}

#mobildiv.inline {
	left: auto;
	margin-left: -15px;
	margin-top: 20px;
	position: relative;
	top: auto;
	transform: unset;
}
#mobildiv.pending {
	padding: 0;
	height: unset;
}

.offene_seite {
	margin: 20px 20px 40px 20px;
}

.offene_seite .container {
	background: var(--background-color);
	max-width: 600px;
}

.ersterkasten_inhalt {
	min-height: 130px;
}

/*#gesetze, #alpha, .verweise {*/
.kasteninhalt, .ersterkasten_inhalt, .verweise {
	padding: 0 calc( env(safe-area-inset-right) + 15px ) 30px calc( env(safe-area-inset-left) + 15px );
	position: relative;
}

.center_alpha_content {
	align-items: center;
	box-sizing: border-box;
	display: flex;
	height: 100%;
	justify-content: center;
	min-height: 150px;
}

#pfeileunten {
	display: none;
}

.content_inner {
	line-height: 1.6em;
}

.banderole {
	background: #036;
	color: #fff;
	font-weight: bold;
	line-height: 1.3em;
	padding: 2px;
	text-align: center;
	letter-spacing:.1em;
}

.banderole_ausserkraft, .banderole_altefassung, .banderole_nicht_in_kraft, .banderole_kuenftigesrecht, .banderole_nichtig, .banderole_nur_intern {
	background: #820;
}

.banderole_anhaengig {
	background: #036;
}

.banderole_teilnichtig {
	background: #d77600;
}

.banderole_orange {
	background: #ec2;
}

.gesetzestext {
	min-height: 60px;
}

#gesetze_aenderungstabelle, .link_aenderungstabelle {
	font-size: .9em;
	margin: 25px 0 0 0;
}

.link_aenderungstabelle {
	background-color: #eee;
	border-radius: 3px;
	border: 1px solid #eee !important;
	color: #222 !important;
	display: inline-block;
	padding: 3px 26px 3px 5px;
	position: relative;
}
	.link_aenderungstabelle:after {
		content: "";
		position: absolute;
		right: 9px;
		top: 10px;
		display: inline-block;
		border-right: 3px solid #bbb;
		border-bottom: 3px solid #bbb;
		width: 6px; height: 6px;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
	}
	.link_aenderungstabelle:hover {
		background-color: #f9f9f9;
	}
#gesetze_aenderungstabelle {
	background-color: #f9f9f9;
	display: none;
	width: 100%;
}
	#gesetze_aenderungstabelle tr:nth-child(odd) {
		background: #eee;
	}

	#gesetze_aenderungstabelle tr th {
		display: none;
	}
	#gesetze_aenderungstabelle thead th {
		background-color: #d8e0e8;
		display: none;
		text-align: left;
	}
	#gesetze_aenderungstabelle thead th:first-child, #gesetze_aenderungstabelle thead th:nth-child(2), #gesetze_aenderungstabelle tr td:first-child, #gesetze_aenderungstabelle tr td:nth-child(2) {
		display: table-cell;
	}
	.mouseover_hinweis {
		background-color: #e9e9e9;
		border: 1px solid #ddd;
		display: none;
		left: 0;
		padding: 3px 6px;
		position: absolute;
		top: 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

.drucksache {
	border-left: 25px solid #7890a8;
	background-color: #eee;
	margin-bottom: 5px;
	margin-left: 0px;
	margin-top: 0px;
	padding-bottom: 15px;
	padding-left: 15px;
	padding-top: 10px;
}
.banner_drucksache {
	color: #fff;
	font-size: 16px;
	left: -57px;
	margin-top: -10px;
	position: absolute;
	top: 50%;
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

.gesetzgebung_pfeil, .gesetzgebung_pfeil_plural {
	background: rgba(0,0,0,0) url(gesetzgebung_pfeil.svg) no-repeat 50% 0;
	background-size: 254px 53px;
	height: 55px;
	margin-top: 5px;
}
	.gesetzgebung_pfeil_plural {
		background-image: url(/jcg/gesetzgebung_pfeil_plural.svg);
	}

.hinweistext {
	font-style: italic;
	font-size: 0.9em;
	margin-top: 20px;
}

.hinweistext span a, .hinweistext span a:visited {
	background-color: #7890a8;
	border-radius: 3px;
	font-size: .9em;
	font-style: normal;
	padding: 1px 3px;
	border: 0;
	color: #fff;
	white-space: nowrap;
}
	.hinweistext span a:hover, .hinweistext span a:active {
		color: #fff !important;
		background-color: #2E5071;
	}

/*
.gesetzestext, .hinweistext {
	padding: 0px 10px;
}
*/

.hinweiszeile {
	background-color: #fdffd5;
	border-top: 1px solid #eee;
	font-size: .9em;
	padding: 5px;
	text-align: center;
}

#gesetzestext table, .gesetzestexte table {
	margin: 0px 0px 10px 0px;
}
#dejure table.stvo tr:first-child {
	display: none;
}
#dejure table.stvo tr td {
	float: left;
	width: 100%;
	border-bottom: 0;
}
#dejure table.stvo td {
	vertical-align: top;
	padding: 3px;
	border: 0;
	border-bottom: 1px solid #ccc;
}
#dejure table.stvo td:first-child {
	font-weight: bold;
	text-align: center;
	background-color: #f4f4f4;
	border-bottom: 1px solid #ddd;
}
.bold {
	font-weight: bold;
}

a:link, a:visited {
	color: #c30;
	text-decoration: none;
}

a:hover, a:active, .active {
	color: #036;
}

b, strong {
	font-weight: 600;
}

i {
	font-style: italic;
}

sup {
	vertical-align: super;
}
sub {
	vertical-align: sub;
}

h1, h2, h3, h4, h5, a.weiterlink {
	font-family: var(--font-stack);
}

h1 {
	font-size: 1.9em;
	line-height: 1.2em;
	font-weight: bold;
	margin-bottom: .8em;
}

h2 {
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.6em;
	margin-bottom: 10px;
	overflow: hidden;
	text-overflow: ellipsis;
}

#content h2.top_klein {
	font-size: 1.4em;
}

h2 span {
	display: block;
	font-weight: normal;
	font-size: 0.75em;
	vertical-align: middle;
}

#content h2.sub {
	background-color: #d8e0e8;
	/*border-top: 1px solid #7f98b2;*/
	font-weight: normal;
	padding: 4px 15px;
	position: relative;
	text-align: center;
}

#content h2.gesetzgebung {
	background-color: #7890a8;
	color: #fff;
}
	#content h2.gesetzgebung td {
		border-color: #d8e0e8;
	}

.gesetzesgliederung {
	font-size: .9em;
}

h3, .normueberschrift {
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.3em;
	margin-bottom: 10px;
	margin-top: 25px;
	color: #222;
}

h4 {
	border-bottom: 1px solid #ddd;
	font-size: 1.1em;
	line-height: 1.8em;
	margin: 20px 0 10px 0;
}

h5 {
	font-weight: bold;
	margin: 10px 0 5px 0;
}

h6 {
	margin: 0;
	font-size: 1em;
	font-weight: bold;
}

a.weiterlink {
	color: #036;
}

a.weiterlink:hover {
	text-decoration: none;
}

td, th {
	padding: 0.4em 0.4em 0.4em 0.6em;
	padding: 0.2em;
	vertical-align: top;
}

th {
	font-weight: bold;
}

blockquote {
	margin-left: 1.5em;
}

div.links {
	font-weight: bold;
	margin-top: 10px;
}

div.rechts {
	margin-bottom: 20px;
}

div.rechts, div.links {
	line-height: 25px;
}

#vernetzungskasten ul li {
	padding-bottom: 5px;
}

.favicon {
	background-image: url(sprite_favicon.png);
	background-position: 0 0;
	background-size: 200px;
	display: block;
	float: left;
	height: 16px;
	margin: 5px 4px 0 0;
	width: 16px;
}
	.favicon_small {
		background-size: 16px;
	}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
/*@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {*/
	.favicon {
		background-image: url(sprite_faviconx3.png);
	}
}
.favicon_dejure, .favicon_dejure_org {
	background-position: -20px 0;
}
.favicon_zeit_de {
	background-position: -40px 0;
}
.favicon_lto_de {
	background-position: -60px 0;
}
.favicon_faz_net, .favicon_plus_faz_net {
	background-position: -80px 0;
}
.favicon_spiegel_de {
	background-position: -100px 0;
}
.favicon_heise_de {
	background-position: -120px 0;
}
.favicon_beck-blog {
	background-position: -140px 0;
}
.favicon_lawblog {
	background-position: -160px 0;
}
.favicon_tagesschau_de {
	background-position: -180px 0;
}
.favicon_taz_de {
	background-position: 0 -20px;
}
.favicon_blog_burhoff_de {
	background-position: -20px -20px;
}
.favicon_SZ, .favicon_sueddeutsche_de {
	background-position: -40px -20px;
}
.favicon_MIR {
	background-position: -60px -20px;
}
.favicon_dpa {
	background-position: -80px -20px;
}
.favicon_internet-law_de {
	background-position: -100px -20px;
}
.favicon_verfassungsblog_de {
	background-position: -120px -20px;
}
.favicon_juris_de {
	background-position: -140px -20px;
}
.favicon_bverfg_de, .favicon_bundesgerichtshof_de {
	background-position: -160px -20px;
}
.favicon_strafakte_de {
	background-position: -180px -20px;
}
.favicon_kress_de {
	background-position: 0 -40px;
}
.favicon_beck, .favicon_beck-aktuell {
	background-position: -20px -40px;
}
.favicon_haufe {
	background-position: -40px -40px;
}
.favicon_blog_delegibus_com, .favicon_De-legibus-Blog {
	background-position: -60px -40px;
}
.favicon_urheberrecht_org {
	background-position: -80px -40px;
}
.favicon_Telemedicus {
	background-position: -100px -40px;
}

.loading {
	/*
	background: transparent url('laden.gif') 50% 50% no-repeat;
	height: 25px;
	*/
	position: relative;
}
.loading::after {
	content: "";
	position: absolute;
	width: 3rem;
	height: 3rem;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border: .5rem solid transparent;
	border-top-color: rgba(0, 0, 0, .4);
	border-radius: 50%;
	animation: button-loading-spinner 1s ease infinite;
}

/* Button Loading Spinner */
/*
button:active {
	background: #007a63;
}
*/
.button__text {
	transition: all 0.2s;
}
.button--loading .button__text {
	opacity: .5;
}
.button--loading::after {
	content: "";
	position: absolute;
	width: 16px;
	height: 16px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border: 4px solid transparent;
	border-top-color: #ffffff;
	border-radius: 50%;
	animation: button-loading-spinner 1s ease infinite;
	opacity: .8;
}
@keyframes button-loading-spinner {
	from {
		transform: rotate(0turn);
	}

	to {
		transform: rotate(1turn);
	}
}

p {
	padding-bottom: 15px;
}

small {
	font-size: .9em;
}

.headgesetz, .kastenueberschrift {
	background-color: #d8e0e8;
	/*border-top: 1px solid #7f98b2;*/
	margin: 8px 0 1px 0;
	padding: 5px 10px;
	position: relative;
	text-align: center;
}
.headgesetz.fix-headgesetz {
	left: 0;
	position: fixed;
	top: 42px;
	right: 0;
	z-index: 2;
}
.headgesetz {
	margin-top: 0;
}

.bgbl .headgesetz {
	background-color: #7890a8;
}

.headgesetz.ajax_offen {
	height: 350px;
}
.headgesetz.header_dunkel {
	background-color: var(--content-header-background-dark);
}
#content .headgesetz.header_dunkel h2 {
	background-color: transparent
}

.headgesetz h2 {
	border-top: 0;
	font-size: 1.5em;
	line-height: 1.4em;
	margin: 0;
	padding: 0;
}

h2 span {
	font: normal 0.9em;
	vertical-align: middle;
}

.headgesetz h2 span {
	font-size: 0.7em;
	line-height: 1.4em;
	display: block;
	margin: 0.7em 0;
}

.gesamtgliederung_toggle {
	background: #d8e0e8 url(list_filled.svg) no-repeat 50%;
	color: #222;
	cursor: pointer;
	display: none;
	position: absolute;
	top: 0;
	right: 10px;
	width: 20px;
	height: 20px;
	background-size: 24px;
	padding: 10px;
	z-index: 4;
}

.gesamtgliederung_toggle span {
	display: none;
}

.headgesetz:focus .gesamtgliederung_toggle, .headgesetz:hover .gesamtgliederung_toggle {
	display: block;
}

#gesamtgliederung_div {
	display: none;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
	/*width: 718px;*/
	background-color: #d8e0e8;
	text-align: left;
	overflow: auto;
	padding: 10px 10px 20px 10px;
	right: 0;
}
.headgesetz.ajax_offen #gesamtgliederung_div {
	display: block;
}

#gesamtgliederung_div h2 {
	font-weight: normal;
	letter-spacing: 2px;
	border-bottom: 1px solid #7f98b2;
	margin-right: 10px;
	margin-bottom: 5px;
}

.gliederung_set {
	background-color: #fff;
}

table.gesetzesgliederung {
	border-collapse: collapse;
	margin: 3px auto 0 auto;
}

.gesetzesgliederung td {
	font: 1em/1.3em var(--font-stack);
	border-top: 1px solid #7f98b2;
	padding: 3px 2px 3px 2px;
}

.gesetzesname {
	font-size: 1.3em;
	width: auto;
}

.pfeileoben {
	text-align: center;
	margin: 15px 0;
}

a.pfeil:link, a.pfeil:visited {
	display: none;
	text-decoration: none;
	border: 0;
	height: 20px;
	width: 20px;
}

a.pfeil:hover {
	text-decoration: none;
	border: 0;
}

.pfeil_unten span {
	margin: 0 15px;
	display: none;
}

.pfeil {
	float: right;
}

.hinweis {
	font-size: .9em;
}

.mehr {
	margin: 10px 20px 0 0;
	text-align: right;
}

.mehr span {
	visibility: hidden;
}

a.fea_mehr {
	display: block;
	width: 48px;
	height: 16px;
	background: url(mehr.gif) no-repeat;
	border: 0;
	float: right;
	margin: 0;
}

.entscheidungen, .notiz {
	border-left: 5px solid #d8e0e8;
	padding: 10px 0 0 10px;
	margin: 5px 0 20px 0;
}

.notiz {
	padding: 10px;
}

.notiz_top {
	padding-top: 0;
	margin-bottom: 0;
	padding-bottom: 0;
}

.notiz_top p {
	margin-bottom: 0;
}

.rechtsprechung_hinweis, blockquote.hinweis {
	border: 1px dotted #ddd;
	background: transparent url(hinweis.gif) 4px center no-repeat;
	background-size: 16px 16px;
	margin: 6px 0 0 10px;
	min-height: 34px;
	padding-left: 24px;
}

blockquote.hinweis {
	margin-top: 0px;
	margin-bottom: 10px;
	padding-top: 10px;
	padding-right: 15px;
	background-position: 4px 10px;
}

.wortfeld {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 0 .6em;
	padding: 0;
	overflow-x: auto;
}
.wortfeld .appendix {
	color: rgba(0, 0, 0, .35);
}
.wortfeld .wort, ul.wortfeld li {
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	border-radius: 4px;
	color: rgba(0, 0, 0, .7);
	cursor: pointer;
	line-height: 1;
	text-align: center;
	padding: 8px 12px;
	margin: 8px 8px 0 0;
	transition: all 0.1s ease-in-out;
	white-space: nowrap;
	list-style: none;
	list-style: none;
}
.wortfeld .wort:hover, ul.wortfeld li:hover {
	background-color: #f4f4f4;
}

.hinweislink {
	/*
	background: transparent url(hinweis.gif) center center no-repeat;
	background-size: 16px;
	padding: 2px 6px;
	*/

	background: #036;
	border-radius: 50%;
	color: #fff !important;
	font-weight: bold;
	line-height: 20px;
	height: 20px;
	margin-top: 4px;
	position: relative;
	text-align: center;
	width: 20px;
}
.hinweislink:before {
	content: "?";
	position: absolute;
	left: 0;
	right: 0;
}

.ebenentiefe h6 {
	font-size: 1em;
	line-height: 1.5em;
	padding-top: 20px;
	padding-bottom: 2px;
}

.ebenentiefe .ebenentiefe h6 {
	font-size: .9em;
	padding-top: 10px;
}

.ebenentiefe {
	margin-left: 30px;
}
table.ebenentiefe {
	border-collapse: collapse;
}

fieldset, img {
	border: 0;
}

#main {
	background-color: #fff;
	padding-top: 62px;
	padding-bottom: calc( env(safe-area-inset-bottom) + 44px );
}

#head {
	background-color: #036;
	border-top: 4px solid #8198b5;
	min-height: 38px;
	left: 0;
	margin-bottom: 20px;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 96;
	-moz-box-shadow:    0px 1px 5px 3px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0px 1px 5px 3px rgba(0,0,0,0.3);
	box-shadow:         0px 1px 5px 3px rgba(0,0,0,0.3);
}

#logo {
	background: #036 url(logo.svg) left top no-repeat;
	background-size: 141px 38px;
	border: 0;
	display: block;
	height: 38px;
	flex-grow: 0;
	flex-shrink: 0;
	text-indent: -99999px;
	width: 141px;
	-webkit-transition: width 0.2s ease-in-out;
	transition: width 0.2s ease-in-out;
}
.smaller #logo {
	opacity: .1;
	width: 0;
}

.headstand {
	display: none;
	font-size: 0.75em;
	margin-bottom: 5px;
}

a.button:link, a.button:visited {
	background-color: #fff;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #ddd;
	display: block;
	padding: 5px 10px;
}

a.button:hover {
	background-color: #d8e0e8;
	text-decoration: none;
}

a.button_gelb:link {
	background-color: #ffc;
}

.button {
	background-color: #eee;
	border: 1px solid #eee;
	border-color: #eee #ddd #ddd #eee;
	color: #222;
	cursor: pointer;
	font-size: 0.9em;
	vertical-align: middle;
}

input {
	background-color: #fff;
	font-size: 1em;
	border: 1px solid #ddd;
	-webkit-border-radius: 0;
	max-width: 100%;
}
input, textarea, button {
	font-family: var(--font-stack);
	font-size: 1em;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}
input[type=submit] {
	-webkit-appearance: none;
}
input[type=search] {
	-webkit-appearance: textfield;
}
input[type=checkbox],input[type=radio]{
	vertical-align: middle;
	position: relative;
	bottom: 1px;
}
/*
input[type=radio] {
	bottom: 2px;
}
*/

/* {{{ RADIOS & CHECKBOXES STYLES */
/* https://gist.github.com/dciccale/1367918 */

/* base styles */
input[type="radio"],
input[type="checkbox"] {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	height: 1.2em;
	width: 1.2em;
	min-width: 1.2em;
	vertical-align: middle;
	/*margin: 0 0.4em 0.4em 0;*/
	border: 1px solid rgba(255, 255, 255, .8);
	background: #d8e0e8;
	/*background: #8198b5;*/
	-moz-appearance: none;
	-webkit-appearance: none;
}

/* border radius for radio*/
input[type="radio"] {
	-webkit-border-radius:100%;
	border-radius:100%;
}

/* border radius for checkbox */
input[type="checkbox"] {
	-webkit-border-radius:2px;
	border-radius:2px;
}

/* hover state */
input[type="radio"]:not(:disabled):hover,
input[type="checkbox"]:not(:disabled):hover {
	border-color: rgba(0,0,0,0.1);
	/*box-shadow:inset 1px 1px 0 #fff, 0 0 4px rgba(0,0,0,0.1);*/
}

/* active state */
input[type="radio"]:active:not(:disabled),
input[type="checkbox"]:active:not(:disabled) {
	/*
	background: #036;
	box-shadow:inset 1px 1px 0 rgba(0,0,0,0.2), inset -1px -1px 0 rgba(255,255,255,0.6);
	border-color:rgba(0,0,0,0.5);
	*/
}

/* focus state */
input[type="radio"]:focus,
input[type="checkbox"]:focus {
	outline:none;
	/*
	box-shadow: 0 0 1px 2px rgba(0, 240, 255, 0.4);
	*/
}

/* input checked border color */
input[type="radio"]:checked,
input[type="checkbox"]:checked {
	/*
	border-color:rgba(0, 0, 0, 0.5)
	*/
	background: #8198b5;
}

/* radio checked */
input[type="radio"]:checked:before {
	display: block;
	height: 0.35em;
	width: 0.35em;
	position: relative;
	background: #fff;
	border-radius: 100%;
	content: '';
}

/* checkbox checked */
input[type="checkbox"]:checked:after {
	content: '';
	display: block;
	position: relative;
	margin-top: -0.2em;
	width: .25em;
	height: .45em;
	border: solid white;
	border-width: 0 .2em .2em 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	/*
	font-weight: bold;
	color: rgba(0, 0, 0, 0.5);
	content: '\2713';
	-webkit-margin-start: 0;
	margin-left: 2px;
	font-size: 0.9em;
	display: block;
	*/
}

/* checkbox half-checked */
input[type="checkbox"].halfchecked:after, input[type="checkbox"]:indeterminate:after {
	background-color: #fff;
	content: '';
	display: block;
	position: relative;
	width: .4em;
	height: .4em;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}

/* disabled input */
input:disabled {
	opacity: .6;
	box-shadow: none;
	background: rgba(0, 0, 0, 0.1);
	box-shadow:none;
}

/* style label for disabled input */
input:disabled + label {
	opacity: .6;
	cursor:default;
	-webkit-user-select: none;
}
/* }}} RADIOS & CHECKBOXES STYLES */

hr {
	height: 0;
	padding: 0;
	margin: 5px 0 10px 0;
	border: 0;
	border-top: 1px dotted #ddd;
}

ul, ol {
	margin: .5em 0 .5em .6em;
	padding-left: 1em;
}
ul {
	list-style: none;
	list-style-image: url(ul_list-style.png);
}

ul.block {
	margin: 0;
	padding: 0;
}

ul.block li {
	list-style-image: none;
}

li.no_list_style {
	list-style: none;
	list-style-image: none;
	margin-left: -12px;
}

.content_inner ul, #gesetze ul, .verweise ul {
	line-height: 1.6em;
	margin-right: 5px;
}
	.verweise > ul {
		margin-top: 20px;
	}

.content_inner li, .verweise li {
	padding-bottom: 1.2em;
}

.content_inner ul.nah li {
	padding-bottom: 0.6em;
}

dl {
	margin-left: 10px;
}

dd {
	margin-left: 0;
	padding-bottom: 10px;
}

.top_inner {
	padding: 10px;
}

span.paragraph {
	font-weight: bold;
	float: left;
	width: 42px;
	height: auto;
	margin: 0;
}

span.indent {
	display: block;
	float: left;
}

div.indent {
	margin-top: 15px;
	padding-left: 50px;
	padding-right: 20px;
	position: relative;
}

div.indent .icon {
	position: absolute;
	left: 5px;
}

.mobile_sidebar a, a.marker:link, a.marker:visited, .active, .none, .start, .inhalt, a.gesetzestext {
	color: #222;
	display: block;
	padding-left: 15px;
	margin-top: 6px;
	margin-bottom: 6px;
	background-repeat: no-repeat;
	border: 0;
}
.mobile_sidebar a {
	margin: 0;
}

.mobile_sidebar .active {
	border-left: 5px solid #d8e0e8;
	padding-left: 10px !important;
}

.pfeil_black {
	background: url(pfeile_sprite.gif) -238px -396px no-repeat;
}

#linkkasten a:link.active, #linkkasten a:visited.active {
	padding-left: 15px;
}

.aktuell .active, .aktuell a.active:link {
	color: #036;
}

.aktuell a.marker:hover, #neues_scroll a:hover {
	color: #036;
}
.aktuell a.marker:hover::before,
.aktuell .active::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .4em 0 .4em .7em;
	border-color: transparent transparent transparent #c30;
	position: absolute;
	left: 2px;
	top: 5px;
}

.aktuell span.floating::before, .aktuell a.active:has(span.floating)::before {
	display: none;
}

.start {
	background-image: url(pfeile_sprite.gif);
	background-position: 1px -196px;
}

.inhalt {
	background-image: url(pfeile_sprite.gif);
	background-position: 1px -396px;
}

#linkkasten .abstand_u {
	margin-bottom: 15px;
}

span.floating {
	width: 62px;
	padding: 0;
	margin: 0;
	padding-left: 6px;
	background-image: none;
}

.reihe {
	clear: both;
	margin-bottom: 2px;
	position: relative;
}

.reihe .marker {
	/*float: left;*/
}

#verlauf {
	background-color: #ffc;
	border-bottom: 1px solid #ddd;
	display: none;
	padding: 5px;
}

.ausgegraut {
	color: #999;
}

.clearable {
	background: #fff url(djof/djof_schliessen.png) no-repeat right -16px center;
	border: 1px solid #bbb;
	padding: 3px 20px 3px 4px;     /* Use the same right padding (20) in jQ! */
	transition: background 0.2s;
	width: 95%;
}
.clearable.x { /* (jQ) Show icon */
	background-position: right 5px center;
}
.clearable.onX {              /* (jQ) hover cursor style */
	cursor: pointer;
}
.clearable::-ms-clear { /* Remove IE default X */
	display: none;
	width: 0;
	height:0;
}

#content, #top_kasten {
	background-color: #fff;
	padding: 0;
	margin: 0;
}

#top, .top-placeholder, #swipetmp_top {
	background-color: #f9f9f9;
	border-top: 1px solid #eee;
	font-size: 0.9em;
	line-height: 1.4em;
	margin: 15px 0 0 0;
	position: relative;
	text-align: center;
	z-index: 2;
}

#ersterkasten {
	padding: 0;
	margin: 0;
}

#linkkasten a {
	display: block;
	width: 200px;
}

/*
#neues_scroll, #verlauf_inner {
	position: relative;
	max-height: 200px;
	overflow: auto;
}
*/

.zaehlung {
	float: left;
	width: 50px;
	font-size: 1em;
	font-weight: bold;
	text-align: center;
	padding: 5px 0;
	border-left: 5px solid #d8e0e8;
	background: #f3f5f7;
	position: relative;
	z-index: 3;
	margin-right: 5px;
}

.zaehlung .von {
	font-size: 1em;
	font-weight: normal;
}

.haupt, .vorspann, .entscheidungen {
	padding: 0px 12px 10px 0px;
	margin-top: 12px;
}

.haupt, .entscheidungen {
	border-bottom: 1px dotted #ddd;
	padding-bottom: 0px;
}

.entscheidungen {
	border-left: 5px solid #d8e0e8;
	padding: 10px 0 0 10px;
	margin: 20px 0;
}

.haupt {
	margin: 0 0 30px 0;
	position: relative;
	z-index: 3;
}

.seitenblaettern {
	margin-bottom: 25px;
}

#aktuell .seitenblaettern a:link, #aktuell .seitenblaettern a:visited {
	border: 1px solid #ddd;
}

#aktuell .seitenblaettern a:hover {
	color: #c30;
	border-color: #c30;
}

.seitenblaettern .nummern, .aktiveseite, .buchstaben {
	border: 1px solid #ddd;
}
.aktiveseite, .buchstaben {
	box-sizing: border-box;
	display: inline-block;
	margin-right: 4px;
	min-width: 24px;
	text-align: center;
}

div.seitenblaettern a, div.seitenblaettern span {
	margin: 10px 6px;
	padding: 5px 8px;
}

.aktiveseite, .buchstaben_aktiv {
	background: #c30;
	color: #fff;
}

.zettel_eingerueckt {
	margin-left: 30px;
	float: left;
}

.zettel_ausgerueckt {
	margin-left: -30px;
	float: left;
}

#derTooltip {
	position: absolute;
	left: 0;
	top: -44px;
	z-index: 99;
	padding-bottom: 10px;
	margin-bottom: 3px;
	background: transparent url(pfeil_tooltip.gif) left bottom no-repeat;
}

#derSuchtipp {
	position: absolute;
	left: 400px;
	top: 67px;
	z-index: 9;
	padding-top: 39px;
	margin-bottom: 3px;
	background: url(tipp-pfeil.gif) center top no-repeat;
}

#derTooltip div, #derSuchtip div {
	font-size: 0.75em;
	line-height: 1.2em;
	background: #fff;
	width: 320px;
	padding: 4px;
	color: #222;
	border: 1px solid #7f98b2;
	border-bottom: 0;
}

/* Fading Tooltips By Dustin Diaz*/
/*
body div#toolTip { position:absolute;z-index:1000;width:220px;background:#fff;border:2px double #fff;text-align:left;min-height:1em;-moz-border-radius:5px; border: 1px solid rgb(127, 152, 178)}
*/
body div#toolTip, #funchelper, #funchelper_gross {
	position:absolute;
	z-index: 1000;
	width: 220px;
	background-color: #fff;
	text-align:left;
	min-height:1em;
	border: 1px solid #7f98b2;
}
	#toolTip {
		line-height: 1.2em;
	}

body div#toolTip p { margin:0;padding:0;color:#222; }
body div#toolTip p em { display:block;margin-top:3px;color:#f60;font-style:normal;font-weight:bold; }
body div#toolTip p em span { font-weight:bold;color:#fff; }

.tooltip_oben {
	text-align: center;
	color: #036;
	font-size: .9em;
	padding: 2px;
}

.tooltip_unten {
	text-align: center;
	background-color: #d8e0e8;
	font-size: .75em;
	padding: 2px 3px;
}

.p_nachricht {
	margin-bottom: 1px;
}

.blue, .red, .green {
	color: #222;
	padding-left: 2px;
	padding-right: 2px;
}
.blue {
	background: #d8e0e8;
}

.blue_light {
	background: #edf6ff;
	background: #e3f1ff;
	background: #e6e8ec;
	background: #f3f5f7;
}

.nachrichten_kasten {
	padding: 10px;
}
.nachrichten_kasten .urteilszeile {
	color: #c30;
	display: block;
	margin-bottom: 4px;
}
.nachrichten_kasten .favicon {
	margin-top: 6px !important;
}
.nachrichten_kasten a:first-child {
	display: block;
	line-height: 1.7em;
}

.bgblue {
	background-color: #036;
}

.blue, .textblue {
	color: #036;
}

.green, .textgreen {
	color: #0a0;
}

.red, .textred {
	color: #a00;
}

.red_white {
	background-color: #a00;
	color: #fff;
	padding-left: 2px;
	padding-right: 2px;
}

.red_white_highlight {
	background-color: #c30;
	border-radius: 3px;
	color: #fff;
	font-size: .85em;
	font-weight: bold;
	padding: 1px 3px;
}

.green {
	background: #0a0;
}

.red {
	background: #efae8c;
}

.red_light {
	background: #f7efeb;
}

.resultinfo, .infogreen, .infored, .infoyellow {
	border: 1px solid #fff;
	margin: 10px 0;
	padding: 15px;
}
.resultinfo p:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.infogreen {
	background-color: #d6ffb8;
	background-color: #f2ffea;
	border-color: #afcc7f;
	border-color: #cdddb2;
}

.infored {
	background-color: #ffccb8;
	background-color: #fff5f5;
	border-color: #fd8a6b;
	border-color: #ddb2b2;
}

.infoyellow {
	background-color: #fffbb8;
	background-color: #fffeea;;
	border-color: #fdc51a;
	border-color: #ece190;
}

.alert {
	border: 1px solid transparent;
	border-radius: 4px;
	padding: 15px;
}
.alertgreen {
	background-color: #dff0d8;
	border-color: #d6e9c6;
	color: #3c763d;
}
.alertyellow {
	background-color: #fcf8e3;
	border-color: #faebcc;
	color: #8a6d3b;
}
.alertred {
	background-color: #f2dede;
	border-color: #ebccd1;
	color: #a94442;
}


.target_titel_anzeigen li {
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.titel_sichtbar li {
	margin-bottom: 10px;
}

/* Slider-Switch */
.switch-label {
	letter-spacing: 0;
	font-weight: normal;
}
.switch {
	display: inline-block;
	height: 16px;
	position: relative;
	top: 2px;
	width: 28px;
}
.switch input {
	display: none;
}
.switch-slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .2s;
	transition: .2s;
}
.switch-slider:before {
	position: absolute;
	content: "";
	height: 12px;
	width: 12px;
	left: 2px;
	bottom: 2px;
	background-color: white;
	-webkit-transition: .2s;
	transition: .2s;
}
input:checked + .switch-slider {
	background-color: #8198b5;
}
input:focus + .switch-slider {
	box-shadow: 0 0 1px #8198b5;
}
input:checked + .switch-slider:before {
	-webkit-transform: translateX(100%);
	-ms-transform: translateX(100%);
	transform: translateX(100%);
}
.switch-slider.round {
	border-radius: 34px;
}
.switch-slider.round:before {
	border-radius: 50%;
}

.headstand {
	color: #fff;
	position: absolute;
	right: 5px;
	top: 1px;
}

#Paragraph {
	position: absolute;
	right: 0;
	float:right;
	margin: 35px 0 0 0;
}

.ptop {
	margin-bottom: 10px;
}

/*
.pfeil_next, .pfeil_prev {
	background-color: #fff;
	background-image: url(mobil/pfeil_rechts.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 16px;
	display: block;
	height: 40px;
	position: fixed;
	right: 0;
	bottom: 200px;
	width: 15px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0 1px 2px 2px;
	-moz-box-shadow: rgba(0, 0, 0, 0.1) 0 1px 2px 2px;
	box-shadow: rgba(0, 0, 0, 0.1) 0 1px 2px 2px;
	z-index: 9;
}

.pfeil_next:hover, .pfeil_prev:hover {
	text-decoration: none;
}

.pfeil_prev {
	background-image: url(mobil/pfeil_links.png);
	left: 0;
}
*/

.dokumente {
	background: url(dokumente.png) 0 0 no-repeat;
	background-size: 16px;
	display: inline-block;
	height: 18px;
	vertical-align: middle;
	width: 16px;
}
@media (-webkit-min-device-pixel-ratio: 1.3), (min-resolution: 100dpi) {
	.dokumente {
		background-image: url(dokumentex3.png);
	}
}

#alphabetisch, #rechtsgebiete {
	/*display: none;*/
}

.appendix, a.appendix:link, a.appendix:visited {
	color: #777;
	font-size: 0.9em;
	line-height: 1.2em;
}

.kasten {
	background: #f3f5f7;
	border: 1px solid #eee;
	border-color: #eee #ddd #ddd #eee;
	padding: 10px;
	margin: 20px 0;
}

.kasten p {
	margin: 0 0 0 65px;
}

.kasten img {
	float: left;
	margin: 0 10px 5px 0;
}

.content_inner img {
	max-width: 100%;
}

#meistgenutzte_gesetze {
	line-height: 30px;
}

#meistgenutzte_gesetze a:before {
	background-color: #222;
	content: ' ';
	display: inline-block;
	height: 6px;
	margin-bottom: .1em;
	margin-right: .5em;
	width: 6px;
}

#rechtsprechung_mobil ul li a {
	display: block;
}
#rechtsprechung_mobil ul li div:last-child {
	color: #444;
}

.abstand {
	margin: 5px 0;
}

.resultcount {
	display: block;
	margin: 15px 0;
}

#fea_div div {
	padding: 6px 8px 7px 8px;
}


#content h2.klapph {
	background: var(--background-color-lighter);
	background: linear-gradient(var(--background-color-lighter), var(--background-color));
	border: 0;
	border-bottom: 1px solid var(--border-color-strong);
	cursor: pointer;
	display: block;
	font-size: 1em;
	font-weight: normal;
	margin: 0;
	padding: 11px calc( env(safe-area-inset-right) + 25px ) 10px calc( env(safe-area-inset-left) + 15px );
	position: relative;
	text-align: left;
}

.auf {
	background: var(--background-color);
	background: linear-gradient(var(--background-color), var(--background-color-lighter));
}

.klapph:after, .weiterlink:after, .klappueberschrift:after {
	content: "";
	position: absolute;
	right: 15px;
	top: 16px;
	display: inline-block;
	border-right: 3px solid var(--border-color-dark);
	border-bottom: 3px solid var(--border-color-dark);
	width: 6px; height: 6px;
	transform: rotate(45deg);
	transition: all 0.5s ease-in-out;
}

.auf:after {
	transform: rotate(-135deg);
	top: 20px;
}
.weiterlink:after {
	transform: rotate(-45deg);
}
 .klappueberschrift:after {
	 top: 14px;
 }

.klappueberschrift table {
	float: left;
	white-space: normal;
}
.klappueberschrift td {
	font-size: 1.111em;
	padding: 0;
	border: 0;
}
.klappueberschrift td:first-child {
	display: none;
}

.rspr_inhalt h2.klappueberschrift {
	background: #d8e0e8;
	border-top: 1px solid #7f98b2;
	color: #222;
	font-size: 1.2em;
	text-align: center;
	margin-bottom: 20px;
	padding-bottom: 10px;
}
.rspr_inhalt h2.auf {
	padding-bottom: 5px;
}
	.rspr_inhalt h2.klappueberschrift td {
		border-top: 0;
	}
	.rspr_inhalt h2.klappueberschrift.auf td {
		border-top: 1px solid #7f98b2;
		padding: 3px;
	}
	.rspr_inhalt h2.klappueberschrift td:first-child {
		display: table-cell;
	}
	.rspr_inhalt h2.auf table, .rspr_inhalt h2.auf small {
		float: none;
	}
	.rspr_inhalt .klappueberschrift small {
		display: none;
	}
	.rspr_inhalt h2.auf small {
		display: block;
	}

#main .hinweiszeile {
	display:none;
}

.waagenlink {
	background: url(waage.svg) 50% 75% no-repeat;
	background-size: 16px;
	padding: 1px 10px;
}
/*
#ersterkasten .hinweiszeile {
	margin-bottom: 30px;
	display: block;
}
*/

.anlc, .anl {
	display: block;
	overflow: auto;
	border-collapse: collapse;
	empty-cells: show;
	margin: 10px;
	padding: 0;
}

.anlc td, .anl td {
	border: 1px solid #ddd;
	font-size: 90%;
	padding-left: 10px;
	text-align: left;
	vertical-align: top;
}

.anlc td {
	padding-right: 10px;
}

 /* {{{ Kontextvorschau */

.kv {
	border-left: 3px solid #d8e0e8;
	color: #666;
	margin-top: 10px;
	padding: 0px 0px 0px 10px;
}

.kv p, .vorschaukasten p {
	font-style: normal;
	padding-top: 5px;
}

.vorschaukasten p {
	margin-bottom: 0;
}

.wzv b {
	text-shadow: 0.1em 0.1em 0.2em yellow;
	background-color: #ffc;
}

.wzv .rn {
	background-color: var(--background-color-medium);
}

.sprechblase {
	background: #fff;
	display: inline-block;
	width: 14px;
	height: 8px;
	border: 1px solid #ccc !important;
	padding: 0px;
	position: relative;
	border-radius: .25em;
	top: -2px;
	margin-left: 10px;
}
.sprechblasegrau {
	background: #d8e0e8;
	border: 1px solid transparent !important;
}

.sprechblase:before {
	content: "";
	width: 0px;
	height: 0px;
	position: absolute;
	border-left: 3px solid #ccc;
	border-right: 3px solid transparent;
	border-top: 3px solid #ccc;
	border-bottom: 3px solid transparent;
	left: 24%;
	bottom: -6px;
}
.sprechblasegrau:before {
	border-left-color: #d8e0e8;
	border-top-color: #d8e0e8;
}

.sprechblase:after {
	content: "";
	width: 0px;
	height: 0px;
	position: absolute;
	border-left: 4px solid #fff;
	border-right: 4px solid transparent;
	border-top: 4px solid #fff;
	border-bottom: 4px solid transparent;
	left: 32%;
	bottom: -3px;
}
.sprechblasegrau:after {
	border-color: transparent;
}

.abschnitt_toolbar {
	display: flex;
	float: right;
	height: 28px;
}
.abschnitt_toolbar .switch-label {
	align-self: flex-end;
}
.abschnitt_optionen {
	display: inline-block;
	-webkit-transition: all .5s;
	transition: all .5s;
}
.abschnitt_optionen_offen {
	display: block;
	max-width: 210px;
}
.abschnitt_optionen textarea {
	width: 100%;
}
.abschnitt_optionen input[type=submit] {
	margin-top: 15px;
}

.o_abschnitt_optionen {
	background: transparent url(optionen.png) 50% 50% no-repeat;
	cursor: pointer;
	display: inline-block;
	height: 20px;
	position: relative;
	top: 5px;
	width: 20px;
}
.abschnitt_optionen_inner {
	background-color: #fff;
	display: none;
	padding: 10px;
	position: absolute;
	right: 0;
	top: 0;
	-moz-box-shadow:    0px 1px 5px 3px #eee;
	-webkit-box-shadow: 0px 1px 5px 3px #eee;
	box-shadow:         0px 1px 5px 3px #eee;
	width: 250px;
	z-index: 2;
}
.abschnitt_optionen.abschnitt_optionen_offen .abschnitt_optionen_inner {
	display: block;
}
.abschnitt_optionen .hinweislink {
	float: right;
	margin-right: 32px;
}

.o_optionen_formular {
	position: relative;
	display: inline-block;
	width: 1.25em;
	height: 0.9em;
	margin-right: 0.3em;
	border-top: 0.2em solid #888;
	border-bottom: 0.2em solid #888;
	top: -3px;
}

.o_optionen_formular:before {
	content: "";
	position: absolute;
	top: 0.35em;
	left: 0px;
	width: 100%;
	border-top: 0.2em solid #888;
}

a.close {
	cursor: pointer;
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 5;
	width: 15px;
	height: 15px;
	border: 0;
	background-position: 1px 0%;
	background-repeat: no-repeat;
	background-image: url(sidebar_button_sprite.gif);
}

a.close_zettel {
	background: transparent;
	height: 24px;
	line-height: 24px;
	right: 10px;
	text-align: center;
	top: 10px;
	width: 24px;
}
a.close_zettel:before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
a.close_zettel:after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
a.close_zettel::before, a.close_zettel::after {
	content: '';
	position: absolute;
	height: 2px;
	width: 75%;
	top: 50%;
	left: 10%;
	margin-top: -1px;
	background: #888;
	border-radius: 5px;
	height: .15em;
	margin-top: 0px;
	margin-bottom: 20px;
}

ul.top {
	margin-bottom: 15px;
}

/* }}} */


/* {{{ Ajax-Suche */
#head_wrapper {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: space-between;
}

#suche {
	align-self: center;
	flex-grow: 1;
	position: relative;
	margin: 0 10px;
	z-index: 96;
}

#suchfeldform_ajax {
	display: block;
}

#suchfeldset_ajax {
	display: block;
}

#suchfeld_ajax {
	border: 1px solid #7f98b2;
	border-right: 0;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
	font-size: 1.1em;
	height: 24px;
	line-height: 22px;
	margin: 0;
	max-width: 100%;
	padding: 0;
	padding-right: 26px;
}

#suchbutton_ajax {
	/*background: transparent url(mobil/pfeil_suche.png) left top no-repeat;*/
	background: transparent url(lupe48_grau.png) .25em .2em no-repeat;
	background-size: 75%;
	border: 1px solid #7f98b282;
	border: 0;
	border-radius: 2px;
	height: 24px;
	margin-left: -24px;
	padding: 0;
	text-indent: -9000px;
	width: 24px;
}

#suchfeld_ajax, #sbi, .input {
	background-color: #fff;
	border: 1px solid #bbb;
	color: #444;
	vertical-align: middle;
}

#suchfeld_ajax {
	background-color: #fff;
	border: 1px solid #7f98b282;
	border-radius: 2px;
	color: #444;
	font-size: 1em;
	padding: .1em 26px .1em 5px;
	width: 100%;
}

.unser-suchfeld {
	width: auto;
	overflow-x: hidden;
}
.unser-suchfeld .ui-menu-item {
	border-top: 1px dotted silver;
}

.ui-autocomplete {
	background-color: #fff;
	border-bottom: 3px solid #036;
	-webkit-box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	-moz-box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	border-top: 0;
	color: #222;
	font-family: var(--font-stack);
	overflow-y: scroll;
	overflow-x: hidden;
	padding: 0;
	position: absolute;
	text-align: left;
	z-index: 99999;
}

.ui-autocomplete ul {
	height: 100%;
	list-style: none;
	list-style-image: none;
	list-style-position: outside;
	padding: 0;
	margin: 0;
	width: 100%;
}

.ui-autocomplete li {
	cursor: pointer;
	display: block;
	margin: 0px;
	padding: 5px 5px;
	/*
	 * 	if width will be 100% horizontal scrollbar will apear
	 * 	when scroll mode will be used
	 *	*/
	/*width: 100%;*/
	/*font: menu;
	font-size: 12px;*/
	/*
	* 	it is very important, if line-height not setted or setted
	* 	in relative units scroll will be broken in firefox
	*	*/
	line-height: 16px;
	overflow: hidden;
}

.ui-autocomplete li a {
	border: 0;
	color: #222;
	display: block;
	margin: -2px -5px;
	padding: 5px 15px;
	width: 100%;
}
.ui-autocomplete li a.instanzpfeil {
	background-image: url(autocomplete_pfeil.svg);
	background-repeat: no-repeat;
	background-position: 20px 8%;
	background-size: 16px;
	padding-left: 40px;
}
.ui-autocomplete li a.instanzpfeil .ergebnis_h2 {
	text-indent: 0;
}
.ui-menu-item, .ui-menu-item a {
	margin: 0;
	padding: 0;
}

.ac_loading {
	background: white url('laden.gif') right center no-repeat;
}

.ac_odd {
	background-color: #f4f4f4;
}

.ac_over {
	background-color: #d8e0e8;
}

#dejure .ui-state-focus {
	border: 0;
	background-color: #d8e0e8;
}

.ergebnis_h {
	color: #444;
	font-weight: bold;
	line-height: 1.4em;
	overflow: hidden;
	position: relative;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.ergebnis_h small {
	background-color: #a00;
	border-radius: 3px;
	color: #fff;
	display: inline-block;
	font-weight: normal;
	line-height: 1em;
	margin-top: 1px;
	padding: 1px 3px;
	vertical-align: top;
}

.ergebnis_h2 {
	color: #565454;
	display: block;
	line-height: 1.4em;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ergebnis_zusatz {
	color: #bbb;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

.ergebnishigh {
	background-color: transparent;
	border-bottom: 2px solid grey;
	font-weight: bold;
}

.listhead {
	font-family: Cambria, Times, "DejaVu Serif", serif;
	background-color: #eee;
	color: #888;
	padding: 4px 10px;
	position: relative;
	text-transform: uppercase;
}

.ac_odd {
	background-color: none;
}

.ac_close {
	align-items: center;
	border: 0;
	cursor: pointer;
	display: flex;
	color: rgba(255, 255, 255, .8) !important;
	cursor: pointer;
	font-size: 20px;
	font-weight: bold;
	height: 32px;
	justify-content: center;
	text-decoration: none;
	/*text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.4);*/
	right: .2em;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	z-index: 98;
}
	.ac_close:before {
		content: "×";
		background: #2b4f73;
		border-radius: 50%;
		display: block;
		height: 24px;
		text-align: center;
		width: 24px;
	}

.external, .external_inline {
	background: url(external.png) right top no-repeat;
}

.external_inline {
	background-position: 50% 50%;
	display: inline-block;
	padding: 0 8px;
}
.external_inline:before {
	content: '.';
	visibility: hidden;
}
/* }}} */

/* {{{ Entscheidungssuche */
#entscheidungssuche {
	margin: 15px auto;
	padding: 0 10px 13px;
	text-align: center;
}

#suchfeld_rspr {
	padding: 20px 0;
	text-align: center;
}
#suchfeld_rspr input[type=search], #entscheidungssuche input[type="search"] {
	box-sizing: content-box;
	font-size: inherit;
	height: 1.6em;
	padding: 5px;
	vertical-align: bottom;
	width: 80%;
}
button.abschicken {
	background: #777;
	border: 1px solid #777;
	box-sizing: content-box;
	display: inline-block;
	font-size: inherit;
	padding: 5px;
	position: relative;
	width: 1.6em;
	height: 1.6em;
	vertical-align: bottom;
}
button.abschicken:after {
	border-top: 0.2em solid #fff;
	border-right: 0.2em solid #fff;
	content: '';
	display: block;
	height: .4em;
	left: 11px;
	position: absolute;
	top: 13px;
	width: .4em;
	vertical-align: bottom;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* }}} */

/* {{{ Suchseite */

ul.ober {
	margin-bottom: 25px;
}

ul.unter span {
	background: url(ordner2.gif) no-repeat left center;
	padding-left: 25px;
}

ul.text {
	padding-left: 25px;
}

ul.text a {
	font-weight: bold;
}

#gesetzesuebersicht {
	margin-bottom: 15px;
}

#gesetzesuebersicht .down {
	height: 20px;
	width: 20px;
	position: absolute;
	z-index: 3;
	top: -7px;
	right: 7px;
}

.rahmen a.down, .rahmen2 a.down {
	/*background: transparent url(pfeil_down_g.gif) right center no-repeat;*/
}
.rahmen a.down:after, .rahmen2 a.down:after {
	content: '';
	width: 0;
	height: 0;
	border: 0 solid transparent;
	border-left-width: 5px;
	border-right-width: 5px;
	border-top: 8px solid #999;
	border-radius: 2px;
	position: relative;
	left: 6px;
	top: 18px;
}

.rahmen {
	border-top: 1px solid #ddd;
	position: relative;
}

.suche .gesetzesliste p {
}

.gesetzesliste .spalte {
}

.rahmen a {
	border: 0;
	padding-left: 10px;
}

.rahmen a, #rechtsgebiete .rahmen2 a {
	margin: 7px 0;
}

.rahmen h3, .rahmen2 h3 {
	background: none;
	margin: 0 0 10px 0;
	padding: 0;
}

div.gesetzesliste, div.gesetzesliste_b, div.gesetzesliste_c {
	padding: 5px;
}

.rahmen, .rahmen2 {
	margin: 0 0 15px 0;
}

/* Suchseite Ajax-Ergebnisse */
.minmax_wrapper {
	margin: 0 -15px 20px -15px;
}
#div_beste_treffer ul {
	max-height: 355px;
	line-height: 1.6em;
	margin: 0;
	padding: 0;
	padding-bottom: 40px;
	overflow: hidden;
}
.maximized {
	max-height: none !important;
}
#div_beste_treffer .listhead {
}
#div_beste_treffer ul li {
	border-top: 1px dotted silver;
	display: block;
	margin: 0;
	padding: 7px 5px 7px 15px;
}
#div_beste_treffer ul li:hover {
	background-color: #d8e0e8;
}
#div_beste_treffer ul li a {
	border: 0;
	display: block;
}
#div_beste_treffer .ergebnis_h, #div_beste_treffer .ergebnis_h2 {
	/*white-space: normal;*/
	display: block;
	overflow: hidden;
	padding: 1px 0;
}

#div_beste_treffer li a.instanzpfeil {
	background-image: url(autocomplete_pfeil.svg);
	background-repeat: no-repeat;
	background-position: 10px 3%;
	background-size: 16px;
	padding-left: 30px;
}
#div_beste_treffer li a.instanzpfeil .ergebnis_h2 {
	text-indent: 0;
}
#div_beste_treffer .ergebnis_h small {
	margin-top: -3px;
	vertical-align: middle;
}

.toggle_minmax_wrapper {
	background: #fff;
	border: 0;
	bottom: 0;
	display: block;
	left: 0;
	padding: 6px;
	position: absolute;
	right: 0;
	text-align: center;
	text-indent: -90000px;
	z-index: 1;
	-webkit-box-shadow: 0 -8px 6px -6px rgba(0, 0, 0, .2);
	-moz-box-shadow: 0 -8px 6px -6px rgba(0, 0, 0, .2);
	box-shadow: 0 -8px 6px -6px rgba(0, 0, 0, .2);
}
.toggle_minmax_wrapper::after {
	content: "";
	background: #fff url(ellipsis_round_inverted.svg) 50% 60% no-repeat;
	background-size: 26px;
	opacity: 0.25;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1;
}
	.toggle_minmax_wrapper:hover::after {
		filter: alpha(opacity=60);
		opacity: .6;
	}
	.toggle_minmax_wrapper.maximize::after {
		background-image: url(ellipsis_round.svg);
	}

#div_gerichte_meistgeklickt {
	margin-bottom: 14px;
	max-height: 300px;
	overflow: hidden;
	padding-top: 10px;
	padding-bottom: 40px;
	position: relative;
}
#div_gerichte_meistgeklickt li {
	padding-bottom: 0;
}

/* }}} */


/* {{{ Hochgestellte Zahlen */

span.n a {
	font-size: .9em;
	margin-right: 1px;
	position: relative;
	top: -3px;
	vertical-align: top;
	color: grey;
}
.ersterkasten_inhalt span.n {
	white-space: nowrap;
}

/* }}} */

.anzahl_grau {
	background-color: #ddd;
	border-radius: 5px;
	color: #222;
	display: inline-block;
	font-size: .9em;
	line-height: 1.4em;
	margin: 2px 2px 0 4px;
	padding: 1px 3px;
	text-align: center;
}


.zusatzangabe, .bezahldienst, .einloggschranke, .freier_dienst {
	color: #999;
	font-size: 0.9em;
}
.bezahldienst, .einloggschranke, .freier_dienst {
	background: url(bezahldienst.png) left center no-repeat;
	background-size: 12px;
}
	.bezahldienst, .einloggschranke {
		padding-left: 16px;
		margin-left: 10px;
	}
	.einloggschranke {
		background-image: url(schloss.png);
	}

	.freier_dienst {
		background-image: url(freier_dienst.gif);
		background-position: left 1px;
		padding-left: 25px;
		margin-left: 15px;
	}

.angabe_weitere_entscheidungen_container {
	display: inline-block;
	padding: 0 5px;
	margin-left: 6px;
}
.angabe_weitere_entscheidungen_container:hover .angabe_weitere_entscheidungen {
	display: block;
}
.angabe_weitere_entscheidungen {
	box-shadow: 1px 4px 10px -2px rgba(0, 0, 0, 0.2);
	background-color: #f3f5f7;
	border: 1px solid #fff;
	box-sizing: border-box;
	color: #444;
	font-size: .85em;
	left: 0;
	max-height: 300px;
	max-width: 100%;
	overflow: auto;
	padding: 20px;
	position: absolute;
	z-index: 2;
}
.angabe_weitere_entscheidungen > b {
	color: #999;
	display: block;
	font-size: 1.2em;
	margin-bottom: 15px;
}
.angabe_weitere_entscheidungen > div {
	border-bottom: 1px solid #fff;
	padding: 10px 0;
}
.angabe_weitere_entscheidungen > div:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.angabe_weitere_entscheidungen a {
	display: inline-block;
	white-space: nowrap;
}
.angabe_weitere_entscheidungen i {
	display: block;
}
#content li .angabe_weitere_entscheidungen p.kursiv {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	padding-bottom: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.angabe_weitere_entscheidungen_anzahl {
	background-color: #eee;
	border: 1px solid #ddd;
	border-radius: 3px;
	display: inline-block;
	font-size: .75em;
	line-height: 1;
	padding: 2px 4px;
}

@media (-webkit-min-device-pixel-ratio: 1.3), (min-resolution: 100dpi) {
/*@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {*/
	.bezahldienst {
		background-image: url(bezahldienstx2.png);
	}
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
/*@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {*/
	.bezahldienst {
		background-image: url(bezahldienstx3.png);
	}
}


#mobilschalter {
	background: var(--background-color-lighter);
	background: linear-gradient(var(--background-color-lighter), var(--background-color));
	border: 1px solid #eee;
	color: #036;
	display: block;
	margin: 20px auto 10px auto;
	padding: 4px 10px 3px 10px;
	position: relative;
	width: 170px;
	text-align: center;
}

#cookie_info {
	background-color: #ddd;
	bottom: 0;
	font-family: var(--font-stack);
	left: 0;
	padding: 5px 25px;
	padding-bottom: calc( env(safe-area-inset-bottom) + 5px );
	position: fixed;
	right: 0;
	text-align: center;
	z-index: 95;
}
	#fixed_bottom #cookie_info {
		position: relative;
	}
	#cookie_info .cookie_info_link {
		background-color: #fff;
		border: 0 !important;
		border-radius: .3em;
		margin-left: 10px;
		padding: 2px 4px;
	}


#footer_inhalt div {
	float: none;
	/*line-height: 2em;*/
}

#footer_inhalt div b {
	line-height: 3em;
}

#footer_inhalt div a {
	border: 0;
	display: block;
	margin-bottom: 10px;
	position: relative;
}
#footer_inhalt .bg_virus::after {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	top: 2px;
	position: absolute;
	z-index: 0;
	background-image: url(/jcg/virus_rot.svg);
	background-position: right bottom;
	background-size: 100%;
	background-repeat: no-repeat;
	margin-left: 6px;
}

.mehrfade {
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0;
	padding: 7px 0;
	right: 0;
	text-align: center;
	z-index: 1;

	background: #fff;
	-webkit-box-shadow: 0 -8px 6px -6px rgba(215, 215, 215, 1);
	-moz-box-shadow: 0 -8px 6px -6px rgba(215, 215, 215, 1);
	box-shadow: 0 -8px 6px -6px rgba(215, 215, 215, 1);
}
	.mehrfade a {
		background: transparent url(ellipsis_round.svg) 50% 50% no-repeat;
		background-size: 24px;
		display: block;
		filter: alpha(opacity=25);
		height: 30px;
		margin: 0;
		opacity: 0.25;
		padding: 0;
		text-align: center;
		text-indent: -99999px;
		width: 100%;
	}
		.mehrfade a:hover {
			filter: alpha(opacity=60);
			opacity: .6;
		}

	.mehrfade a.mehrfadeout {
		background-image: url(ellipsis_round_inverted.svg);
	}

.mehrcontainer li:last-child {
	padding-bottom: 2.1em;
}

.close_gen {
	border: 0 !important;
	color: #fff;
	display: inline-block;
	height: 20px;
	width: 20px;
	font-size: 2em;
	font-weight: bold;
	opacity: .7;
	position: absolute;
	right: 5px;
	top: 5px;
	text-align: center;
}
.close_gen:before {
	content: "\00d7";
}
.close_gen:hover {
	opacity: 1;
}
.close_gen {
	right: 0;
	top: 1px;
}
.close_gen.close_dark {
	color: #999;
}

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}
/* Vor IE/Mac verstecken \*/
* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

#rel_home span {
	display: none;
}
#rel_home:after {
	content: 'Titelseite';
}

/* {{{ Gesetzestooltips */

.ui-tooltip, .arrow:after {
	background: #fff;
}
.ui-tooltip {
	border: 1px solid #fff;
	display: block;
	font-size: 0.9em;
	/*left: 0px;*/
	letter-spacing: normal;
	margin: 0;
	padding: 0;
	position: absolute;
	text-align: left;
	white-space: normal;
	width: 300px;
	z-index: 998;
	-webkit-box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	-moz-box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;

	-webkit-box-shadow: rgba(0, 0, 0, 0.5) 1px 4px 35px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.5) 1px 4px 35px 0px;
	box-shadow: rgba(0, 0, 0, 0.5) 1px 4px 35px 0px;

	-webkit-box-shadow: rgba(0, 0, 0, 0.4) 1px 4px 30px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.4) 1px 4px 30px 0px;
	box-shadow: rgba(0, 0, 0, 0.4) 1px 4px 30px 0px;
}
.ui-helper-hidden-accessible {
	display: none;
}
.tooltip_head {
	background-color: #d8e0e8;
	padding: 15px 10px 15px 10px;
	position: relative;
	text-align: center;
}
.tooltip_content {
	padding: 10px;
}
.tooltip_content b:first-child {
	display: block;
	margin-bottom: 10px;
	text-align: center;
}
/* Tooltip arrows */
.arrow {
	width: 70px;
	height: 16px;
	overflow: hidden;
	position: absolute;
	left: 50%;
	margin-left: -35px;
	bottom: -16px;
}
.arrow.top {
	top: -16px;
	bottom: auto;
}
.arrow.left {
	left: 20%;
}
.arrow:after {
	content: "";
	position: absolute;
	left: 20px;
	top: -20px;
	width: 25px;
	height: 25px;
	box-shadow: 6px 5px 9px -9px black;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.arrow.top:after {
	background-color: #d8e0e8;
	bottom: -20px;
	top: auto;
}

div.tt_rechtsprechung div.tooltip_content {
	padding-left: 42px;
	min-height: 24px;
}
div.tt_rechtsprechung .arrow.top:after {
	background-color: #fff;
}
div.tt_rechtsprechung a.rfenster_icon {
	left: 10px;
	position: absolute;
	top: 10px;
}

.ui-tooltip.standard_tt {
	padding: 10px;
	max-width: 400px;
	width: auto;
}

.nbm_abschnitt a.nbm {
	color: #222;
	border-bottom: 0;
}
	.nbm_abschnitt:hover a.nbm {
		color: #777;
		border-bottom: 1px dotted;
	}
	.nbm_abschnitt:hover a.nbm:hover {
		color: #036;
	}
.nbm_abschnitt .nbm_hinweis {
	display: none;
	background: #fff;
	color: #888;
	font-size: .9em;
	position: absolute;
	right: 0;
	top: 0;
	transform: translate(0, -100%);
}
	.nbm_abschnitt:hover .nbm_hinweis {
		display: block;
	}


.djo_karte_ul {
	display: block;
	height: 40px;
	list-style: none;
	margin: 0 auto 10px auto;
	padding: 0;
}
	.djo_karte_ul li {
		border-left: 1px solid #ddd;
		display: block;
		font-family: var(--font-stack);
		font-size: 9px;
		float: left;
		padding: 0 3px;
		margin: 0;
		text-align: center;
		width: 21%;
	}
	.djo_karte_ul li:first-child {
		border: 0;
	}
	.djo_rspr_karte_anzahl {
		color: #036;
		display: block;
		fonz-size: 13px;
		font-weight: bold;
		margin-top: 10px;
	}
	.djo_rspr_karte_haekchen {
		background: url(/jcg/haekchen_blau_14x14.png) 50% 50% no-repeat;
		height: 14px;
		margin-top: 6px;
	}

/* }}} */
/*
#suche_open {
	background: transparent url(mobil/lupe.png) no-repeat center center;
	background-size: 20px;
	position: absolute;
	right: 10px;
	top: 12px;
	display: block;
	height: 20px;
	width: 20px;
}

#suche {
	background-color: #036;
	margin: 0;
	margin-top: 36px;
	padding: 7px 5px 10px 5px;
	position: relative;
	z-index: 20;
	height: 18px;
	display: none;
}

#suchfeld_ajax {
	border: 1px solid #7f98b2;
	border-right: 0;
	font-size: 1.1em;
	height: 18px;
	line-height: 22px;
	max-width: 99%;
	min-width: auto;
	padding: 1px;
	width: 99%;
	display: block;
}

#suchbutton_ajax {
	position: absolute;
	right: 5px;
	top: 7px;
	display: block;
}

#suchfeldset_ajax {
	min-width: auto;
	max-width: auto;
	margin: 0;
	padding: 0;
	width: 100%;
}

#suchfeldform_ajax {
	left: 0;
	margin: 0;
	background-color: #ec2;
}
*/


/* {{{ Login/Registrierung per DIV */

#mobil_login {
	background: transparent url(benutzer_avatar_weiss.svg) 50% 50% no-repeat;
	background-size: 16px;
	cursor: pointer;
	flex-grow: 0;
	flex-shrink: 0;
	height: 100%;
	margin-right: 12px;
	min-height: 24px;
	width: 24px;
	opacity: .5;
}
#mobil_login.loggedin {
	/*background-image: url(benutzer_avatar_weiss48.png);*/
	opacity: 1;
}

.benutzer_avatar {
	background: url(benutzer_avatar.svg) 50% 50% no-repeat;
	background-size: 100%;
	display: inline-block;
	height: 1em;
	vertical-align: middle;
	width: 1em;
}
.benutzer_avatar_blau {
	background-image: url(benutzer_avatar_blau.svg);
}

.overlaybox {
	background-color: #f3f5f7;
	bottom: 0;
	box-sizing: border-box;
	height: 100%;
	left: 0;
	padding: 15px;
	position: fixed;
	right: 0;
	text-align: left;
	top: 0;
	z-index: 99;
}

.overlaybox_wrapper {
	box-sizing: border-box;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 0 50px 50px 50px;
	padding: 0 25px 25px 25px;
	max-height: 100%;
	overflow: auto;
}

.close_overlay {
	align-content: center;
	align-items: center;
	cursor: pointer;
	display: flex;
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: none;
	background-color: transparent;
	font-size: 1.5rem;
	z-index: 1;
}
	.close_overlay:before, .close_overlay:after {
		position: absolute;
		content: '';
		width: 1.25rem;
		height: 0.125rem;
		background-color: #444;
		background-color: #666;
		border-radius: 5px;
		height: 0.24rem;
	}
	.close_overlay:before {
		transform: rotate(-45deg);
	}
	.close_overlay:after {
		transform: rotate(45deg);
	}
	.close_overlay:hover:before, .close_overlay:hover:after {
		background-color: #b00;
	}

.overlayBox {
	background: #fff;
	box-sizing: border-box;
	display: flex;
	left: 50%;
	opacity: 1;
	max-height: 80%;
	position: fixed;
	text-align: left;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 770px;
	max-width: 100%;
	z-index: 999;
	-webkit-box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	-moz-box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	box-shadow: rgba(0, 0, 0, 0.4) 0 4px 4px 0;
	-webkit-transition: opacity .5s ease-in-out;
	-moz-transition: opacity .5s ease-in-out;
	-ms-transition: opacity .5s ease-in-out;
	-o-transition: opacity .5s ease-in-out;
	transition: opacity .5s ease-in-out;
}
.transparent {
	opacity: 0;
}
.overlayBoxContent {
	background: #fff;
	overflow-y: auto;
	overflow-x: hidden;
	flex-grow: 1;
}
.overlayBoxContent h2 {
	margin: 20px 20px 0 20px;
	font-size: 1.4em;
}
.overlayBoxContent #alpha, .overlayBoxContent .ersterkasten_inhalt {
	margin: 30px 0 20px 0;
	line-height: 1.6em;
}
.closeLink {
	top: 15px;
	right: 15px;
	z-index: 999;
}

#loginbox ul li:last-child a {
	margin-top: 30px;
	font-weight: bold;
}

#loginbox .menu_user_form {
	width: 100%;
}

#loginbox .menu_user_form:first-child {
	display: block;
}

.menu_user_form .menu_form_switch {
	display: block;
	margin-bottom: 10px;
}
.login_group .menu_form_switch:first-child {
	display: inline-block;
}

#loginbox ul {
	padding: 0;
	margin: 40px 0 0 0;
}
.overlaybox h5 {
	margin: 20px 0 10px 0;
}
.mobile_menu {
	margin-bottom: 20px;
}
#menubox a, #menubox .marker, #loginbox ul li a, #loginbox ul li div {
	padding: 5px 10px 5px 32px;
}
#menubox a, #menubox .marker, #loginbox ul li a {
	background-color: rgba(255, 255, 255, .8);
	background-color: rgba(255, 255, 255, .6);
	border: 1px solid #fff;
	display: block;
}
#loginbox ul li {
	list-style: none;
	margin: 6px 0;
}

#loginbox_text {
	font-size: .9em;
	margin-bottom: 10px;
}

#form_menu_login {
	display: block;
}
.login_container form {
	padding-top: 10px;
}
.menu_user_form h2 span {
	display: inline;
}
.menu_user_form input[type=checkbox] {
	padding: 0;
	margin:0;
	vertical-align: bottom;
	position: relative;
}
.login_group {
	margin-bottom: 10px;
	overflow: auto;
}
.login_container .input_group label {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
}
.menu_user_form input:focus:required:valid, .login_group select:focus:required:valid {
	border-color: #0b0 !important;
}
.menu_user_form input:focus:required:invalid, .login_group select:focus:required:invalid {
	border-color: #b00 !important;
}
.menu_user_form input[type=text], .menu_user_form input[type=email], .menu_user_form input[type=password], .login_group select {
	background-color: #fff;
	border: 1px solid #ddd;
	font-size: 1em;
	padding: 8px;
	width: 100%;
	margin-bottom: 10px;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.login_group input[type=submit], .login_group button {
	float: right;
	margin-left: 5px;
	margin-bottom: 10px;
}
.menu_user_form input:focus, .menu_user_form select:focus {
	background-color: #ffd;
}
.menu_user_form input[type=submit], .menu_user_form button {
	cursor: pointer;
	background-color: #666;
	border: 0;
	color: #fff;
	font-size: 1em;
	padding: .4em .8em;
}
.login_group select option[val=""] {
	color: #aaa;
}
.login_group input[type=checkbox] {
	float: none;
	margin-right: 5px;
}
.login_group label {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
.form_menu_password input[type=text], .menu_user_form input.gen_code, .menu_user_form input.fullwidth {
	display: block;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
}
.menu_login input:focus, .menu_login select:focus {
	background-color: #ffd;
}
.menu_login input[type=submit], .menu_login button {
	cursor: pointer;
	background-color: #666;
	border: 0;
	color: #fff;
	font-size: 1em;
	padding: .2em .5em;
}
.menu_login button.reset {
	background-color: #ddd;
	color: #222;
}
.menu_login input[type=submit]:focus, .menu_login button:focus, .menu_login input[type=submit]:hover, .menu_login button:hover {
	background-color: #036;
	color: #fff;
}

.menu_warning, .menu_success {
	background-color: #f2ffea;
	border: 1px solid #cdddb2;
	margin-top: 10px;
	padding: 15px;
}
.menu_warning {
	background-color: #fffeea;
	border-color: #ece190;
}

#dejurelogin .reihe {
	margin-bottom: 20px;
}
#dejurelogin input {
	display: block;
	width: 99%;
}
input.error {
	color: #ab0000 !important;
	border-color: #b00;
}
input[type=text].error {
	background-color: #ffebef !important;
}

.ausblendung {
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjYiLz4KICAgIDxzdG9wIG9mZnNldD0iNzAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjAuOSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjAuOSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: linear-gradient(to bottom,  rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.9) 70%,rgba(255,255,255,0.9) 100%);
}

.menu_vorstellung {
	align-content: start;
	background-color: var(--background-color);
	bottom: 0;
	flex-wrap: wrap;
	justify-content: center;
	left: 0;
	overflow: auto;
	padding: 3rem 1rem 1rem 1rem;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 2;
}
.menu_vorstellung .close_overlay {
	position: fixed;
}

.questionmark {
	align-items: center;
	background-color: var(--background-color-medium);
	border-radius: 50%;
	cursor: pointer;
	display: inline-flex;
	height: 1.8em;
	justify-content: center;
	position: relative;
	text-align: center;
	width: 1.8em;
}
.questionmark:before {
	content: '?';
	font-weight: bold;
}
.questionmark:hover {
	background-color: var(--background-color-light);
}

/* }}} */


/* {{{ Inhalte der Startseite */
.klappkasten {
	padding: 15px;
	padding: 15px calc( env(safe-area-inset-right) + 15px ) 15px calc( env(safe-area-inset-left) + 15px );
	display: none;
}
.aufgeklappt {
	display: block;
}
.klappkasten ul {
	margin-bottom: 20px;
}

.li_wrapper {
	margin-bottom: 12px;
}
.li_wrapper a {
	display: block;
}
.li_wrapper .ausgegraut {
	display: none;
}
.menu_spalte {
	padding-right: 5px;
}
.menu_rspr_s4 {
	color: #222;
	display: block;
}

#verlauf_mobil li {
	margin-bottom: 12px;
}
#verlauf_mobil ul li a {
	display: block;
}
.mobil_button {
	background-color: #7f98b2;
	border-radius: 3px;
	color: #fff !important;
	display: block;
	padding: 2px 10px;
	margin: 10px auto;
	max-width: 60%;
	text-align: center;
}
.mobil_button:hover {
	background-color: #036;
}
/* }}} */

/* {{{ Elemente am unteren Fensterrand anzeigen */
#fixed_bottom {
	background-color: #eee;
	bottom: 0;
	left: 0;
	position: fixed;
	right: 0;
	z-index: 94;
}
#fixed_bottom #button_container {
	position: relative;
}
#fixed_bottom #button_container a {
	display: block;
	padding: 5px 10px;
	width: 55%;
}
#fixed_bottom #button_container button {
	background-color: #eee;
	border: 4px solid #fff;
	cursor: pointer;
	position: absolute;
	bottom: 15px;
	z-index: 99;
	padding: 3px;
	height: 40px;
	width: 40px;
}
#top_button {
	cursor: pointer;
	display: block;
	right: 20px;
}
#top_button:after {
	content: "";
	position: absolute;
	right: 9px;
	top: 12px;
	display: inline-block;
	border-right: 5px solid #bbb;
	border-bottom: 5px solid #bbb;
	width: 9px; height: 9px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
#fixed_bottom #button_container #mobile_menu {
	background-color: #333;
	border-radius: 10px;
	left: 20px;
	height: 3.5em;
	width: 3.5em;
	transition: all .2s;
}
#fixed_bottom #button_container #mobile_menu:hover {
	background-color: #fff;
	border-width: 20px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0 1px 2px 2px;
	-moz-box-shadow: rgba(0, 0, 0, 0.1) 0 1px 2px 2px;
	box-shadow: rgba(0, 0, 0, 0.1) 0 1px 2px 2px;
}
#fixed_bottom #button_container #mobile_menu .menu.icon {
	color: #eee;
}
#fixed_bottom #button_container #mobile_menu:hover .menu.icon {
	color: #333;
}
#bottom-navigation {
	align-items: center;
	background-color: #eee;
	bottom: 0;
	display: flex;
	justify-content: space-between;
	left: 0;
	padding-bottom: calc( env(safe-area-inset-bottom));
	position: fixed;
	right: 0;
	opacity: .85;
	z-index: 95;
}
#bottom-navigation div {
	align-items: center;
	box-sizing: border-box;
	color: #777;
	cursor: pointer;
	display: flex;
	height: 34px;
	justify-content: center;
	width: 34px;
}
#bottom-navigation .page-button {
	background-color: transparent;
	cursor: pointer;
	display: block;
	height: 34px;
	padding: 0 0 calc( env(safe-area-inset-bottom) ) calc( env(safe-area-inset-left) );
	position: relative;
	width: 48px;
}
#bottom-navigation .pfeil_next {
	padding: 0 calc( env(safe-area-inset-right) ) calc( env(safe-area-inset-bottom) ) 0;
}
#bottom-navigation .page-button:after {
	content: "";
	display: inline-block;
	position: absolute;
	left: 30%;
	top: 12px;
	border-right: 5px solid #777;
	border-bottom: 5px solid #777;
	width: 9px; height: 9px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
#bottom-navigation .pfeil_prev:after {
	transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	left: auto;
	right: 30%;
}
#bottom-navigation .pfeil_next:after {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#bottom-navigation #top_button {
	background: none;
	border: 0;
	height: 34px;
	position: relative;
	right: auto;
	width: 34px;
}
#bottom-navigation #top_button:after {
	border-color: #777;
}
#top_button.opacity {
	opacity: .3;
	transition-property: opacity;
}
#parallelnormen_button i {
	transform: scale(1.8);
}
#gesamtansicht_button i {
	margin-top: .4rem;
	transform: scale(1.1);
}
/* }}} */

/* {{{ Merkfunktion */
.merkliste_seite h4 {
	font-weight: bold;
	font-size: 1.2em;
}
.merkliste_seite h4 .appendix {
	display: none;
}
.ul_merkliste {
	list-style: none;
	padding: 0;
	margin: 1em 0;
}
.ul_merkliste li.merkfunktion_anzeige {
	margin-bottom: 1.5rem;
}
.ul_merkliste li:last-child {
	border: 0;
}
.ul_merkliste .merkeintrag_link {
	font-weight: bold;
	font-size: 1.1em;
}
.ul_merkliste li.merkfunktion_anzeige .notiz {
	background: #f4f4f4;
	color: #555;
	font-size: .9em;
	line-height: 1.6em;
	margin-bottom: 1em;
}
.ul_merkliste .notiz {
	margin: 0;
}

small.kreis_rot {
	background-color: #c30;
	border-radius: 1em;
	color: #fff;
	font-weight: bold;
	padding: 0px 5px;
}

.meldung_merkliste {
	background-color: #c30;
	border: 1px solid #ddd;
	color: #fff;
	padding: 1px 0;
}
	.meldung_merkliste span {
		background-color: #fff;
		border: 2px solid #c30;
		border-left-width: 0;
		border-right-width: 3px;
		color: #c30;
		font-size: .9em;
		position: relative;
		top: -1px;
		padding: 0 1px;
	}

.merkfunktion_ordnerliste {
	display: flex;
	flex-direction: column;
}

.merkfunktion_datum {
	display: block;
	height: 20px;
}

.merkfunktion_symbolbereich {
	display: block;
	margin-top: 10px;
	visibility: visible !important;
	overflow: auto;
}
	.merkfunktion_ordner .merkfunktion_symbolbereich {
		position: absolute;
		bottom: 4px;
		right: 4px;
	}

.merkfunktion_ordner {
	background-color: #f9f9f9;
	border: 1px solid #eee;
	border-radius: 5px;
	cursor: pointer;
	margin: 0 0 1rem 0;
	min-height: 90px;
	padding: 10px 26px 10px 10px;
	position: relative;
}
.ordner_notizen {
	background-color: #23CBF4;
	background-color: #ccfaff;
}
	.merkfunktion_ordner:hover {
		background-color: #eee;
	}
	.merkfunktion_ordner h3 {
		margin-top: 0;
	}
	.ordner_notizen:hover {
		background-color: #b5f5fc;
	}

.merkfunktion_ordner_form {
	background-color: #f9f9f9;
	bottom: 0;
	left: 0;
	padding: 15px;
	position: absolute;
	right: 0;
	top: 0;
}
.merkfunktion_ordner_form input {
	box-sizing: border-box;
	margin-bottom: 10px !important;
	padding: 10px;
	width: 100%;
}

.merkfunktion_meldung_anzahl_ordner, .merkfunktion_meldung_anzahl {
	color: #fff;
}
.merkfunktion_meldung_anzahl {
 	background: #c30;
	border-radius: 3px;
	font-size: .85em;
	padding: 1px 3px;
}

.merkfunktion_meldung_anzahl_ordner {
	box-sizing: border-box;
	font-size: .75em;
	margin: 0 auto;
	padding: 0 0 6px 0;
	position: absolute;
	right: 6px;
	top: 0;
	width: 20px;
}

.merkfunktion_meldung_anzahl_ordner div {
	background: #c30;
	color: #fff;
	line-height: .5em;
	padding: 0.7em 0 .6em 0;
	text-align: center;
}

.merkfunktion_meldung_anzahl_ordner div:after {
	border-left: 10px solid #c30;
	border-right: 10px solid #c30;
	border-bottom: 6px solid transparent;
	bottom: 0;
	content: '';
	height: 0;
	left: 0;
	position: absolute;
	width: 0;
}

.m_ordner_zusatzangaben {
	color: #999;
	font-size: .8em;
	line-height: 1.4em;
}

.bearbeitungsbereich {
	display: block;
	float: right;
	height: 35px;
	visibility: visible !important;
}
	.bearbeitungsbereich a {
		display: block;
		float: left;
		height: 30px;
		margin-left: 10px;
		width: 30px;
		-moz-border-radius: .3em;
		-webkit-border-radius: .3em;
		border-radius: .3em;
		background-color: #f4f4f4;
	}
	.bearbeitungsbereich a:hover {
		background-color: #fff;
	}
	.merkfunktion_ordner .symbolbereich {
		float: none;
	}
a.delete, a.edit, a.haekchen, .delete, .edit, .haekchen, a.sichtbarlink {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: 16px;
	border: 1px solid #ddd;
	padding: 0px 7px;
}
a.delete, .delete {
	background-image: url(trash_filled.svg);
}
a.edit, .edit {
	background-image: url(pencil_filled.svg);
}
a.haekchen, .haekchen {
	background-image: url(check_filled.svg);
}
span.edit, span.delete, span.haekchen {
	border: 0;
	background-color: none;
}

.icon_link {
	height: 20px;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 20px;
}

.twitter_link {
	background: transparent url(twitter_logo.svg) 0 0 no-repeat;
	background-size: 110%;
}

.zitiervorschlag {
	margin-bottom: 10px;
	padding-left: 78px;
	position: relative;
}
.zitiervorschlag_icons {
	left: 0;
	position: absolute;
	top: 3px;
}

.hover_opacity {
	opacity: .6;
}
	.hover_opacity:hover {
		opacity: 1;
	}

.input_mail, .textarea_mail {
	width: 100%;
}

.funktionsbereich {
	background-color: #f4f4f4;
	/*border-top: 1px solid #ddd;*/
	border-bottom: 1px solid #ddd;
	padding: 40px 20px 20px 20px;
	position: relative;
}
.funktionsbereich .close_overlay {
	display: none;
}

#loading {
	background: transparent url(/jcg/loading-bar.gif) 50% 50% no-repeat;
	border: 1px solid #ccc;
	height: 19px;
	left: 50%;
	position: fixed;
	margin-left: -110px;
	top: 50%;
	width: 220px;
	z-index: 99;
}

.formular_merkfunktion {
	bottom: 0;
	left: 0;
	margin: 0;
	overflow: auto;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 98;
}
.formular_merkfunktion.is_overlay {
	padding: 30px 10px 10px;
}
.is_overlay .close_overlay {
	display: block;
}

.submit_dark, .submit_light, .submit_red {
	border: 0 !important;
	cursor: pointer;
	padding: 5px;
	padding: 6px 10px;
	background-color: #036;
	color: #fff !important;
	text-align: center;
	box-shadow: 0px 1px 3px 0px #666;
	background-color: #777;
}

.submit_light {
	background-color: #ddd;
	color: #222 !important;
}

.submit_red {
	background-color: #d55d44;
}

.submit_success {
	background-color: #070;
}

.submit_light:hover, .submit_dark:hover, .submit_red:hover {
	background-color: #036;
	color: #fff !important;
}
/* }}} Merkfunktion */


/* {{{ Funktionsbereich (Merkfunktion, Teilen */
.zeige_merkfunktion {
	cursor: pointer;
	margin: 0 auto;
	padding: 0 0 4px 0;
	position: relative;
	/*right: 0.25em;
	top: 0em;*/
	width: 16px;
}

.zeige_merkfunktion .icon_merkfunktion {
	align-items: center;
	background: #666;
	color: #fff;
	cursor: pointer;
	display: flex;
	font-weight: bold;
	height: 18px;
	justify-content: center;
	line-height: 18px;
	margin-top: -2px;
	position: relative;
	text-align: center;
	text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
	width: 16px;
}
.zeige_merkfunktion .icon_merkfunktion:before {
	content: '+';
}
.zeige_merkfunktion .icon_merkfunktion:after {
	border-left: 8px solid #666;
	border-right: 8px solid #666;
	border-bottom: 4px solid transparent;
	border-top: 1px solid #666;
	bottom: -4px;
	content: '';
	height: 0;
	left: 0;
	position: absolute;
	right: 0;
}

.zeige_merkfunktion .icon_merkfunktion.zeige_gemerkt {
	background: #c30;
}
.zeige_merkfunktion .icon_merkfunktion.zeige_gemerkt:before {
	border-bottom: solid 2px currentColor;
	border-left: solid 2px currentColor;
	content: '';
	color: #fff;
	height: 4px;
	position: absolute;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	width: 8px;
}
.zeige_merkfunktion .icon_merkfunktion.zeige_gemerkt:after {
	border-left-color: #c30;
	border-right-color: #c30;
	border-top-color: #c30;
}

.zeige_teilen, .zeige_einstellungen {
	background: url(settings.svg) 0 0 no-repeat;
	background-size: 100%;
	display: inline-block;
	height: 24px;
	width: 24px;
}
.zeige_teilen {
	background-image: none;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translateX(-25%);
}

.kasten_zeige {
	background-color: #7f98b2;
	background-color: #f4f4f4;
	background-color: transparent;
	height: 32px;
	position: absolute;
	right: 15px;
	top: 0;
	z-index: 1;
}
.kasten_zeige .tabs {
	align-items: center;
	background-color: rgba(0, 0, 0, .04);
	/*border-radius: 5px 5px 0 0;*/
	cursor: pointer;
	display: flex;
	float: right;
	height: 32px;
	justify-content: center;
	margin-right: 4px;
	padding: 0 6px;
	text-align: center;
	width: 42px;
	/*opacity: .6;*/
}
.kasten_zeige .tabs.aktiv {
	background-color: #fff;
	opacity: 1;
}
.kasten_zeige .tabs:hover {
	background-color: #fff;
	opacity: 1;
}
.funktionsbereich_oben {
	background-color: #f4f4f4;
	min-height: 32px;
}
.funktionskasten {
	/*height: 0;*/
	display: none;
}
.funktionskasten.offen {
	/*border-top: 3px solid #fff;*/
}
.kasten_merkfunktion, .kasten_teilen {
	background-color: #f4f4f4;
}
.merkfunktion_form fieldset {
	padding: 0;
}
.merkfunktion_form > fieldset > .segment {
	margin: 30px 0 0 0;
}
.merkfunktion_form > fieldset > .segment:first-of-type {
	margin-top: 0;
}
.mf_standardeinstellungen .segment {
	margin: 15px 0 0 0;
}
.mf_standardeinstellungen .segment:first-of-type {
	margin-top: 0;
}
.merkfunktion_form {
	padding: 10px 0 20px 0;
}
.merkfunktion_form label {
	cursor: pointer;
	display: inline-block;
	padding-left: 26px;
	position: relative;
}
.merkfunktion_form label input {
	margin-left: -24px;
	top: 1px;
}

.funktionsbereich .subheading, .merkfunktion_form .subheading {
	display: block;
	font-weight: bold;
	margin-bottom: 10px;
}

.funktionsbereich_hinweis {
	margin: 26px 0 10px 0;
}
.kasten_merkfunktion .notiz_link {
	margin-top: 20px;
}
.merkfunktion_form .merkfunktion_notiz {
	position: relative;
}
.merkfunktion_form .merkfunktion_notiz .zeichenzahl {
	position: absolute;
	display: block;
	font-size: .625rem;
	min-height: 12px;
	right: 0;
	top: -20px;
}
.merkfunktion_form textarea {
	font-family: var(--font-stack);
	font-size: 0.9em;
	border-color: #eaeaea;
	box-sizing: border-box;
	height: 13em;
	padding: 10px;
	resize: none;
	transition: all .2s;
	width: 100%;
}
.merkfunktion_form .textarea_minimized {
	height: 3.3em;
}
.merkfunktion_form textarea:focus {
	height: 13em;
	width: 100%;
}
.merkfunktion_form .curvedarrow {
	margin-left: 6px;
}
.merkfunktion_buttons {
	margin: 20px 0;
}
.merkfunktion_form button {
	display: inline-block;
	font-size: 1em;
	margin-right: 10px;
}
.merkfunktion_form button:last-child {
	margin-right: 0;
}
.merkfunktion_form .merkfunktion_speichern {
	min-width: 6.7em;
}

.funktion_info {
	background: var(--background-color);
	border: 1px solid var(--background-color);
	padding: 5px;
}

.funktion_tipp {
	font-size: .9em;
	color: var(--font-color-medium);
	background: var(--background-color);
	padding: 10px;
	margin-top: 20px;
}
/* }}} */

/* {{{ Merkliste Ordnerauswahl */
.dropdown {
	border: 1px solid #bbb;
	border: 1px solid #eaeaea;
	margin: 0;
}
.dropdown dd, .dropdown dt {
	margin: 0px;
	padding: 0px;
}
.dropdown ul {
	margin: -1px 0 0 0;
}
.dropdown dd {
	position: relative;
}
.dropdown a,
.dropdown a:active,
.dropdown a:visited {
	color: #222;
	border: 0;
	text-decoration: none;
	outline: none;
	font-size: 12px;
}
.dropdown dt a {
	background: #fff;
	display: block;
	padding: 8px 25px 5px 10px;
	min-height: 25px;
	line-height: 24px;
	overflow: hidden;
	position: relative;
	border: 0;
}
.dropdown dt a:after {
	content: "";
	position: absolute;
	right: 15px;
	top: 10px;
	display: inline-block;
	border-right: 4px solid #bbb;
	border-bottom: 4px solid #bbb;
	width: 10px; height: 10px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transition: all 0.5s ease-in-out;
}
.dropdown dt a.dropdown_open:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	top: 16px;
}
.dropdown dt a span, .multiSel span {
	cursor: pointer;
	display: inline-block;
	padding: 0 3px 2px 0;
}
.dropdown dd ul {
	background-color: #fff;
	border: 0;
	display: none;
	left: 0;
	overflow: auto;
	padding: 2px 0;
	position: absolute;
	top: 2px;
	width: 100%;
	list-style: none;
	height: auto;
	max-height: 300px;
	z-index: 1;
	box-shadow: 1px 4px 10px -2px rgba(0, 0, 0, 0.2);
}
.dropdown span.value {
	display: none;
}
.dropdown dd ul li a {
	padding: 5px;
	display: block;
}
.dropdown dd ul li a:hover {
	background-color: #fff;
}
.multiSelect .merkordner_filtern {
	border: 0;
	box-sizing: border-box;
	padding: 5px;
	width: 100%;
}
.multiSelect label {
	cursor: pointer;
	display: block !important;
}
.multiSelect input[type=checkbox] {
	float: left;
}

.multiSelect .odnerliste {
	box-sizing: border-box;
	padding: 0 !important;
}

.multiSelect li {
	border-bottom: 1px solid #eee;
	padding: 10px;
}
.multiSelect li:first-child, .multiSelect li:last-child {
	border: 0;
}
.multiSelect li:first-child {
	background-color: #eee;
	display: flex;
	left: 0;
	padding: 0;
	position: sticky;
	top: 0;
	z-index: 1;
}
.flexwrapper {
	display: flex;
	flex-wrap: nowrap;
	flex: 1;
	padding: 8px 10px;
	text-align: right;
}
li .flexwrapper:first-child {
	flex-grow: 6;
}
.solid_button {
	background-color: #ddd;
	border: 2px solid transparent;
	border-radius: 3px;
	box-sizing: border-box;
	color: #666 !important;
	cursor: pointer;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	padding: 6px 15px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	outline: none;
	position: relative;
	top: 0;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 1);
	-webkit-transition: all 0.2s ease-in-out 0s;
	-moz-transition: all 0.2s ease-in-out 0s;
	-ms-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
	box-shadow: 0 3px 0 #eee;
}
.multiSelect .solid_button {
	background: transparent url(add_folder.svg) center center no-repeat;
	background-size: 90%;
	font-size: 1.6em;
	height: 1.4em;
	line-height: 1em;
	margin: 0 4px 0 0;
	padding: 0px 4px;
	white-space: nowrap;
	width: 1.4em;
}
.multiSelect .neuer_ordner {
	opacity: .7;
}
.multiSelect .solid_button:last-child {
	margin-right: 0;
}
.solid_button:hover {
	opacity: 1;
}
.multiSelect .toggle_switch {
	background: none;
	padding: 0;
	margin: 0 8px 0 0;
}
.multiSelect .toggle_switch input {
	background: transparent url(clock.svg) center center no-repeat;
	background-size: 24px;
	background-size: 100%;
	cursor: pointer;
	opacity: .5;
	display: block;
	height: 100%;
	margin: 0;
	top: 1px;
	width: 100%;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}
.multiSelect .toggle_switch input:checked {
	opacity: 1;
}
.multiSelect .toggle_switch input:hover {
	border: 0;
	opacity: .7;
}
.multiSelect .toggle_switch input:before, .multiSelect .toggle_switch input:after {
	display: none;
}

.close_folder {
	border: 0;
	cursor: pointer;
	height: 44px;
	position: absolute;
	left: 10px;
	top: 0;
	width: 32px;
	color: #444;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
	font-size: 1.6em;
}
.close_folder:after {
	content: "";
	position: absolute;
	left: 10px;
	top: 15px;
	display: inline-block;
	border-right: 5px solid #999;
	border-bottom: 5px solid #999;
	width: 12px; height: 12px;
	transform: rotate(130deg);
	-webkit-transform: rotate(130deg);
	-moz-transform: rotate(130deg);
	-ms-transform: rotate(130deg);
	-o-transform: rotate(130deg);
}
/* }}} */


/* {{{ Icons */
.icon-close {
	box-sizing: border-box;
	position: relative;
	display: block;
	transform: scale(var(--iconscale,1));
	width: 22px;
	height: 22px;
	border: 2px solid transparent;
	border-radius: 40px
}
.icon-close::after,
.icon-close::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	width: 16px;
	height: 4px;
	background: currentColor;
	transform: rotate(45deg);
	border-radius: 5px;
	top: 8px;
	left: 1px
}
.icon-close::after {
	transform: rotate(-45deg)
}

.icon-time {
	box-sizing: border-box;
	color: #666;
	position: relative;
	display: block;
	transform: scale(var(--iconscale,1));
	width: 18px;
	height: 18px;
	border-radius: 100%;
	border: 2px solid transparent;
	box-shadow: 0 0 0 2px currentColor
}
.icon-time::after {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	width: 7px;
	height: 7px;
	border-left: 2px solid;
	border-bottom: 2px solid;
	top: 1px;
	left: 5px
}

.icon-share {
	box-sizing: border-box;
	color: #666;
	position: relative;
	display: block;
	transform: scale(var(--ggs, 1));
	width: 6px;
	height: 6px;
	background: currentColor;
	border-radius: 100px;
	box-shadow:
	10px -6px 0,
	10px 6px 0;
}
.icon-share::after,
.icon-share::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	border-radius: 3px;
	width: 10px;
	height: 2px;
	background: currentColor;
	left: 2px;
}
.icon-share::before {
	top: 0;
	transform: rotate(-35deg);
}
.icon-share::after {
	bottom: 0;
	transform: rotate(35deg);
}

.icon-calendar,
.icon-calendar::before {
	display: block;
	box-sizing: border-box
}
.icon-calendar {
	position: relative;
	transform: scale(var(--iconscale,1));
	width: 18px;
	height: 18px;
	border: 2px solid;
	border-top: 4px solid;
	border-radius: 3px;
	border-color: #666;
}
.icon-calendar::before {
	content: "";
	position: absolute;
	width: 10px;
	border-radius: 3px;
	left: 2px;
	background: #666;
	height: 2px;
	top: 2px
}

.icon-chevron-down {
	box-sizing: border-box;
	color: #666 !important;
	position: relative;
	display: block;
	transform: scale(var(--iconscale, 1));
	width: 22px;
	height: 22px;
	border: 2px solid transparent;
	border-radius: 100px;
}
.icon-chevron-down::after {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	width: 10px;
	height: 10px;
	border-bottom: 2px solid;
	border-right: 2px solid;
	transform: rotate(45deg);
	left: 4px;
	top: 2px;
}

.icon-chevron-up {
	box-sizing: border-box;
	color: #666 !important;
	position: relative;
	display: block;
	transform: scale(var(--iconscale, 1));
	width: 22px;
	height: 22px;
	border: 2px solid transparent;
	border-radius: 100px;
}
.icon-chevron-up::after {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	width: 10px;
	height: 10px;
	border-top: 2px solid;
	border-right: 2px solid;
	transform: rotate(-45deg);
	left: 4px;
	bottom: 2px;
}

.icon-arrows-exchange {
	box-sizing: border-box;
	color: #666 !important;
	position: relative;
	display: block;
	transform: scale(var(--iconscale,1));
	width: 16px;
	height: 14px
}
.icon-arrows-exchange::after,
.icon-arrows-exchange::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	height: 2px;
	background: currentColor;
	border-radius: 4px
}
.icon-arrows-exchange::before {
	width: 6px;
	transform: rotate(45deg);
	box-shadow: 2px -13px 0;
	top: 10px
}
.icon-arrows-exchange::after {
	width: 12px;
	box-shadow: -4px 4px 0;
	left: 4px;
	top: 4px
}

.arrow-up.icon {
	color: #444;
	position: absolute;
	margin-left: 10px;
	margin-top: 3px;
	width: 1px;
	height: 14px;
	background-color: currentColor;
}

.arrow-up.icon:before {
	content: '';
	position: absolute;
	left: -4px;
	top: 1px;
	width: 8px;
	height: 8px;
	border-top: solid 1px currentColor;
	border-right: solid 1px currentColor;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.edit-pen.icon {
	color: #888;
	position: relative;
	margin-left: 5px;
	width: 14px;
	height: 2px;
	border-radius: 1px;
	border: solid 1px currentColor;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	display: inline-block;
	top: -2px;
}
.edit-pen.icon:before {
	content: '';
	position: absolute;
	left: -12px;
	top: -1px;
	width: 0px;
	height: 0px;
	border-left: solid 5px transparent;
	border-right: solid 5px currentColor;
	border-top: solid 2px transparent;
	border-bottom: solid 2px transparent;
}

.curvedarrow {
	float: left;
	position: relative;
	width: 0;
	height: 0;
	border-top: 9px solid transparent;
	border-right: 9px solid #999;
	transform: rotate(224deg);
}
.curvedarrow:after {
	content: "";
	position: absolute;
	border: 0 solid transparent;
	border-top: 3px solid #999;
	border-radius: 20px 0 0 0;
	top: -12px;
	left: -9px;
	width: 12px;
	height: 12px;
	transform: rotate(45deg);
}

.mail.icon {
	background: #fff;
	color: #666;
	position: absolute;
	margin-left: 2px;
	margin-top: 4px;
	width: 15px;
	height: 10px;
	border-radius: 1px;
	border: solid 1px currentColor !important;
}
.mail.icon:before {
	content: '';
	position: absolute;
	left: 7px;
	top: -4px;
	width: 1px;
	height: 10px;
	background-color: currentColor;
	-webkit-transform-origin: bottom;
	transform-origin: bottom;
	-webkit-transform: rotate(-54deg);
	transform: rotate(-54deg);
}
.mail.icon:after {
	content: '';
	position: absolute;
	left: 7px;
	top: -4px;
	width: 1px;
	height: 10px;
	background-color: currentColor;
	-webkit-transform-origin: bottom;
	transform-origin: bottom;
	-webkit-transform: rotate(54deg);
	transform: rotate(54deg);
}

.share-filled.icon {
	margin-left: 4px;
	margin-top: 9px;
	width: 4px;
	height: 4px;
	background-color: #444;
	border-radius: 2px;
	box-shadow: 9px -5px 0 0 #444, 9px 5px 0 0 #444;
}
.share-filled.icon::before {
	content: '';
	position: absolute;
	display: block;
	top: 1px;
	left: 3px;
	width: 8px;
	height: 1px;
	background-color: #444;
	transform-origin: left bottom;
	transform: rotate(-30deg);
}
.share-filled.icon::after {
	content: '';
	position: absolute;
	display: block;
	top: 2px;
	left: 3px;
	width: 8px;
	height: 1px;
	background-color: #444;
	transform-origin: left top;
	transform: rotate(30deg);
}

.menu.icon {
	color: #888;
	position: absolute;
	width: 17px;
	height: 1px;
	background-color: currentColor;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.menu.icon:before {
	content: '';
	position: absolute;
	top: -5px;
	left: 0;
	width: 17px;
	height: 1px;
	background-color: currentColor;
}
.menu.icon:after {
	content: '';
	position: absolute;
	top: 5px;
	left: 0;
	width: 17px;
	height: 1px;
	background-color: currentColor;
}
.copy.icon {
	margin-left: 2px;
	margin-top: 2px;
	width: 10px;
	height: 10px;
	border: 1px solid #666;
}
.copy.icon::before {
	content: '';
	display: block;
	position: absolute;
	width: 10px;
	height: 10px;
	border: 1px dotted #666;
	left: 2px;
	top: 2px;
}

.merkfunktion_icon {
	background: transparent url(merkfunktion_nichtgemerkt.svg) 0 50% no-repeat;
	background-size: 100%;
	display: inline-block;
	height: 1.4rem;
	position: relative;
	width: 1.4rem;
}
.merkfunktion_icon.merkfunktion_gemerkt {
	background-image: url(merkfunktion_gemerkt.svg);
}

.bookmark.icon {
	background-color: transparent;
	border: solid 8px #c30;
	border-bottom: solid 8px transparent;
	border-top-width: 1px;
	color: #fff;
	display: flex;
	font-size: .7rem;
	justify-content: center;
	position: absolute;
	right: .5rem;
	top: 0;
	width: 0;
}

.icon_waage {
	background: url(/jcg/waage.svg) 0 0/100% no-repeat;
	display: inline-block;
	height: 16px;
	width: 16px;
}

.icon_buch {
	background: url(/jcg/buch.svg) 0 0/100% no-repeat;
	display: inline-block;
	height: 16px;
	width: 16px;
}

.icon-undo {
	box-sizing: border-box;
	position: relative;
	display: block;
	transform: scale(var(--iconscale,1));
	width: 14px;
	height: 14px;
	border: 2px solid;
	border-left-color: transparent;
	border-radius: 100px
}
.icon-undo::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	width: 6px;
	height: 6px;
	border-top: 2px solid;
	border-left: 2px solid;
	top: -3px;
	left: -1px;
	transform: rotate(-68deg)
}

.icon-folder {
	transform: scale(var(--iconscale,1))
}
.icon-folder,
.icon-folder::after {
	box-sizing: border-box;
	position: relative;
	display: block;
	width: 22px;
	height: 16px;
	border: 2px solid;
	border-radius: 3px
}
.icon-folder::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 4px;
	border-bottom: 0;
	border-top-left-radius: 2px;
	border-top-right-radius: 4px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	top: -5px
}

.icon-bell,
.icon-bell::before {
	border-top-left-radius: 100px;
	border-top-right-radius: 100px
}
.icon-bell {
	box-sizing: border-box;
	position: relative;
	display: block;
	transform: scale(var(--iconscale,1));
	border: 2px solid;
	border-bottom: 0;
	width: 14px;
	height: 14px
}
.icon-bell::after,
.icon-bell::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute
}
.icon-bell::before {
	background: currentColor;
	width: 4px;
	height: 4px;
	top: -4px;
	left: 3px
}
.icon-bell::after {
	border-radius: 3px;
	width: 16px;
	height: 10px;
	border: 6px solid transparent;
	border-top: 1px solid transparent;
	box-shadow:
	inset 0 0 0 4px,
	0 -2px 0 0;
	top: 14px;
	left: -3px;
	border-bottom-left-radius: 100px;
	border-bottom-right-radius: 100px
}

.icon-stack,
.icon-stack::after,
.icon-stack::before {
	display: block;
	box-sizing: border-box;
	width: 14px;
	height: 14px;
	border: 2px solid
}
.icons-stack {
	margin-right: 8px;
	margin-top: 8px;
	transform: scale(var(--iconscale,1));
	position: relative
}
.icon-stack::after,
.icon-stack::before {
	content: "";
	position: absolute;
	border-left: 0;
	border-bottom: 0;
	right: -5px;
	top: -5px
}
.icon-stack::before {
	right: -8px;
	top: -8px
}

.icon-layout-list {
	transform: scale(var(--iconscale,1))
}
.icon-layout-list,
.icon-layout-list::after,
.icon-layout-list::before {
	box-sizing: border-box;
	position: relative;
	display: block;
	width: 10px;
	height: 2px;
	border-left: 6px double;
	border-right: 4px solid
}
.icon-layout-list::after,
.icon-layout-list::before {
	content: "";
	position: absolute;
	left: -6px
}
.icon-layout-list::after {
	bottom: 4px
}
.icon-layout-list::before {
	top: 4px
}

.icon-external {
	box-sizing: border-box;
	position: relative;
	display: block;
	transform: scale(var(--iconscale, 1));
	width: 12px;
	height: 12px;
	box-shadow:
		-2px 2px 0 0,
		-4px -4px 0 -2px,
		4px 4px 0 -2px;
	margin-left: -2px;
	margin-top: 1px;
}
.icon-external::after,
.icon-external::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	right: -4px;
}
.icon-external::before {
	background: currentColor;
	transform: rotate(-45deg);
	width: 12px;
	height: 2px;
	top: 1px;
}
.icon-external::after {
	width: 8px;
	height: 8px;
	border-right: 2px solid;
	border-top: 2px solid;
	top: -4px;
}


li a.icon {
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: 5px 50%;
	padding-left: 32px;
}
li a.icon_verlauf {
	background-image: url(history.svg);
}

li a.icon_merkfunktion {
	background-image: url(merkfunktion_nichtgemerkt.svg);
}
a.icon_merkfunktion {
	background-image: url(merkfunktion_nichtgemerkt.svg);
	background-repeat: no-repeat;
	background-size: 1.2rem;
	padding-left: 20px;
}
a.icon_merkfunktion.gemerkt {
	background-image: url(merkfunktion_gemerkt.svg);
}

li a.icon_suche {
	background-image: url(search_grey.svg);
}

li a.icon_einstellungen {
	background-image: url(settings.svg);
}

li a.icon_daten {
	background-image: url(benutzer_avatar_grey.svg);
}

li a.icon_ausloggen {
	background-image: url(logout.svg);
}

.zahnrad {
	background: url(settings.svg) 50% 50% no-repeat;
	background-size: 100%;
	display: inline-block;
	height: 1em;
	vertical-align: middle;
	width: 1em;
}

.ellipsis.icon {
	background: url(ellipsis_round.svg) 50% 50% no-repeat;
	background-size: 100%;
	display: inline-block;
	height: 1em;
	vertical-align: middle;
	width: 1em;
}

.nach_oben_dreieck {
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 4px 8px 4px;
	border-color: transparent transparent #333333 transparent;
	margin-bottom: 1px;
}
.nach_oben_dreieck:hover {
	border-color: transparent transparent #c30 transparent;
}

/* https://projects.lukehaas.me/css-loaders/ */
.loader,
.loader:after {
	border-radius: 50%;
	width: 2em;
	height: 2em;
}
.loader {
	margin: 10px auto;
	font-size: 10px;
	position: relative;
	text-indent: -9999em;
	border: .4em solid rgba(0, 0, 0, 0.2);
	border-left-color: #888;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;
}
@-webkit-keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
/* }}} */


/* Key classes */
/* Base style, essential for every key. */
kbd, .key {
	display: inline;
	display: inline-block;
	min-width: 1em;
	padding: .2em .3em;
	font: normal 11px/1 "Lucida Grande", Lucida, sans-serif;
	text-align: center;
	text-decoration: none;
	-moz-border-radius: .3em;
	-webkit-border-radius: .3em;
	border-radius: .3em;
	border: none;
	cursor: default;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
kbd[title], .key[title] {
	cursor: help;
}

/* Dark style for display on light background. This is the default style. */
kbd, kbd.dark, .dark-keys kbd, .key, .key.dark, .dark-keys .key {
	background: rgb(80, 80, 80);
	background: -moz-linear-gradient(top, rgb(60, 60, 60), rgb(80, 80, 80));
	background: -webkit-gradient(linear, left top, left bottom, from(rgb(60, 60, 60)), to(rgb(80, 80, 80)));
	color: rgb(250, 250, 250);
	text-shadow: -1px -1px 0 rgb(70, 70, 70);
	-moz-box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
	-webkit-box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
	box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
}

/* Light style for display on dark background. */
kbd.light, .light-keys kbd, .key.light, .light-keys .key {
	background: rgb(250, 250, 250);
	background: -moz-linear-gradient(top, rgb(210, 210, 210), rgb(255, 255, 255));
	background: -webkit-gradient(linear, left top, left bottom, from(rgb(210, 210, 210)), to(rgb(255, 255, 255)));
	color: rgb(50, 50, 50);
	text-shadow: 0 0 2px rgb(255, 255, 255);
	-moz-box-shadow: inset 0 0 1px rgb(255, 255, 255), inset 0 0 .4em rgb(200, 200, 200), 0 .1em 0 rgb(130, 130, 130), 0 .11em 0 rgba(0, 0, 0, .4), 0 .1em .11em rgba(0, 0, 0, .9);
	-webkit-box-shadow: inset 0 0 1px rgb(255, 255, 255), inset 0 0 .4em rgb(200, 200, 200), 0 .1em 0 rgb(130, 130, 130), 0 .11em 0 rgba(0, 0, 0, .4), 0 .1em .11em rgba(0, 0, 0, .9);
	box-shadow: inset 0 0 1px rgb(255, 255, 255), inset 0 0 .4em rgb(200, 200, 200), 0 .1em 0 rgb(130, 130, 130), 0 .11em 0 rgba(0, 0, 0, .4), 0 .1em .11em rgba(0, 0, 0, .9);
}


.bgbl table td {
	display: block;
	padding: 0;
}

.bgbl table tr td:first-child {
	padding-top: 10px;
}

.gesetze_bgbl_tabelle {
	font-size: .9em;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

/* {{{ Anlagen Tabellen */
.kasten1, table.inhalte0 tbody, .gl_ebene0, .gl_ebene1, .gl_ebene2, .gl_ebene3, .tabellentitel {
	font-family: inherit !important;
}
table.inhalte0, table.inhalte0 .Vorbemerkung, table.inhalte0 .Anmerkung {
	font-size: inherit !important;
}
table.inhalte0 thead, table.inhalte0 tbody, .kasten1, .kasten2 {
	width: auto !important;
}
table.inhalte0 tbody, table.inhalte0 thead {
	border-color: #ddd !important;
}
table.inhalte0 tr {
	display: block;
}
table.inhalte0 th {
	border: 0 !important;
	border-bottom: 1px solid #ddd !important;
}
table.inhalte0 td, table.inhalte0 th {
	box-sizing: border-box;
	display: block;
	width: 100% !important;
}
table.inhalte0 td.inhalte1 {
	border-right: 0 !important;
	border-top: 3px solid #fff;
	font-weight: bold;
}
td.inhalte3, td.inhalte4 {
	border: 0 !important;
}

/* Anlagen Tabellen }}} */


/* {{{ Stellenanzeigen */
.default_button {
	cursor: pointer;
	background-color: #666;
	border: 0;
	color: #fff;
	font-size: 1em;
	padding: .2em .5em;
}
.default_button:hover, .default_button:focus {
	background-color: #036;
	color: #fff;
}
.container_stellenanzeigen {
	display: block;
	font-size: .9em;
	line-height: 1.6em;
	width: 260px;
	margin: 40px auto 30px auto;
}
.stellenanzeige_buttons a {
	background-color: #fff;
	border: 1px solid #eee;
	clear: both;
	float: right;
	margin: 5px 6px;
	padding: 2px 5px;
	display: none;
}
	.stellenanzeige_buttons a:hover {
		border-color: #ddd;
	}
.container_stellenanzeigen .anzeige_kopf a {
	border-bottom: 0;
	color: #444;
}
	.container_stellenanzeigen:hover .anzeige_kopf a {
		border-bottom: 1px dotted;
		color: #c30;
	}
	.container_stellenanzeigen:hover .anzeige_kopf a:hover {
		color: #036;
	}
.anzeigen_item {
	display: flex;
	flex-wrap: wrap;
	max-width: 525px;
	position: relative;
}
.anzeige_sub {
	background-color: #fdfdfd;
	border: 1px solid #eee !important;
	border-top-color: #ddd !important;
	color: #222 !important;
	cursor: pointer;
	min-height: 155px;
	margin: 10px;
	padding: 10px;
	position: relative;
	width: 220px;
}
.anzeige_sub:hover {
	border-color: #ddd !important;
	color: #222 !important;
	background-color: #f9f9f9;
}
.anzeige_sub .bookmark {
	background-image: url(/jcg/stellenmarkt/stepstone_icon.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 14px;
	height: 20px;
	left: 3px;
	position: absolute;
	top: 6px;
	width: 20px;
	z-index: 1;
}
.anzeige_sub.lto .bookmark {
	background-image: url(/jcg/stellenmarkt/lto_icon.svg);
	background-size: 18px;
	left: 5px;
	top: 6px;
}
.filter_sub {
	height: auto;
	font-size: 1.4em;
	margin: 10px;
	min-height: 1em;
	width: 100%;
}
.anzeige_self {
	background: #d8e0e8;
	color: #222 !important;
	text-align: center;
}
.anzeige_self:hover {
	color: #222 !important;
	opacity: .9;
}
.anzeige_self h3 {
	color: #222;
	margin-top: 40px;
}
.anzeige_logo {
	margin-bottom: 5px;
	position: relative;
	text-align: center;
	z-index: 0;
}
.anzeige_logo img {
}
.anzeige_kopf {
	color: #444;
	font-size: 1.8em;
	font-weight: bold;
	text-align: center;
}

#list-container {
	margin: 0 auto;
	overflow: hidden;
}
.sm_button {
	float: none !important;
	margin-top: 15px;
}

.list {
	/*
	min-width: 1400px;
	float: left;
	*/
}

.anzeige_link {
	background-color: #fff;
	border: 1px solid #fff;
	border-top-color: #ddd;
	color: #fe5f3a;
	cursor: pointer;
	font-weight: bold;
	margin-top: 10px;
	width: 169px;
	padding: 5px;
	text-align: center;
}
.anzeige_link:hover {
	background-color: #f9f9f9;
	border-color: #ddd;
}

#arrowR, #arrowL {
	background-color: #666;
	border: 1px solid #ddd;
	color: #ddd;
	cursor: pointer;
	font-weight: bold;
	margin-top: 10px;
	padding: 5px 0;
	text-align: center;
	vertical-align: center;
	width: 15px;
}
#arrowR:hover, #arrowL:hover {
	background-color: #fff;
	color: #666;
}
#arrowR {
	float: right;
}
#arrowL {
	float: right;
}
#arrowR.disabled, #arrowL.disabled {
	opacity: .5;
	cursor: default;
}
#arrowR.disabled:hover, #arrowL.disabled:hover {
	background-color: #666;
	color: #ddd;
	cursor: default;
}

.chevron::before {
	border-style: solid;
	border-width: 0.25em 0.25em 0 0;
	content: "";
	display: inline-block;
	height: 0.45em;
	left: 0.15em;
	position: relative;
	top: 0.45em;
	transform: rotate(-45deg);
	vertical-align: top;
	width: 0.45em;
}

.chevron.right:before {
	left: -.15em;
	transform: rotate(45deg);
}

.chevron.bottom:before {
	top: 0;
	transform: rotate(135deg);
}

.chevron.left:before {
	left: 0.15em;
	transform: rotate(-135deg);
}
@media (min-width: 540px) {
	.container_stellenanzeigen {
		width: 540px;
	}
	.anzeige_sub {
		float: left;
	}
}
/* }}} */


/* {{{ Werbung */

#doctrine_banner {
	background: #8D57C7;
	background: linear-gradient(90deg,rgba(141, 87, 199, 1) 0%, rgba(79, 53, 117, 1) 50%, rgba(141, 87, 199, 1) 100%);
	color: #fff;
	display: none !important;
	padding: .6rem 0;
}
body[data-suchseite="true"] #doctrine_banner {
	margin-top: 42px;
}
#doctrine_banner_content {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: .5rem;
	margin: 0 auto;
	max-width: 960px;
	padding: 0 10px;
	position: relative;
}
#doctrine_logo {
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFQAAABQCAMAAACwJKLlAAAAbFBMVEUCuHXg9u7////Q8uXA7d2Q4MJx17JByZdh0qkiwYaQ4MO/7d3P8uWg5MsSvH1h06lBypdx17ESvH6A27qA3Lrv+/aR4MOB27rf9u5w17FRzqHQ8uZSz6Dv+/eg5csxxY8iwIaw6dTA7dyv6dRJMhycAAABRElEQVR42u3XbW+DIBSGYUCt0PYgDl33xrqX//8ft8hha6JpUvawT9wfS3I1moMBUavVarViSbWZbNpu1+ei6mqtNjno/nC87lIWK+wgf4CYcyMd/8reserFRWaSrM5jlqpX6NKQ2Psc1GyjwhCrhEG5KakAdK2ekKggVh0STaPxYIGocIpXkahoeVwtEnUq9ohExcyfFyjqVcwiUceoRqLp+Tso2vJLhaJ7nn8oqlUMij6VQPuKfjeXQJ9LjNQBinrepiV21EuJvW+gaNr6SLTnVwpFiZ8eikoeKCTKU+qgqOQjGhIdl7VgkKgJfJIAolbyOAFR2ywrr+L2zhGl9YLMNoXfPtfZk1qacsxzULHGXG7OLv4c3M2gfdPv6reGvNd65+kj/VFnURfeVOgM+MIbPgcr8i68WxGRH4yo1Wq12v/1BZnpEvt516GNAAAAAElFTkSuQmCC');
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 50% center;
	border-radius: 5px;
	height: 22px;
	width: 22px;
}
#doctrine_button {
	border: none;
	border-radius: 1rem;
	background-color: #02b875;
	color: #fff;
	cursor: pointer;
	font-size: .85em;
	font-weight: bold;
	padding: .5rem .6rem;
	white-space: nowrap;
}
#doctrine_button:hover {
	background-color: #018955;
}
#doctrine_banner_close_container {
	flex: 1 0;
	text-align: right;
}
#doctrine_banner_close {
	align-content: center;
	cursor: pointer;
	display: flex;
	font-weight: bold;
	font-size: 1.2rem;
	height: 1.5rem;
	justify-content: center;
	opacity: .5;
	position: absolute;
	right: .5rem;
	top: 0;
	width: 1.5rem;
}
#doctrine_banner_close:hover {
	opacity: .8;
}

.doctrine_item {
	display: none;
}
.doctrine_top_dismissed #doctrine_banner {
	display: none;
}
.doctrine_visible .doctrine_item {
	display: block;
}

/* }}} */


/* {{{ Modal */
.modal {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 0vh;
	background-color: transparent;
	overflow: hidden;
	transition: background-color 0.25s ease;
	z-index: 9999;
}
.modal.open {
	position: fixed;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
	transition: background-color 0.25s;
}
.modal.open > .modal-wrapper {
	transform: scale(1);
}
.modal .modal-wrapper {
	position: absolute;
	display: flex;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition-delay: 0.15s;
	background-color: white;
	transform: scale(0);
	transition: transform 0.25s;
}
.modal .content-wrapper {
	box-sizing: border-box;
	height: 100%;
	margin: 0;
	max-height: 100%;
	overflow: auto;
	max-height: 100%;
	padding: 1rem;
	width: 100%;
}
.modal-close {
	cursor: pointer;
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: none;
	background-color: transparent;
	font-size: 1.5rem;
	z-index: 3;
}
.modal-close:before, .modal-close:after {
	position: absolute;
	content: '';
	width: 1.25rem;
	height: 0.125rem;
	background-color: #444;
	background-color: #666;
	border-radius: 5px;
	height: 0.24rem;
}
.modal-close:before {
	transform: rotate(-45deg);
}
.modal-close:after {
	transform: rotate(45deg);
}
.modal-close:hover:before, .modal-close:hover:after {
	background-color: #b00;
}
.modal .content-wrapper .modal-header {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin: 0;
	padding: 0 0 1.25rem;
}
.modal .content-wrapper .modal-header h2 {
	font-size: 1.5rem;
	font-weight: bold;
	margin: 0;
}
.modal .content-wrapper #headgesetz {
	background: none;
	padding: 0;
	text-align: left;
}
.modal .content-wrapper .modal-content {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
}
.modal .content-wrapper .modal-content ul {
	padding-left: .5rem;
	list-style: disc;
	list-style-image: none;
}
.modal .content-wrapper .modal-content p, .modal .content-wrapper .modal-content ul {
	margin-top: 0;
	margin-bottom: 1rem;
}
.modal .content-wrapper .modal-content li {
	margin-bottom: .75rem;
}
.modal .content-wrapper .modal-footer {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	margin: 0;
	padding: 1.875rem 0 0;
}
.modal .content-wrapper .modal-footer .action {
	position: relative;
	margin-left: 0.625rem;
	padding: 0.625rem 1.25rem;
	border: none;
	border-radius: 0.25rem;
	color: white;
	font-size: 0.87rem;
	font-weight: 300;
	overflow: hidden;
	z-index: 1;
}
.modal .content-wrapper .modal-footer .action:before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 0%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.2);
	transition: width 0.25s;
	z-index: 0;
}
.modal .content-wrapper .modal-footer .action:hover:before {
	width: 100%;
}
.modal.pending .modal-content, .modal.pending footer {
	opacity: .5;
}
.modal.success .modal-content {
	display: none;
}
.modal.success .modal-footer {
	display: none;
}
.modal.success .modal-success {
	display: block;
}
.modal .modal-success {
	color: #0b0;
	display: none;
	height: 12rem;
	font-size: 13rem;
	line-height: 9rem;
	text-align: center;
}
.btn {
	background: #036;
	border: none !important;
	border-radius: 5px;
	color: #fff !important;
	cursor: pointer;
	display: inline-block;
	font-size: 1em;
	font-weight: 700;
	line-height: 1;
	padding: 0.8rem 1.4rem;
	text-align: center;
	transition: background .2s;
}
.btn:hover {
	background: #8198B5;
}
.beispieltext {
	background-color: lavender;
	background-color: lightblue;
	/*background-color: linen;*/
}
/* }}} */


/* {{{ Form customizations */
.info-box {
	background: var(--background-color-light);
	border-left: 4px solid var(--djo-blue-dark);
	padding: 15px;
	margin: 20px 0;
}
.info-box p {
	margin: 0;
	padding: 0;
}

.form-group {
	margin-bottom: 20px;
}

.form-group label {
	display: block;
	margin-bottom: 5px;
	font-weight: 600;
	color: var(--font-color-medium);
}

.required::after {
	content: " *";
	color: #dc3545;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group textarea,
.form-group select {
	background: var(--background-color);
	box-sizing: border-box;
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--border-color);
	border-radius: 4px;
	transition: border-color 0.3s;
}

.form-group input[type="text"]:focus,
.form-group input[type="email"]:focus,
.form-group textarea:focus,
.form-group select:focus {
	outline: none;
	border-color: var(--border-color-dark);
}

.form-group textarea {
	resize: vertical;
	min-height: 80px;
}

.radio-group {
	display: flex;
	gap: 20px;
	margin-top: 10px;
}

.radio-label {
	display: flex;
	align-items: center;
	font-weight: normal;
}

.radio-label input[type="radio"] {
	margin-right: 8px;
}

.button-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 30px;
}

.button-group button {
	padding: 12px 24px;
	font-size: unset;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s;
}

.button-group .btn-primary {
	flex: 1 0 65%;
}

.button-group .btn-secondary {
	flex: 1 0 35%;
}

/* }}} */


/* Slider:
 * https://codepen.io/trevanhetzel/pen/rOVrGK
 * https://codepen.io/thebabydino/pen/bNQeeV
 * https://codepen.io/thebabydino/pen/jEeGXq
 */
.range {
	position: relative;
	width: 236px;
	height: 5px;
}
.range input {
	width: 100%;
	position: absolute;
	top: 2px;
	height: 0;
	-webkit-appearance: none;
}
.range input:focus {
	outline: none;
}
input[type=range]::-moz-focus-outer {
	border: 0;
}
.range input::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 10px;
	height: 18px;
	margin: -8px 0 0;
	background: #ddd;
	cursor: pointer;
	border: 1px solid #fff;
	border-radius: 2px;
}
.range input::-moz-range-thumb {
	width: 10px;
	height: 18px;
	margin: -8px 0 0;
	background: #ddd;
	cursor: pointer;
	border: 1px solid #fff;
	border-radius: 2px;
}
.range input::-ms-thumb {
	width: 10px;
	height: 18px;
	margin: -8px 0 0;
	background: #ddd;
	cursor: pointer;
	border: 1px solid #fff;
	border-radius: 2px;
}
.range input::-webkit-slider-runnable-track {
	width: 100%;
	height: 2px;
	cursor: pointer;
	background: #ccc;
}
.range input::-moz-range-track {
	width: 100%;
	height: 2px;
	cursor: pointer;
	background: #ccc;
}
.range input::-ms-track {
	width: 100%;
	height: 2px;
	cursor: pointer;
	background: #ccc;
}
.range input:focus {
	background: none;
	outline: none;
}
.range input::-ms-track {
	width: 100%;
	cursor: pointer;
	background: transparent;
	border-color: transparent;
	color: transparent;
}
.range-labels {
	margin: 18px -19px 0;
	padding: 0;
	list-style: none;
}
.range-labels li {
	position: relative;
	float: left;
	width: 56px;
	text-align: center;
	color: #888;
	cursor: pointer;
}
.range-labels li:hover {
	color: #444;
}
.range-labels li:hover::before {
	background: #999;
}
.range-labels li::before {
	position: absolute;
	top: -23px;
	right: 0;
	left: 0;
	content: "";
	margin: 0 auto;
	width: 3px;
	height: 9px;
	background: #ccc;
	border: 1px solid #fff;
}
.range-labels .range_selected {
	color: #222;
}
.range-labels .range_selected::before {
	display: none;
}

/* }}} */

/* {{{ Suchseite */
#verlauf_liste .tokenfield {
	line-height: 2.4em;
	padding: 4px 0;
}
.tokenfield .token {
	background-color: #eee;
	border-radius: 3px;
	color: #666;
	display: inline-block;
	height: 1.1em;
	line-height: 1.1em;
	margin: 0 6px 0 0;
	max-width: 50%;
	position: relative;
	overflow: hidden;
	padding: 5px;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.tokenfield .filter {
	background-color: #d8e0e8;
}
#nav_verlauf .tokenfield .token {
	border: 1px solid #fff;
	display: inline;
	padding: 0 5px;
}
/* }}} */

/* {{{ Overlay */

.ui-widget-overlay {
	background: rgba(0, 0, 0, 0.3);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 95; /*9998;*/
}

#dejure .fancybox-close {
	border: 0 !important;
	color: #999;
	display: inline-block;
	height: 20px;
	width: 20px;
	font-size: 2em;
	font-weight: bold;
	opacity: .7;
	position: absolute;
	right: 15px;
	top: 15px;
	text-align: center;
}
#dejure .fancybox-close:before {
	content: "\00d7";
}

.notification {
	background-color: rgba(0, 0, 0, .7);
	border-radius: 5px;
	color: #fff;
	left: 50%;
	max-width: 90%;
	min-width: 260px;
	padding: 10px;
	position: fixed;
	text-align: left;
	-ms-transform: translateX(-50%); /* IE 9 */
	-webkit-transform: translateX(-50%); /* Safari */
	transform: translateX(-50%);
	top: 45%;
	z-index: 100;
}

.close_x {
	border: 0;
	color: #fff;
	cursor: pointer;
	font-size: 31px;
	font-weight: bold;
	right: 20px;
	line-height: 1em;
	position: fixed;
	text-decoration: none;
	text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.4);
	top: 10px;
	z-index: 98;
}
	.close_x:before {
		content: "×";
	}
	.close_x:hover {
		color: #ddd;
	}

.notification_light .close_x {
	color: #777;
	font-weight: normal;
	font-size: 1.3em;
	height: 1.6em;
	line-height: 1.6em;
	position: absolute;
	right: 0;
	text-align: center;
	top: 0;
	text-shadow: none;
	width: 1.6em;
}
.notification_light .close_x:before {
	content: "\2716";
}
.notification_light .close_x:hover {
	color: #aaa;
}
.notification_light {
	background-color: rgba(245, 245, 245, .95);
	font-size: .85em;
	max-width: 300px;
	display: block;
	padding: 1.5em;
	width: 95%;
	-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
	z-index: 100;
}
.notification_fixed {
	bottom: 10px;
	left: 50%;
	position: fixed;
	transform: translateX(-50%);
}
/* }}} */


#zettel_umfrage {
	border-bottom-width: 0;
	color: #ddd;
	display: block;
	height: 20px;
	margin-bottom: -10px;
	overflow: hidden;
	padding: 10px;
	background-color: #222;
}
#zettel_umfrage:hover {
	background-color: #ddd;
	color: #222;
}
#disable_umfrage {
	color: #aaa;
	display: block;
	float: right;
	font-size: 1.6em;
	font-weight: bold;
	height: 26px;
	margin-right: -10px;
	width: 26px;
}
#disable_umfrage:after {
	content: "×";
}

nav {
	height: 0;
}
/* auszublenden */
.hidemobile, nav, #derTooltip, #suchoptionen, #baugeruest, #admin, #aufschlagenset, .debug, #werbungrechtsfloat, #g_small_right, #googlecontent, #googlecontent1, .googlecontent, #footer, .ansichtumschalten, #funchelper, #funchelper_gross, #Suchfeldform, form#Paragraph, #aktuell, .aktuell, a.djo_links, #extra_zettel, #benutzer_link_kopf {
	visibility: hidden;
	display: none !important;
}
.versteckt {
	display: none;
}
.force_versteckt {
	display: none !important;
}

.hidden {
	visibility: hidden;
}
.sichtbar {
	display: block;
}
.force_sichtbar {
	display: block !important;
}


#swipe-pages-container {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.swipe-page {
	width: 100%;

	-moz-transition: transform 200ms linear 0ms;
	-webkit-transition: transform 200ms linear 0ms;
	transition: transform 200ms linear 0ms;
}

.swipe-fast .swipe-page {
	-moz-transition: transform 150ms linear 0ms;
	-webkit-transition: transform 150ms linear 0ms;
	transition: transform 150ms linear 0ms;
}

.swipe-page:focus {
	outline: none;
}

.swipe-no-transition,
.swipe-fast .swipe-no-transition {
	-moz-transition: none;
	-webkit-transition: none;
	transition: none;
}

.swipe-page-prev,
.swipe-page-next {
	position: fixed;
	top: 0px;
	left: 0px;
	margin-top: 62px;
}

.mobildiv-placeholder {
	/*background-size: 40px 12px;*/
	display: block;
	height: 120px;
	min-width: 320px;
	padding-top: 13px;
	/*background: transparent url(anzeige_horizontal.svg) no-repeat 0 0;*/
	margin: 0 auto 10px auto;
}

.swipe-page-prev {
	-moz-transform: translate3d(-100%, 0px, 0px);
	-webkit-transform: translate3d(-100%, 0px, 0px);
	transform: translate3d(-100%, 0px, 0px);
}

.swipe-page-next {
	-moz-transform: translate3d(100%, 0px, 0px);
	-webkit-transform: translate3d(100%, 0px, 0px);
	transform: translate3d(100%, 0px, 0px);
}


/* {{{ Gesamt */
#gesamt_mehrzu {
	align-items: stretch;
	display: flex;
	gap: 8px;
	margin-top: 10px;
}
#gesamt_waagenlink {
	display: block;
	min-width: 3.2rem;
}
#gesamt_querverweiselink, #gesamt_standlink {
	display: flex;
	align-items: center;
	min-height: 1rem;
	width: 1.2rem;
	margin-left: 5px;
}
#gesamt_mehrzu a {
	background-color: #eee;
	background-color: rgba(255, 255, 255, .6);
	background-position: 50% 50% !important;
	border-radius: 5px;
	display: flex;
	flex: 1;
	flex-direction: column;
	justify-content: center;
	padding: .2rem;
	margin: 0;
	width: 2rem;
}
#gesamt_mehrzu a:not(.disabled):hover {
	background-color: #fff;
}

#gesamt_mehrzu .icon_merkfunktion {
	background-position: 0 50%;
	background-repeat: no-repeat;
	background-size: 1.2rem;
}

#gesamt_mehrzu a.versteckt {
	display: none;
}
#gesamt_mehrzu .disabled {
	cursor: unset;
	opacity: .4;
}

#content.gesetze_gesamt #neues_scroll {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin-bottom: 40px;
	max-height: 400px;
	overflow-y: auto;
	overflow-x: hidden;
}
#content.gesetze_gesamt #neues_scroll .reihe {
	flex: 0 0 100%;
	margin: 4px 0;
}
#content.gesetze_gesamt #neues_scroll a {
	flex: 1 0 auto;
}

#aktuell.mobile_sidebar {
	display: block !important;
	overflow: auto;
	position: fixed !important;
	top: 0 !important;
	visibility: visible;
	z-index: 95;
}
.mobile_sidebar {
	background: #f4f4f4;
	border-left: 4px solid #fff;
	bottom: 0;
	box-shadow: 4.0px 8.0px 8.0px hsl(0deg 0% 0% / 0.38);
	display: block;
	flex-grow: 1;
	margin: 0;
	order: 2;
	padding-bottom: 40px;
	padding-top: 40px;
	position: fixed;
	right: 0;
	top: 0;
	transform: translateX(300px);
	transition: transform 300ms ease-in-out;
	width: 300px;
	z-index: 5;
}
.mobile_sidebar #link_einzelseite {
	display: none !important;
}
.mobile_sidebar #rel_home {
	background-image: none;
}
#aktuell.mobile_sidebar #neues_scroll {
	margin: 20px 0;
	max-height: 50vh;
}
.mobile_sidebar a {
	background-color: rgba(255, 255, 255, .6);
	border: 1px solid #fff;
	display: block;
	padding: 5px 10px 5px 10px;
	width: auto !important;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}
.mobile_sidebar .zettel {
	flex-shrink: 0;
	margin-bottom: 0;
	/*
	max-width: 250px;
	margin-right: 1em;
	*/
	padding: 1em;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}
#sidebar-trigger {
	align-items: center;
	background-color: #f4f4f4;
	border: 4px solid #fff;
	bottom: 15px;
	/*box-shadow: * -4px * 2px * 5px * 0px * rgba(0,0,0,.1);*/
	box-sizing: border-box;
	color: #bbb;
	cursor: pointer;
	display: flex;
	font-weight: bold;
	height: 40px;
	justify-content: center;
	right: 20px;
	position: fixed;
	width: 40px;
	z-index: 96;
}
.mobile_sidebar.sidebar-slider-in {
	transform: translateX(0);
}

.gesetze_gesamt #fixed_bottom #button_container #top_button {
	bottom: 62px !important;
}

/* }}} Gesamt */


/* {{{ Urteilauflistung (meistgeklickt) */
.zettel_hinweis {
	background-color: var(--djo-blue-medium);
	color: #fff;
	display: none;
	margin-bottom: 20px;
	padding: 20px;
	position: relative;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
.zettel_hinweis:after {
	content: " ";
	position: absolute;
	left: 50%;
	top: -8px;
	transform: translateX(-50%);
	border-top: none;
	border-right: 15px solid transparent;
	border-left: 15px solid transparent;
	border-bottom: 15px solid var(--djo-blue-medium);
}
.zettel_hinweis .close {
	color: #fff;
	cursor: pointer;
	display: inline-block;
	height: 20px;
	width: 20px;
	font-size: 1.2em;
	font-weight: bold;
	position: absolute;
	right: 5px;
	top: 5px;
	text-align: center;
}
.zettel_hinweis .close:before {
	content: "\00d7";
}

.rechtsgebiete_zettelkasten {
	position: sticky;
	top: -30px;
}
.rechtsgebiete_zettel {
	opacity: 0;
	transition: opacity .3s;
}
.rechtsgebiete_liste {
	max-height: 400px;
	overflow: auto;
	margin-top: 4px;
	padding-left: 20px;
}
.rechtsgebiete_liste_mehr {
	background: none !important;
	cursor: pointer;
	margin: 8px 0 0 0;
}
#rechtsgebiete_liste_mehr {
	display: none;
}
.rechtsgebiete_zettel label {
	align-items: start;
	display: flex;
}
.mobile_menu label {
	align-items: center;
	display: flex;
	gap: 0.2rem;
}
.mobile_menu .rechtsgebiete_liste label {
	align-items: start;
}
.zettel_innen > label {
	margin-bottom: 8px;
	margin-top: 12px;
}
.rechtsgebiete_zettel input, .rechtsgebiete_zettel input {
	margin: 0 6px 0 0;
	bottom: auto;
}
.rechtsgebiete_liste.deaktiviert input:checked {
	background-color: var(--background-color-disabled);
}
.rechtsgebiete_liste label {
	margin-bottom: 8px;
}
.rechtsgebiete_liste label .truncate {
	overflow: hidden;
	text-overflow: ellipsis;
}
.rechtsgebiete_liste label .appendix {
	margin: 0 3px 0 8px;
	background: var(--background-color);
	border-radius: 3px;
	line-height: 1.6em;
	margin-top: 1px;
	padding: 0 3px;
}

.rspr_auflistung_aufklappen {
	background-color: var(--background-color-light);
	border: 1px solid var(--content-border-color);
	border-radius: 5px;
	box-sizing: border-box;
	color: var(--font-color-light);
	cursor: pointer;
	margin: 20px 0;
	padding: 20px 68px 20px 20px;
	position: relative;
	max-width: 730px;
}
.rspr_auflistung_aufklappen:after {
	color: #fff;
	content: '+';
	font-size: 3em;
	font-weight: bold;
	transform: translateY(-50%);
	position: absolute;
	right: 20px;
	top: 50%;
}
.rspr_auflistung_aufklappen:before {
	background: var(--djo-blue-medium);
	border-radius: 0 5px 5px 0;
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 90px;
	clip-path: polygon(27% 0%, 100% 0%, 100% 100%, 0 100%);
	z-index: 0;
}
@media screen and (max-width: 800px) {
	.rspr_auflistung_aufklappen:before {
		width: 74px;
	}
}
.rspr_auflistung_aufklappen:hover {
	background-color: var(--background-color);
}
.rspr_auflistung_aufklappen h2 {
	margin: 0;
}
#rspr_auflistung_container .switch-label {
	position: absolute;
	right: 20px;
	top: 20px;
	z-index: 1;
}
.bgbl_meistgeklickt #rspr_auflistung {
	padding-top: 35px;
}
#rspr_auflistung {
	margin-bottom: 2rem;
	max-height: none;
	position: relative;
}
#rspr_auflistung .kursiv {
	font-style: normal !important;
	font-weight: bold;
	color: var(--font-color-light);
}
#rspr_auflistung ul {
	padding: 20px;
	margin: 0;
}
#rspr_auflistung li {
	background: var(--background-color-light);
	border: 1px solid var(--border-color-light);
	border-radius: 10px 0 0 10px;
	display: flex;
	visibility: hidden;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	position: relative;
	margin-top: 20px;
	transition: margin .2s;
}
#rspr_auflistung li:first-child {
	margin-top: 0;
}
#rspr_auflistung li.selbes_verfahren {
	margin-left: 40px;
	margin-top: 10px;
}
#rspr_auflistung li.redaktion > .urteil_anzeige {
	background: #EFF5F7;
}
#rspr_auflistung li > .rg_anzeige {
	background-color: var(--background-color-lighter);
	background-position: 50% 50%;
	background-size: 80%;
	background-repeat: no-repeat;
	/*border: 1px solid #f4f4f4;*/
	box-sizing: border-box;
	color: var(--font-color-light);
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	font-size: .9em;
	font-weight: bold;
	align-items: center;
	justify-content: center;
	padding: 5px;
	position: relative;
	text-align: center;
	width: 96px;
	border-right: 1px solid var(--border-color-strong);
	border-radius: 10px 0 0 10px;
	text-shadow: 0 0 1px white;
	text-shadow: .05em .05em 0px var(--background-color-light);
	z-index: 1;
	border-right-color: var(--content-border-color);
}
#rspr_auflistung li > .rg_anzeige > span {
	display: block;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
#rspr_auflistung li > .urteil_anzeige {
	border: 0;
	padding: 20px;
	position: relative;
	flex: 1 0 50%;
	overflow: auto;
}
@media screen and (min-width: 801px) {
	#rspr_auflistung li > .rg_anzeige {
		font-family: Arial, sans-serif;
		font-size: 1em;
	}
	#rspr_auflistung .kursiv {
		font-family: Arial, sans-serif;
		line-height: 1.4em;
		font-size: 1.08em;
	}
}
#rspr_auflistung p {
	margin-top: 10px;
	/*
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	*/
}
#rspr_auflistung li .altersangabe {
	border-radius: 3px;
	color: #444;
	padding: 1px 3px;
	margin-left: 4px;
	background: #d8e0e8;
	font-size: .75em;

	background: var(--background-color-dark);
	color: #fff;
	font-size: .75em;
	line-height: 1em;
	padding: 1px 3px 1px 3px;
	white-space: nowrap;
}

#rspr_auflistung .kasteninfo {
	background: var(--background-color-light);
	border: 1px solid var(--border-color-strong);
	color: #aaa;
	border-radius: 4px;
	cursor: pointer;
	height: 1.2em;
	width: 1.2em;
	line-height: 1.1em;
	position: absolute;
	right: 10px;
	top: 10px;
	font-weight: bold;
	text-align: center;
}

#rspr_auflistung .kasteninfo:hover {
	background: var(--background-color-light medium);
}
#minmax_rspr_auflistung {
	right: 22px;
}
/* }}} Urteilsauflistung */


/* Flashing Animation */
@keyframes flashing {
	0% {
		background-color: transparent;
	}
	50% {
		background-color: lemonchiffon;
	}
	100% {
		background-color: transparent;
	}
}
@-webkit-keyframes flashing {
	0% {
		background-color: transparent;
	}
	50% {
		background-color: lemonchiffon;
	}
	100% {
		background-color: transparent;
	}
}

.flash {
	animation-name: flashing;
	animation-duration: 1400ms;
	animation-iteration-count: 1;
	animation-timing-function: ease-in-out;
	-webkit-animation-name: flashing;
	-webkit-animation-duration: 1400ms;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: ease-in-out;
}

/* Loading Animations */
.placeholder_klapph:before {
	content: "";
	background: #ddd;
	display: block;
	height: 20px;
	width: 80%;
	max-width: 300px;
}
.placeholder_stellenmarkt {
	height: 460px;
	width: 240px;
	margin: 40px auto 30px auto;
	background: #eee;
}
.placeholder_stellenmarkt:before {
	content: "";
	background: #ddd;
	display: block;
	height: 30px;
}
.placeholder_loading {
	animation: 2s loading-placeholder ease-in-out infinite;
}
@keyframes loading-placeholder {
	0% {
		opacity: .4;
	}

	50% {
		opacity: .9;
	}

	100% {
		opacity: .4;
	}
}



.neu_markierung {
 	background: #c30;
	border-radius: 3px;
	color: #fff;
	font-family: Arial, Helvetica, "Nimbus Sans L", "Liberation Sans", FreeSans, sans-serif;
	font-size: .85em;
	padding: 1px 3px;
}

h4 tab {
	align-items: center;
	border: 1px solid transparent;
	display: flex;
	gap: 4px;
	opacity: .6;
	padding: 5px 5px 6px 5px;
}
h4 tab.aktiv {
	background-color: #eee;
	opacity: 1;
}
h4 tab:not(.aktiv,.deaktiviert):hover {
	cursor: pointer;
	opacity: 1;
}
h4 tab .neu_markierung {
	scale: 85%;
	line-height: 1.3;
}


/* {{{ Benachrichtigungen */
#benachrichtigungen_container.klein {
	align-items: end;
	box-sizing: border-box;
	bottom: 54px;
	display: flex;
	flex-direction: column;
	max-height: 50%;
	max-width: 100%;
	min-width: 60px;
	overflow: hidden;
	position: fixed;
	right: 0;
	z-index: 98;
	hyphens: auto;
}
#benachrichtigungen_container .benachrichtigungen_scroll {
	box-sizing: border-box;
	max-height: 100%;
	overflow: auto;
	padding: 5px 5px 10px 5px;
}
#benachrichtigungen_container .benachrichtigungen_bell {
	flex: 0 0 32px;
	height: 50px;
	margin-top: 10px;
	position: relative;
}
#benachrichtigungen_container .benachrichtigungen_bell a {
	color: #222;
	height: 34px;
	width: 34px;
	position: absolute;
	right: 24px;
	top: -6px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: center;
}
#benachrichtigungen_container .benachrichtigungen_anzahl {
	align-content: center;
	align-items: center;
	background: #c30;
	border-radius: 50%;
	color: #fff;
	display: flex;
	font-size: .85em;
	height: 16px;
	justify-content: center;
	position: absolute;
	right: 0;
	top: -4px;
	width: 16px;
}
#benachrichtigungen_container .benachrichtigung {
	border-radius: 5px;
	padding: 1rem;
	/*background: #f9f9f9;*/
	background-color: rgba(245, 245, 245, .95);
	background: #fff;
	border-left: 5px solid #d0d0d0;
	box-shadow: 0 15px 30px rgba(0,0,0,0.08);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
	margin-bottom: .8rem;
	position: relative;
}
#benachrichtigungen_container .benachrichtigung:last-child {
	margin-bottom: 0;
}
#benachrichtigungen_container .benachrichtigung.prio_mittel {
	border-left-color: gold;
	border-left-color: #FFCA28;
}
#benachrichtigungen_container .benachrichtigung.prio_hoch {
	border-left-color: #FF7043;
}
#benachrichtigungen_container .benachrichtigung h3, #benachrichtigungen_container .benachrichtigung p {
	margin: 0 0 .3rem 0;
}
#benachrichtigungen_container .benachrichtigung .close_x {
	color: #777;
	font-weight: normal;
	position: absolute;
	font-size: 1.3em;
	height: 1.5em;
	line-height: 1.5em;
	right: .5rem;
	top: .5rem;
	text-shadow: none;
	width: 1.5em;
	border-radius: 50%;
	text-align: center;
}
#benachrichtigungen_container .benachrichtigung .close_x:hover {
	background-color: #f4f4f4;
	color: #222;
}
#benachrichtigungen_container .benachrichtigung .close_x:before {
	content: "\2716";
	content: "\2715";
}
/* }}} Benachrichtigungen */




/* Tooltip config */
.preview_tooltips .ui-tooltip {
	position: fixed;
	top: initial !important;
	left: 0px !important;
	bottom: 0px !important;
	width: 100%;
	cursor: pointer;

	border-radius: 10px 10px 0px 0px;
	overflow: hidden;
	z-index: 1000000;
}

.preview_tooltips #default-overlay {
	position: relative;
	z-index: 10;
}

.tooltip-bottom-links {
	display: none;
}
.preview_tooltips .tooltip-bottom-links {
	display: inline-block;
	width: 50%;
	text-align: center;
	font-style: uppercase;
	padding: 10px;

	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.preview_tooltips .tooltip-bottom-links.new-tab {
	float: left;
}

.preview_tooltips .tooltip-bottom-links.open-link {
	float: right;
}

.preview_tooltips .tooltip_footer {
	background: #f4f4f4;
	color: #666;
	background: -moz-linear-gradient(top, #f4f4f4 0%, #ffffff 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #f4f4f4 0%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #f4f4f4 0%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
	overflow: hidden;
}

.docked_tooltips .ui-tooltip {
	position: fixed;
	top: initial !important;
	left: 0px !important;
	bottom: 0px !important;
	width: 100%;
	max-height: 12rem;

	border-radius: 10px 10px 0px 0px;
	overflow: hidden;
	z-index: 1000000;
}
.docked_tooltips .ui-tooltip .arrow {
	display: none;
}
.docked_tooltips .tooltip_head {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.docked_tooltips .tooltip_content {
	max-height: 6rem;
	overflow: auto;
}
.docked_tooltips .tooltip_footer {
	display: none;
}
