.option input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}

/* Custom indicator */
.indicator {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  position: absolute;
  top: -20px;
  right: -6px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(0,0,0,.1);
  box-shadow: 0 1px 2px rgba(0,0,0,.1);
}
#answers .progress {height: 1.2rem}
.progress-bar.gradient {
  background: linear-gradient(to right, #feba24, var(--main-red));
}

.indicator svg.check {display: none; width: 1.9rem; height: 1.9rem}

/* Checked state */
.option input[type="radio"]:checked + .card {
  border-color: var(--bs-primary) !important;
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
}
.option input[type="radio"]:checked + .card .indicator {
  border-color: var(--bs-success);
}
.option input[type="radio"]:checked + .card .indicator .check {
  display: block;
}
/* Focus ring */
.option input[type="radio"]:focus + .card {
  outline: 3px solid rgba(13,110,253,.25);
  outline-offset: 4px;
}
#question {background-color: var(--main-red)}
body.dark-theme #question {background-color: var(--main-red-dark)}
.question-title {font-size: 2.6rem; font-weight: bold; color: var(--question-text-color)}

#question .result {background-color: var(--bg-textarea)}
#question .result .progress {height: 2rem; background-color: unset}
#question .result .progress-bar {
  background: linear-gradient(to right, #ff855d, var(--main-red));
  background: -moz-linear-gradient(to right, #ff855d, var(--main-red)) !important;
  background: -webkit-linear-gradient(to right, #ff855d, var(--main-red));
  border-radius: 0 1rem 1rem 0;
}
#question .result .progress .percentage {
  line-height: inherit;
  font-size: 0.9rem
}

@media (max-width: 575.98px) {
.question-title {font-size: 1.6rem}
div.card.answer h5 {font-size: 0.9rem}
}
