:root {
	--standard-color: #ff3333;
    --incorrect-color: #550000; 
	--correct-color: #005500;
}


body {
	padding: 0;
	margin: 0;
	font-family: Arial,Helvetica,Helvetica,sans-serif; 
}

.header {
	background: var(--standard-color);
	width: 100%;
}

.top-menu {
	width: 100%;
	border: 0px;
	min-height: 4em;
	margin-top: 0;
	margin-left: 0;
	margin-right: 0;
	padding-left: 2em;
	padding-right: 2em;
	padding-top: 1em;
	padding-bottom: 0;
	margin-bottom: 0;
	color: white;
}

.navigation {
	margin-top: -0.25em;
	font-size: 3em;
	
}

.menu-left {
	font-size: 2em;
	text-align: left;
}

.menu-middle {
	font-size: 0.75em;
	font-weight: bold;
	text-align: right;
	vertical-align: top;
}

.greylink {
	text-decoration: none;
	color: grey;
}


.karte {
	background-color: white;
	opacity: 1;
	width: 90%;
	padding-left: 2em;
	padding-right: 2em;
	text-align: center;
	margin-top: 2em;
	margin-right: auto;
	margin-left: auto;
	
	
	
}

.gratulation {
	text-align: center;
	color: black;
	display: none;
}

.trost {
	text-align: center;
	color: black;
	display: none;
}



.bild {
	margin-top: 5em;
	margin-left: auto;
	margin-right: auto;
	background: url("1024px-Hiroshige_Poling_a_raft_on_a_river.jpg") 50% 50% no-repeat;
	width: 15em;
	height: 15em;
	border-radius: 50%;

}

.kanji {
	font-size: 3em;
}

.hiragana {
	font-size: 1em;
}

.loesung {
	min-height: 2em;
	font-size: 1.5em;
	font-weight: bolder;
}

.infobox {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	min-height: 7em;
	font-weight: bolder;
	width: 100%;
	color: #000;
}

.infobox-left {
	font-size: 4em;
	padding-left: 0.25em;
	color: #000;
}
.infobox-right {
	padding-left: 2em;
	padding-right: 1em;
	font-size: 1em;
	text-align: left;
	color: #000;
}

.outputfeld {
	width: 100%;
	min-height: 2em;
	font-size: 2em;
	font-weight: bold;
	color: #fff;
}

.inputfeld {
	margin: auto;
	margin-top: 1em;
	width: 20em;
	opacity: 3;
}

input[type=text] {
    width: 50%;
    padding: 0.5em 0.5em;
    margin: 0.2em 0;
    box-sizing: border-box;
	border: 0px;
    border-bottom: 3px solid #ccc;
    outline: none;
	text-align: center;
	font-weight: bolder;
	font-size: 1.5em;
}

input[type=text]:focus {
    border-bottom: 3px solid #aaa;
}

.bild_container {
    position: relative;
}

.angabe {
	margin-right: auto;
	margin-left: auto;
	height: 2em;
    color: black;
	font-size: 4em;
	font-weight: bold;
	
}


.frage {
    position: absolute;
    top: 50%;
	left: 50%;
	text-align: center;
	font-size: 15em;
	margin: auto;
    color: white;
	transform: translate(-50%, -50%);
}

.button {
    background-color: #fff; /* Green */
    border: 3px solid #fff;
	font-weight: bolder;
    color: #000;
    padding: 0 1em;
	height: 3em;
	min-width: 2em;
    text-align: center;
    text-decoration: none;
    font-size: 1em;
	border-radius: 1em;
}
.button:hover {
    background-color: #fff;
    border: 3px solid #fff;
    color: #555;
    padding: 0 1em;
	height: 3em;
	min-width: 2em;
    text-align: center;
    text-decoration: none;
    font-size: 1em;
	border-radius: 1em;
}

.navibutton {
    background-color: transparent;
    border: 0px;
	font-weight: bolder;
    color: #fff;
    padding: 0;
	height: 1em;
	min-width: 2em;
    text-align: left;
    text-decoration: none;
    font-size: 0.5em;
	border-radius: 1em;
}

.dark_button {
    background-color: #000;
    border: 3px solid #000;
	font-weight: bolder;
    color: #fff;
    padding: 0 1em;
	height: 3em;
	min-width: 2em;
    text-align: center;
    text-decoration: none;
    font-size: 1em;
	border-radius: 1em;
}

.dark_button:hover {
    background-color: #555;
	border: 3px solid #555;
}


.liste {
	margin-left: 10%;
	margin-right: 10%;
	margin-top: 15%;
}
.kanatabelle {
	margin-left: 0em;
	margin-right: 2em;
	margin-top: 3em;
}

.tabellenfeld {
	background-color: #cccccc;
}
.tabellenspalte {
	width: 10%;
}

.checker {
	color: white;
	font-size: 3em;
}

.footer {
	text-align: center;
	position: fixed;
	width: 100%;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	background-color: #fff;
	font-weight: bolder;
	bottom: 0;
	left:0
}
	/* The Modal (background) */
.modal {
	display: none; /* Hidden by default */
	position: fixed; /* Stay in place */
	z-index: 1; /* Sit on top */
	padding-top: 100px; /* Location of the box */
	left: 0;
	top: -6em;
	width: 100%; /* Full width */
	height: 100%; /* Full height */
	overflow: auto; /* Enable scroll if needed */
	background-color: rgb(0,0,0); /* Fallback color */
	background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}
  
  /* Modal Content */
.modal-content {
	background-color: #fefefe;
	margin: auto;
	padding: 20px;
	border: 1px solid #888;
	width: 80%;
}
  
  /* The Close Button */
.close {
	color: #aaaaaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
}
  
.close:hover,
.close:focus {
	color: #000;
	text-decoration: none;
	cursor: pointer;
}

.tooltip {
	position: relative;
	display: inline-block;
  }
  
  .tooltip .tooltiptext {
	visibility: hidden;
	width: 10em;
	background-color: black;
	font-size: 0.25em;
	color: #fff;
	text-align: center;
	border-radius: 6px;
	padding: 0.2em 1em;
  
	/* Position the tooltip */
	position: absolute;
	z-index: 1;
  	top: 100%;
  	left: 50%;
  }
  
  .tooltip:hover .tooltiptext {
	visibility: visible;
  }

.fade-in-text {
	display: inline-block;
	color: black;
	animation: fadeIn linear 0.2s;
	-webkit-animation: fadeIn linear 0.2s;
	-moz-animation: fadeIn linear 0.2s;
	-o-animation: fadeIn linear 0.2s;
	-ms-animation: fadeIn linear 0.2s;
  }
  
  @keyframes fadeIn {
	0% {opacity:0;}
	100% {opacity:1;}
  }
  
  @-moz-keyframes fadeIn {
	0% {opacity:0;}
	100% {opacity:1;}
  }
  
  @-webkit-keyframes fadeIn {
	0% {opacity:0;}
	100% {opacity:1;}
  }
  
  @-o-keyframes fadeIn {
	0% {opacity:0;}
	100% {opacity:1;}
  }
  
  @-ms-keyframes fadeIn {
	0% {opacity:0;}
	100% {opacity:1;}
  }

  .fade-out-text {
	display: inline-block;
	color: black;
	transition: transform 0.1s;
	transform: scale(2);
	animation: fadeOut linear 0.1s;
	-webkit-animation: fadeOut linear 0.1s;
	-moz-animation: fadeOut linear 0.1s;
	-o-animation: fadeOut linear 0.1s;
	-ms-animation: fadeOut linear 0.1s;
  }

  @keyframes fadeOut {
	0% {opacity:1;}
	100% {opacity:0;}
  }
  
  @-moz-keyframes fadeOut {
	0% {opacity:1;}
	100% {opacity:0;}
  }
  
  @-webkit-keyframes fadeOut {
	0% {opacity:1;}
	100% {opacity:0;}
  }
  
  @-o-keyframes fadeOut {
	0% {opacity:1;}
	100% {opacity:0;}
  }
  
  @-ms-keyframes fadeOut {
	0% {opacity:1;}
	100% {opacity:0;}
  }

  .fade-normal {
	display: inline-block;
	color: black;
	transition: transform 0.0s;
	transform: scale(1);
  }

  .fade-shake {
	/* Start the shake animation and make the animation last for 0.5 seconds */
	animation: shake 0.2s;
  
	/* When the animation is finished, start again */
	animation-iteration-count: infinite;
  }
  
  @keyframes shake {
	0% { transform: translate(1px, 1px) rotate(0deg); }
	10% { transform: translate(-1px, -2px) rotate(-1deg); }
	20% { transform: translate(-3px, 0px) rotate(1deg); }
	30% { transform: translate(3px, 2px) rotate(0deg); }
	40% { transform: translate(1px, -1px) rotate(1deg); }
	50% { transform: translate(-1px, 2px) rotate(-1deg); }
	60% { transform: translate(-3px, 1px) rotate(0deg); }
	70% { transform: translate(3px, 1px) rotate(-1deg); }
	80% { transform: translate(-1px, -1px) rotate(1deg); }
	90% { transform: translate(1px, 2px) rotate(0deg); }
	100% { transform: translate(1px, -2px) rotate(-1deg); }
  }
  
