form {
  margin: 10px auto;
  width: 80%;
  border-radius: 1em;
  background-color: rgba(0,0,0,.5);
  border: 1px solid darkgreen;
  padding: 2rem;
}

label span {
  display: inline-block;
  text-align: right;
}

input, textarea {
  font: 1rem sans-serif;
  width: 100%;
  padding-left: .5rem;
  box-sizing: border-box;
  border: 1px solid seagreen;
  border-radius: 5px;
  background-color: #001a00;
  font-family: overlock;  
}

select {
  font: 1rem sans-serif;
  width: auto;
  box-sizing: border-box;
  border: 1px solid seagreen;
  border-radius: 5px;
  color: seagreen;
  background-color: #001a00;
  font-family: overlock;  
}

input::placeholder {
  color: seagreen;
  opacity: 1; /* Ensures full opacity, especially for Firefox */
}

textarea::placeholder {
  color: seagreen;
}

input[type="checkbox"],
input[type="radio"] {
  width: auto;
  border: none;
  accent-color: auto;
}

input.custom {
  accent-color: #001a00;  
}

input:focus,
textarea:focus {
  border-color: black;
}

textarea {
  vertical-align: top;
  height: 5em;
  resize: vertical;
}

fieldset {
  width: 95%;
  box-sizing: border-box;
  border: 1px solid seagreen;
  border-radius: 15px;
  margin: 1rem auto;
  padding: 15px;
  color: seagreen;
  background: radial-gradient(circle at center, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.5) 60%, rgba(0,0,0,0) 90%); overflow-y: auto;  
}

button {
  margin-top: 20px;
}

label {
  display: inline-block;
}

p label {
  width: 100%;
}
