ul.errorlist {
  margin: 0;
  padding: 0;
}
.errorlist li {
  border: 1px solid red;
  color: red;
  background: rgba(255, 0, 0, 0.15);
  list-style-position: inside;
  display: block;
  font-size: 1em;
  margin: 0 0 3px;
  padding: 4px 5px;
  text-align: center;
  border-radius: 3px;
}
input,
textarea {
  width: 100%;
  font-size: 1em;
  padding: 8px 10px !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 5px;
  border-style: solid;
  border-width: 1px;
  border-color: rgb(169, 169, 169);
}
input,
select,
option,
label {
  height: auto;
  font-size: 1em;
}
@media (pointer: coarse) {
  input,
  select,
  option,
  label {
    min-height: 44px;
  }
}
select {
  width: 100%;
  padding: 8px 10px;
  border-radius: 5px;
  border: 1px solid rgb(169, 169, 169);
  box-sizing: border-box;
}
/* Focus states for accessibility */
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid #2196f3;
  outline-offset: 2px;
  border-color: #2196f3;
}
.success {
  background-color: rgba(0, 128, 0, 0.15);
  padding: 10px;
  text-align: center;
  color: green;
  border: 1px solid green;
  border-radius: 3px;
}

/* Search inputs: respect size attribute, don't stretch full width */
input[type="text"][size] {
  width: auto;
  max-width: min(500px, 100%);
}

/* help text  */
.helptext {
  /* text-align: center; */
  background-color: #bcdbea;
  font-size: 0.9em;
  line-height: 2em;
}
