.answer_option_entry:has(:checked) {
  border: 2px var(--main-color) solid;
}
.answer_option_entry {
  background-color: #f9f9f9;
  padding: 1em;
  border-radius: 3px;
  margin-bottom: .8em;
  font-size: 1.2em;
  display: block;
  border: 2px solid #d4d4d4;
}

.quiz_wrapper button,
.btn_next_question a {
  width: 100%;
  background-color: var(--main-color);
  border: unset;
  padding: 1em;
  border-radius: 3px;
    font-size: 1.2em;
  display: block;
  color: white;
  text-align: center;
}

.btn_next_question {
  margin-top: .8em;
}

.btn_next_question a {
  color:white
}

.question_wrapper {
  background-color: white;
  padding: 1em;
  border-radius: 5px;
}

.quiz_wrapper.question_done button#check_answer {
  pointer-events: none;
  background-color: gray;
}

.quiz_wrapper:not(.question_done) .btn_next_question {
  display: none;
}

.answer_option_entry.wrongAnswer {
  background-color: #ffb4b4;
  border-color: #ffb4b4;
}

.answer_option_entry.correctAnswer {
  background-color: #e7ffce;
  border-color: #9eb686;
  transform: revert-layer;
  box-shadow: 0 0 10px #d5e9bf;
}

.question_done label, .question_done input {
  pointer-events: none;
}

/* progressbar */


.progress_bar_inner {
  background-color: var(--main-color);
  border-radius: 100px;
  height: 4px;
}

.progress_bar {
  background-color: white;
  padding: 3px;
  border-radius: 100px;
}

.correct_answer_popup {
  position: fixed;
  top: 20px;
  left: 0;
  right: 0;
  transform: translateY(calc(-100% - 2em));
  
  z-index: 10;
}

.correct_answer_popup.active {
  transform: translateY(0);
  transition-duration: .3s;
}

.correct_answer_inner {
  padding: 1em 2em;
  width: calc(100% - 2em);
  max-width: 600px;
  margin: auto;
  grid-template-columns: 50px auto;
  display: grid;
  grid-column-gap: 20px;
  background-color: #fffc;
  backdrop-filter: blur(4px);
  border-radius: 50px;
  box-shadow: 0 0 10px #0001;
}

.correct_answer_text {
  font-size: 1.2em;
  line-height: 1;
  margin: unset;
}

.correct_answer_points {
  font-size: 2em;
  line-height: 1;
  margin: 0;
}

.gameend_screen_wrapper {
  background-color: white;
  padding: 1em;
  text-align: center;
  font-size: 1.3em;
}

@media screen and (min-width: 1000px) {
  
  .gameend_screen_wrapper {
    padding: 2em;
    font-size: 2em;
  }
    
}

.gameend_screen_wrapper .btn {
  margin: 50px auto;
  display: block;
}

.question {
  font-size: 1.2em;
  hyphens: none;
}

#answer_note_container:has(p) {
  background-color: #e8f4fd;
  color: #004070;
  padding: 1em;
  border: 2px dashed #004070;
}