html *
{
  font-family: Arial !important;
}

.box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.box .text {
  align-self: stretch;
  margin-top: 1em;
  margin-bottom: 1em;
  text-align: justify;
  hyphens: auto;
}

.box .intro {
  margin-top: 1em;
  margin-bottom: 1em;
  text-align: center;
}

.box .final {
  border-radius: .5em;
  background-color: orange;
  border: 2px solid black;
  margin: auto;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 1em;
  text-align: justify;
  hyphens: auto;
  word-wrap: break-word;
}

.box .inputbox {
  border-radius: .5em;
  border: 2px solid black;
  background-color: #FFFFCC;
  margin-top: .5em;
  padding: 1em;
  align-self: stretch;
}

.box .nextbox {
}

.box .false {
  border-radius: .5em;
  background-color: #ff9999;
  text-align: justify;
  hyphens: auto;
  border: 2px solid black;
  align-self: stretch;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 1em;
}

.box .correct {
  border-radius: .5em;
  background-color: lightgreen;
  text-align: justify;
  hyphens: auto;
  border: 2px solid black;
  align-self: stretch;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 1em;
}

.box .helpbox {
  border-radius: .5em;
  background-color: lightblue;
  text-align: justify;
  hyphens: auto;
  border: 2px solid black;
  align-self: stretch;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 1em;
}

.box .footer {
	margin-top: 1em;
	margin-left: auto;
	padding: 0.25em;
	color: black;
	align-self: stretch;
	text-align: right;
	font-size: 10px;
}

.closebtn {
  margin-left: 15px;
  /*color: white;*/
  font-weight: bold;
  float: right;
  font-size: 22px;
  line-height: 20px;
  cursor: pointer;
  transition: 0.3s;
}

.closebtn:hover {
  color: black;
}


.box .image {
  display: block;
  align-self: stretch;
  width: 100%;
  height: auto;
}

.box .logo {
  display: block;
  align-self: center;
  height: auto;
}

img:hover {
  box-shadow: 0 0 2px 1px rgba(0, 140, 186, 0.5);
}


.btn_next {
  background: #3839ab linear-gradient(hsla(0, 0, 100%, .2), transparent); 
  background-color: #5a9900;
  border: 1px solid rgba(0, 0, 0, .1);
  box-shadow: 0 .2em .4em rgba(0, 0, 0, .5); 
  padding: .5em .8em;
  margin: .5em .5em .5em 0;
  color: white;
  text-shadow: 0 -.05em .05em rgba(0, 0, 0, .5); 
}

.btn_help {
  background: #3839ab linear-gradient(hsla(0, 0, 100%, .2), transparent); 
  background-color: lightblue;
  padding: .5em .8em;
  border: 1px solid rgba(0, 0, 0, .1);
  box-shadow: 0 .2em .4em rgba(0, 0, 0, .5); 
  margin: .5em;
  color: black;
  text-shadow: 0 -.05em .05em rgba(0, 0, 0, .5); 
}

input[type=text],input[type=number] {
  padding: 0.5em;
  margin-top: 0.5em;
  margin-right: 1em;
  box-sizing: border-box;
  border: 1px solid #666666;
}

h1 {
  text-align: center;
}

.impressum {
  text-align: left;
}

.waypoint {
  margin: auto;
  font-weight: bold;
  font-size: larger;
  padding: 1em;
  text-align: center;
}

.waypoint .tooltiptext {
  visibility: hidden;
  width: auto;
  background-color: lightblue;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  margin: -8em;
  margin-top: 1.2em;
  position: absolute;
  z-index: 1;
}
.waypoint:hover .tooltiptext {
  visibility: visible;
}