*,
*::before,
*::after {
  box-sizing: border-box;
}


a {
  color: #990000;
  cursor: pointer; }
  a:hover {
    color: #ff0000; }

html {
  margin: 0;
  padding: 0; }

body {
  margin: 0;
  padding: 0;
  text-align: center; }

div.body {
  background-color: #ffffff;
  color: #000000;
  font: normal normal normal 0.7rem "Work Sans", Arial, "Helvetica Neue", Helvetica, sans-serif;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.aw {
  color: #990000;
  font-size: 180%;
  padding: 0 5px;
  font-family: 'FontAwesome-webfont';
  cursor: pointer; }
  .aw:hover {
    color: #ff0000; }

h1 {
  background-color: transparent;
  margin: 30px 0 15px 0;
  padding: 0;
  font-size: 150%;
  font-weight: bold;
  color: #000000; }

img {
  border: 0; }

img.icon_22x22 {
  height: 22px;
  width: 22px; }

img.icon_32x32 {
  height: 32px;
  width: 32px; }

img#jt_logo {
  width: 189px;
  height: 110px;
  margin: 30px 0 0 0; }

p {
  text-align: left;
  margin: 0;
  padding: 0 0 0 5px; }

form {
  width: 800px;
  margin: 0 auto 0 auto;
  padding: 20px 0 20px 0;
  border: 1px solid #aaaaaa; }

h2 {
  margin: 0 0 20px 20px; }

div.profil {
  width: 800px;
  margin: 0 auto 0 auto;
  padding: 20px 0 20px 0;
  border: 1px solid #aaaaaa; }

div.error_message {
  margin: 0 auto 2em 20px;
  text-align: left;
  font-size: 12px;
  color: #ff0000; }

div.form_element {
  min-height: 20px;
  margin: 10px auto 1.25em auto;
  width: 262px;
  overflow: hidden;
  display: flex;
  flex-flow: row nowrap; 
}  
  
div.form_element_legende { 
  flex: 0 0 100px;
  text-align: left;
  font-weight: normal;
  font-size: 12px;
  line-height: 20px; 
}
  
label {
  width: 100%;
}  
    
div.form_element_input {
  text-align: left;
  flex: 0 0 160px;
  line-height: 20px;
  font-size: 12px; 
}    
 
input {
  width: 160px;
  line-height: 20px;
  font-size: 12px; 
}

button {
  color: #000000;
  background-color: #ffffff;
  text-align: center;
  font: normal normal normal 12px/1.3 Arial, Helvetica, sans-serif;
  margin: 0 5px 2px 0;
  padding: 0 5px 0 5px; }

form dl {
  margin: -3px 3px 0 3px;
  padding: 3px 3px 0 3px;
  float: left;
  border: 1px solid #ffffff;
  position: relative;
  left: -4px; }

form dt {
  text-align: center;
  margin: 0 0 0 0;
  padding: 0 0 0 0; }

form dd {
  text-align: center;
  margin: 0 0 0 0;
  padding: 0 0 0 0; }

select {
  font-size: 12px;
  background-color: #ffffff; }
  select option {
    padding: 5px 0; }

div.button_row {
  margin: 16px auto 6px auto;
  width: 100%;
  text-align: center;
  overflow: hidden; }

div.button_row_centering {
  float: left;
  position: relative;
  left: 50%;
  text-align: left; }

div.button_row_centering input.button_row_button {
  display: block;
  position: relative;
  left: -50%;
  float: left;
  color: #000000;
  background-color: #ffffff;
  margin: 0 5px;
  padding: 0 5px; }

button, input[type="submit"] {
  font-size: 13px;
  padding: 5px 10px;
  width: auto;
  display: inline-block;
  border: 0;
  background: #dddddd;
  background: -moz-linear-gradient(top, #efefef, #d0d0d0);
  background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#d0d0d0));
  color: #000000;
  cursor: pointer; }
  button:hover, input[type="submit"]: hover{
    color: #ffffff;
    background: #d50e13;
    background: -moz-linear-gradient(top, #d50e13, #a01e1d);
    background: -webkit-gradient(linear, left top, left bottom, from(#d50e13), to(#a01e1d));
    cursor: pointer; }

form#login_form {
  margin: 0 auto 0 auto;
  padding: 15px 0 15px 0;
  width: 300px;
  border: 1px solid #aaaaaa; }
  form#login_form div.form_element {
    margin: 0 20px 10px 20px;
    width: 260px;
    display: flex;
    flex-flow: row nowrap;
    align-items: center; }
  form#login_form label {
    text-align: left;
    flex: 0 0 120px;
    cursor: pointer; }
  form#login_form input {
    text-align: left;
    min-width: 0;
    height: auto; }
  form#login_form input[type="number"] {
    line-height: 30px; }
  form#login_form textarea {
    width: 100%;
    height: 120px; }
  form#login_form input[type="text"] {
    width: 100%; }
  form#login_form input[type="number"] {
    line-height: 30px;
    width: 100%; }
  form#login_form p.error_message {
    text-align: left;
    margin: 0 20px 0 20px;
    padding: 0 0 0 20px;
    line-height: 30px;
    color: #ff0000; }
  form#login_form div.button_row > input {
    margin-top: 10px; }

form#login_form {
  margin: 140px auto 0 auto;
  padding: 0 0 15px 0;
  background-color: #dddddd;
  border: 0; }
  form#login_form h1 {
    position: relative;
    background-color: #360c0b;
    color: #ffffff;
    font-size: 28px;
    font-weight: 300;
    margin: 0 auto 30px auto;
    padding: 0 0 0 70px;
    height: 70px;
    line-height: 70px;
    text-align: left; }
    form#login_form h1:before {
      content: '';
      position: absolute;
      left: 0px;
      top: 15px;
      background: url(../images/jobticket_logo_140x109.png) no-repeat 20px center;
      background-size: 50px;
      width: 70px;
      height: 39px; }
    form#login_form h1 input {
      line-height: 18px; }
