body {
	background-color: #414141;
	
	margin: 0 auto;
	padding: 20px;
	
	max-width: 1500px;
	
	font-family: 'Raleway';
	color: white;
	font-size: 20px;
}



/****************************************************************************************
	Header
*/

#header {
	position: relative;
	max-width: 1000px;
	
	margin-left: auto;
	margin-right: auto;
	padding: 20px;
	padding-top: 10px;
	
	border-radius: 40px;
	box-sizing: border-box;
	
	background: linear-gradient(5deg, rgba(32,25,57,1) 0%, rgba(49,29,90,1) 54%, rgba(114,66,200,1) 100%);
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.8);
}

#header #title {
	text-align: center;
	font-family: 'SairaCondensed';
	position: relative;
	margin: 0;
	padding: 0;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 4px;
	text-shadow: 0px 0px 10px black;
	font-weight: 700;
	font-size: 30px;
}

#header #title .backlink,
#header #title .darkmode {
	left: 0;
}

#header #title .settings {
	right: 0;
}

#header #title a svg {
	height: 20px;
	width: 20px;
}


#header .textSearchContainer {
	position: relative;
}

#header .textSearchContainer input.textSearch {
	width: 100%;
	max-width: none;
	transition: 0.3s;
	padding-right: 50px;
	font-family: 'SairaCondensed', sans-serif;
}

#header .textSearchContainer input.textSearch:focus {
	box-shadow: 0px 0px 20px rgba(255, 225, 0, 1);
}

#header .textSearchContainer .bi-search {
	height: 15px;
	height: 15px;
	right: 20px;
	opacity: 0.5;
}



/****************************************************************************************
	Überschriften
*/


h1 {
	position: relative;
	
	margin: 40px 0 0 0;
	
	min-height: 50px;
	line-height: 50px;
	
	font-family: 'SairaCondensed';
	font-size: 30px;
	font-weight: 600;
}

h1:first-child {
	margin-top: 20px;
}

.headerIcon {
	padding-left: 40px;
}

.headerIcon i.bi {
	position: absolute;
	top: 0;
	left: 0;
}

h1.h1icon {
	display: none;
}

h1 .buttons {
	position: absolute;
    
    top: 50%;
	right: 0;
	transform: translateY(-50%);
	
	height: 50px;
}

h1 .buttons .button {
	margin-left: 15px;
}



h2 {
	margin: 20px 0 0 0;
	
	font-weight: 500;
	font-size: 25px;
	font-family: 'SairaCondensed';
}



h3 {
	margin: 20px 0 0 0;
	
	font-weight: 500;
	font-size: 20px;
	font-family: 'SairaCondensed';
}



/****************************************************************************************
	Text
*/



a {
	text-decoration: none;
}

p {
	margin: 20px 0 0 0;
}

pre {
	margin: 20px 0 0 0;
	padding: 10px;
	border: 1px solid rgba(0, 0, 0, 0.5);
	border-radius: 10px;
	overflow-x: scroll;
}



/****************************************************************************************
	Boxen
*/

.box {
	position: relative;
	
	padding: 20px;
	margin: 20px auto;
	
	box-sizing: border-box;
	border-radius: 30px;
	
	background-color: rgba(0, 0, 0, 0.3);
}

.box h1:first-child,
.box h2:first-child,
.box h3:first-child,
.box p:first-child {
	margin-top: 0;
}

.boxHeader h1:first-child,
.boxHeader h2:first-child,
.boxHeader h3:first-child,
.boxHeader p:first-child {
	margin-top: -20px;
	margin-left: -20px;
	margin-right: -20px;
	padding: 20px;
	
	border-radius: 30px 30px 0 0;
	
	
	background-color: rgba(0, 0, 0, 0.3);
}

.boxHeader h1.headerIcon,
.boxHeader h2.headerIcon,
.boxHeader h3.headerIcon {
	position: relative;
	
	padding-left: 70px;
}

.boxHeader .headerIcon i.bi {
	left: 30px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}



/****************************************************************************************
	Buttons
*/

.button {
	position: relative;
	
	display: inline-flex;
	align-items: center;
	justify-content: center;
	
	min-height: 50px;
	
	box-sizing: border-box;
	padding: 10px 20px;
	
	border-radius: 25px;
	
	font-size: 20px;
	
	vertical-align: middle;
	text-align: center;
	background: linear-gradient(5deg, rgba(40,40,40,1) 0%, rgba(108,108,108,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
}

.buttonActive {
	background: linear-gradient(5deg, rgba(6, 45, 0, 1) 0%, rgba(8,139,0,1) 100%);
}

.buttonDelete {
	background: linear-gradient(5deg, rgba(68,0,0,1) 0%, rgba(159,0,0,1) 100%);
}

.iconButton {
	padding-left: 50px;
}


.iconButton i.bi {
	left: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.circleButton {
	width: 50px;
	padding: 0;
}

.circleButton i.bi {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.wideButton {
	width: 350px;
	max-width: 100%;
}

.buttonRow {
	padding: 0;
}

.buttonRow a {
	display: block;
	float: left;
	height: 50px;
	width: 50px;
	position: relative;
	border-left: 1px solid rgba(0, 0, 0, 0.5);
}

.buttonRow a:first-child {
	border-left: none;
}

.buttonRow a.text {
	display: flex;
	align-items: center;
	justify-content: center;
	
	width: auto;
	padding: 0 20px;
}

.buttonRow a i.bi {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.buttonRow_b {
	display: inline-block;
	
	height: 60px;
	
	padding: 5px;
	box-sizing: border-box;
	
	border-radius: 30px;
	
	background-color: rgba(0, 0, 0, 0.3);
}


.bigButton {
	display: block;
	position: relative;
	
	max-width: 1000px;
	height: auto;
	
	margin: 20px 0;
	padding: 15px 20px;
	
	text-align: left;
	font-family: 'SairaCondensed', sans-serif;
	font-size: 25px;
	border-radius: 25px;
	
	background: linear-gradient(5deg, rgba(6, 45, 0, 1) 0%, rgba(8,139,0,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
}

.bigButtonIcon {
	padding-left: 60px;
}

.bigButtonIcon i.bi {
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

.bigButton .borderBadges {
	position: absolute;
	
	bottom: -10px;
	right: 20px;
}

.bigButton .borderBadges .badge {
	display: block;
	
	float: left;
	
	min-height: min-intrinsic;
	height: 24px;
	line-height: 24px;
	
	margin-left: 5px;
	padding: 0 10px;
	
	border-radius: 12px;
	font-size: 15px;
}

.bigButton .borderBadges .circleBadge {
	width: 24px;
	text-align: center;
}

.bigButton .borderBadges i.bi {
	padding-right: 5px;
}

.bigButton .innerBadge {
	right: 20px;
	
	padding: 0 10px;
	
	height: 30px;
	line-height: 30px;
	min-width: 30px;
	box-sizing: border-box;
	
	color: white;
	background-color: rgba(0, 0, 0, 0.5);
	border-radius: 15px;
	font-size: 15px;
	font-family: 'Lato';
	font-weight: 300;
}

.bigButtonSvg {
	overflow: hidden;
}

.bigButtonSvg svg {
	position: absolute;
	height: 70px;
	width: 70px;
	rotate: 10deg;
	opacity: 0.2;
	right: 20px;
	top: -10px;
}



/****************************************************************************************
	Zeilen mit Button
*/

.row {
	position: relative;
	
	height: 50px;
	line-height: 50px;
	
	margin-top: 10px;
}

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

.row .button {
	position: absolute;
	right: 0;
	padding-left: 20px;
	padding-top: 0;
	padding-bottom: 0;
}



/****************************************************************************************
	Formulare
*/

input[type=text],
input[type=number],
input[type=date],
input[type=email],
input[type=password],
textarea {
	display: block;
	
	width: 100%;
	max-width: 500px;
	height: 50px;
	
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	
	border: none;
	border-radius: 20px;
	outline: none;
	resize: none;
	background-color: rgba(0, 0, 0, 0.3);
	
	font-family: inherit;
	font-size: 20px;
	
	color: white;
}

textarea {
	height: 200px;
}

input::placeholder,
textarea::placeholder {
	color: rgba(255, 255, 255, 0.5);
}




/****************************************************************************************
	Dropdown
*/

.mh_dropdown {
	width: 500px;
	max-width: 100%;
	
	border: none;
	border-radius: 20px;
	
	color: white;
	vertical-align: middle;
	background: linear-gradient(5deg, rgba(40,40,40,1) 0%, rgba(108,108,108,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
}

.mh_dropdown .list {
	z-index: 99;
	
	top: 0;
	left: 0;
	
	border-radius: 20px 0 20px 20px;
	border: none;
	
	background: linear-gradient(5deg, rgba(40,40,40,1) 0%, rgba(108,108,108,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
}

.mh_dropdown_up .list {
	top: auto;
	bottom: 0;
	border-radius: 20px 20px 0 20px;
}

.mh_dropdown .list a.option {
	border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.mh_dropdown .list a.option_0 {
	border-top: none;
}




/****************************************************************************************
	Popup
*/

.popup {
	padding: 20px;
	
	border: none;
	border-radius: 40px;
	
	box-shadow: 0px 10px 20px black;
    background-color: #414141;
}

.popup .content {
	padding: 0;
}

.popupScroll {
	max-height: none;
    left: 50%;
    transform: translateX(-50%);
    
    top: 50px;
    bottom: 50px;
}

.popupScroll .scroll {
	overflow-y: scroll;
	position: absolute;
	top: 50px;
	bottom: 0;
	left: 20px;
	right: 20px;
	padding-top: 30px;
	padding-bottom: 20px;
}

.popup h2 {
	background: linear-gradient(5deg, rgba(32,25,57,1) 0%, rgba(114,66,200,1) 100%);
	padding: 0 20px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	border-radius: 30px;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.8);
	margin-bottom: 20px;
	position: relative;
	z-index: 99;
}

.popup h2 a.closeButton {
	display: block;
	
	position: absolute;
	right: 15px;
	
	height: 25px;
	width: 25px;
}

.popup h2 a.closeButton svg {
	width: 100%;
	height: 100%;
}









/****************************************************************************************
	RadioList
*/

.mh_radioList {
	width: 500px;
	max-width: 100%;
	
	border-radius: 20px;
	border: none;
	
	background: linear-gradient(5deg, rgba(40,40,40,1) 0%, rgba(108,108,108,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
	color: white;
}

.mh_radioList .option {
	border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.mh_radioList .option_1 {
	border-top: none;
}



/****************************************************************************************
	Selector
*/

.mh_selector {
	border-radius: 20px;
	
	background: linear-gradient(5deg, rgba(40,40,40,1) 0%, rgba(108,108,108,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
	color: white;
}

.mh_selector .buttons {
	border-radius: 20px 0 0 20px;
	border: none;
	
	background-color: transparent;
}

.mh_selector .buttons .up,
.mh_selector .buttons .down {
	width: 40px;
}

.mh_selector .value {
	
	background-color: rgba(0, 0, 0, 0.2);
	
	font-weight: normal;
	
	font-size: 20px;
	
	border: none;
	border-radius: 0 20px 20px 0;
}



/****************************************************************************************
	Footer
*/

#footer {
	padding: 40px 0;
	text-align: center;
}

#footer a {
	text-decoration: none;
	color: rgba(255, 255, 255, 0.4);
	font-size: 15px;
}



/****************************************************************************************
	Loading-Hinweis
*/

#loading {
	border: none;
	
	background: linear-gradient(5deg, rgba(40,40,40,1) 0%, rgba(108,108,108,1) 100%);
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.8);
}

#loading svg {
	width: 60px;
}
