.select_input {
  display: inline-block;
  text-align: left;
}

.select_input input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
}

.select_input .selector {
  display: inline-block;
  border: 1px solid black; 
  padding: 10px;
  margin-top: 10px;
  position: relative;
  width: calc(100VW - 20px - 30px);
  max-width: 300px;
  background: #F5F5F5;
  /*border: 2px solid;*/ 
}

.select_input .selector:focus {
  outline: 1px solid black;
}

.select_input .selector:after {
  content: '\25BD';
  padding-left: 5px;
  position: absolute;
  right: 10px;
}

.select_input .selector:hover:after {
  content: '\25BC';
}



.select_input .selector .selection {

}

.select_input.placeholder .selector {
  text-align: center;
}

.select_input.placeholder .selector .selection {
  color: gray;
}

.select_input .selector .list {
  --padding-item: 10px;
  visibility: hidden;
  position: absolute;
  top: 39px;
  left: -1px;
  display: block;
  border: 1px solid black;
  width: 100%;
  z-index:9999999999999999;
  background-color: white;
  text-align: left;
  max-height: 25vh;
  overflow: auto;
}


.select_input .selector:active .list,
.select_input input[type="checkbox"]:checked ~ .list {
  visibility: visible;
}

.select_input .selector .list .item {
  display: block;
  padding: var(--padding-item);'
  overflow-wrap: break-word;
  word-break: break-all;
}

.select_input .selector .list .item:focus {
  outline: 0px solid black;
}

.select_input .selector .list .item:focus {
  background-color: #3366AA;
  color: white;
  cursor: pointer;
}