form {
    font: 1em/110% Verdana;
  }
  label {
    min-width: 10em;
    display: inline-block;
    text-align: left;
    padding-top: 0.1em;
  }

  select{
    width: 18em; 
    padding : 0.2em;
    font-family: Verdana;
    font-size: 0.8em;
    color: gray;
  }

  input { 
    width: 18em; 
    padding : 0.2em;
    font-family: Verdana;
    color: gray;
  }
  textarea {
    width: 24em;
    padding: 0.2em;
    font-family: Verdana;
    color: gray;
  }
  
  input[type="checkbox"], input[type="radio"] {
    width:auto; 
  }
  form div { padding: 0.30em; }
  
  label:first-child {
        vertical-align: top;
  }
  input[type="checkbox"], input[type="submit"] {
    margin-left: 12em;
  }
  input[type="submit"], input[type="reset"] {
    width: 10em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
    background: #dcdcdc;
    border: 2px solid #6c6c6c; 
    color: black;
  }
  
  /* Stylen */
  
  fieldset {
    width: 90%;;
    padding-top: 1.5em;
    padding-left: 1.5em;
    background: #e6decf;
  }
  legend {
    background:whitesmoke;
    padding-left: 1em;
    padding-right: 1em;
    border: 3px solid #000330;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
  }
   input:hover, textarea:hover {
    background: #fffff0;
    border: 1px solid #efe816; 
    box-shadow: 0 0 2px rgba(0,0,0,0.2);
  }
  input[type="submit"]:hover, input[type="reset"]:hover {
    /*background:#c9c9c9;*/
    background: #006600;
    color: whitesmoke;
    border: 2px solid #6c6c6c; 
  }
  input[type="submit"]:active, input[type="reset"]:active {
    background:#8f8f8f;
  }
  input:required + label::after{ color: red;}
  textarea:required + label::after{ color: red;}
  input[type='email']:valid + label::after{
    color: green;
    /*content: " ✓"; */
   }
   textarea:valid + label::after{
    color: green;
    /*content: " ✓"; */
   }
  
  /* Einspaltiger Umbruch bei 640 Pixel */
  @media screen and (max-width: 40em) {
    label:not(.nobreak) { display: block; }
    label{ padding-bottom: 0.4em; }
    input:not(.nobreak) { display:block; }
    input[type="checkbox"], input[type="submit"], input[type="radio"]  {
      margin-left: 0;;
    }

    h1{
        font-size: 1.5em;
    }

    input[type="submit"], input[type="reset"] {
      width: 18em;
    }


  }