
.progressline {
  display: block;
  background: #FFFFFF;
  margin-bottom: 25px;
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid #aaaaaa;
}

.progress {
  display: block;
  background: linear-gradient(
    94deg,
    rgba(111, 153, 255, 0.48) 5%,
    rgba(255, 138, 118, 0.66) 100%
  );
  height: 2rem;
}

#antwoorden > * {
  margin-top: 2rem;
}

.antwoorden UL LI {
  padding-left: 0;
}

.antwoord + .antwoord {
  margin-top: 2rem;
}

INPUT,
TEXTAREA {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 10px 15px;
  outline: 0;
  border: 0;
  border-radius: 0;
  background: #FFFFFF;
  border: 1px solid #787878;
  color: #000000;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

INPUT.hide_input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  border: none !important;
  padding: 0 !important;
}

INPUT::-ms-expand {
  display: none;
}

INPUT:hover,
INPUT:focus,
TEXTAREA:hover,
TEXTAREA:focus {
  border: 2px solid #000000;
  padding: 9px 14px;
}

INPUT[type="text"]:disabled {
  background: #dddddd;
}

/* Geen kleine up/down pijltjes bij een getal. Mensen denken dat ze die MOETEN gebruiken, en dat is erg
 * irritant omdat je met die pijltjes bij de minimumwaarde begint. Zonder pijltjes gebruiken mensen gewoon
 * het toetsenbord en dat is veel sneller.
 */
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
}


TEXTAREA {
  min-height: 85px;
}

.control {
  display: block;
  position: relative;
  padding-left: 30px;
  padding-top: 3px;
  padding-bottom: 3px;
}

.control label {
  font-weight: normal;
  margin: 0;
  cursor: pointer;
}

.horizontaal .control {
  display: inline-block;
  margin-right: 20px;
}

.control-description {
  font-style: italic;
  color: #787878;
}

.control INPUT {
  position: absolute;
  z-index: -1;
  opacity: 0;
  width: 1px;
}

.control-indicator {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  height: 20px;
  width: 20px;
  background: #FFFFFF;
  border: 2px solid #505050;
}

.control-radio .control-indicator {
  border-radius: 50%;
}

.control INPUT ~ label:hover .control-indicator,
.control INPUT:focus ~ .control-indicator {
  background: #FFFFFF;
  border: 2px solid #000000;
}

.control-checkbox INPUT:checked ~ label .control-indicator {
  background: #1f62ff;
  border: 2px solid #000000;
}
.control-radio INPUT:checked ~ label .control-indicator {
  background: #1f62ff;
  border: 2px solid #000000;
}
.control-radio-horizontal {
  display: inline;
  padding-right: 20px;
}

.control INPUT:checked ~ label {
  font-weight: bold;
}

/* .control INPUT:not([disabled]):checked ~ label:hover .control-indicator,
.control INPUT:checked:focus ~ label .control-indicator {
  background: #666666;
  border: 2px solid #000000;
} */

.control INPUT:disabled ~ label .control-indicator {
  background: #BEBEBE;
  opacity: 0.6;
  pointer-events: none;
}

.control-indicator:after {
  content: '';
  position: absolute;
  display: none;
}

.control INPUT:checked ~ label .control-indicator:after { display: block; }

.control-checkbox .control-indicator:after {
  left: 0.6rem;
  top: 0.2rem;
  width: 0.5rem;
  height: 0.9rem;
  border: solid #FFFFFF;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.control-checkbox INPUT:disabled ~ label .control-indicator:after { border-color: #BEBEBE; }

.control-radio .control-indicator:after {
  left: 0.5rem;
  top: 0.5rem;
  height: 0.6rem;
  width: 0.6rem;
  border-radius: 50%;
  background: #FFFFFF;
}

/* .control-radio INPUT:not([disabled]):checked ~ label:hover .control-indicator:after,
.control-radio INPUT:checked:focus ~ label .control-indicator:after {
  background: #FFFFFF;
} */

.control-radio INPUT:disabled ~ label .control-indicator:after { background: #BEBEBE; }



.selectbox {
  position: relative;
  display: inline-block;
  margin-bottom: 15px;
  width: 100%;
}

.selectbox SELECT {
  display: inline-block;
  width: 100%;
  cursor: pointer;
  padding: 10px 15px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.selectbox SELECT::-ms-expand {
  display: none;
}

.selectbox SELECT:hover,
.selectbox SELECT:focus {
  border: 2px solid #000000;
  padding: 9px 14px;
}

.selectbox SELECT:disabled {
  opacity: 0.5;
  pointer-events: none;
}

SELECT::before,
.select-arrow {
  position: absolute;
  top: 16px;
  right: 15px;
  width: 0;
  height: 0;
  pointer-events: none;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  border-color: #7b7b7b transparent transparent transparent;
}

.selectbox SELECT:hover ~ .select-arrow,
.selectbox SELECT:focus ~ .select-arrow {
  border-top-color: #000;
}

.selectbox SELECT:disabled ~ .select-arrow {
  border-top-color: #ccc;
}

.control-error {
  margin-top: 7px;
  color: #EC0000;
}

.control-error LABEL {
  display: block;
  font-weight: normal;
  margin: 0;
}