/* VALIDIERUNG FORMULAR  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Anzeige der Validierung */
input[type="text"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="text"]:valid { 
    border-bottom: 2px solid #d03f00;
    
  }
  
  input[type="email"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="email"]:valid { 
    border-bottom: 2px solid #d03f00;
  }
  
  input[type="password"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="password"]:valid { 
    border-bottom: 2px solid #d03f00;
  }
  
  select:required { 
    border-bottom: 2px solid red;
  }
  
  select:valid { 
    border-bottom: 2px solid #d03f00;
  }
  
  textarea:required { 
    border-bottom: 2px solid red;
  }
  
  textarea:valid { 
    border-bottom: 2px solid #d03f00;
  }
  
  input[type="tel"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="tel"]:valid { 
    border-bottom: 2px solid #d03f00;
  }
  
  input[type="number"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="number"]:valid { 
    border-bottom: 2px solid #d03f00;
  }
  
  input[type="file"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="file"]:valid { 
    border-bottom: 2px solid #d03f00;
  }

  input[type="checkbox"]:required { 
    border-bottom: 2px solid red;
  }
  
  input[type="checkbox"]:valid { 
    border-bottom: 2px solid #d03f00;
  }


  /* VALIDIERUNG FORMULAR  ENDE ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

  [type="checkbox"]:not(:checked),
  [type="checkbox"]:checked {
    position: absolute;
    left: 0;
    opacity: 0.01;
  }
  [type="checkbox"]:not(:checked) + label,
  [type="checkbox"]:checked + label {
    position: relative;
    padding-left: 2.3em;
    font-size: 0.9em;
    line-height: 1.7;
    cursor: pointer;
  }


  [type="checkbox"]:not(:checked) + label:before,
  [type="checkbox"]:checked + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 1.4em;
    height: 1.4em;
    border: 1px solid #aaa;
    background: #FFF;
    border-radius: .2em;
    box-shadow: inset 0 1px 3px rgba(0,0,0, .1), 0 0 0 rgba(208, 63, 0);
    -webkit-transition: all .275s;
        transition: all .275s;
  }


  [type="checkbox"]:not(:checked) + label:after,
  [type="checkbox"]:checked + label:after {
    content: '✕';
    position: absolute;
    top: .525em;
    left: .18em;
    font-size: 1.375em;
    color: #d03f00;
    line-height: 0;
    -webkit-transition: all .2s;
        transition: all .2s;
  }


  [type="checkbox"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0) rotate(45deg);
        transform: scale(0) rotate(45deg);
  }

  [type="checkbox"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
  }


  [type="checkbox"]:disabled:not(:checked) + label:before,
  [type="checkbox"]:disabled:checked + label:before {
    box-shadow: none;
    border-color: #bbb;
    background-color: #e9e9e9;
  }

  [type="checkbox"]:disabled:checked + label:after {
    color: #777;
  }

  [type="checkbox"]:disabled + label {
    color: #aaa;
  }


  [type="checkbox"]:checked:focus + label:before,
  [type="checkbox"]:not(:checked):focus + label:before {
    box-shadow: inset 0 1px 2px rgba(0,0,0, .1), 0 0 0 6px rgba(208, 63, 0, .2);
  }



