#player_application_form { width: 950px; }
#player_application_form table { width: 100%; }

#player_application_form .validation_message {
  color: #913a3d;
  font-style: italic;
  display: inline-block;
  margin-left: 15px;
}

#player_application_form div.validation_message {     /* message of whole section */
  display: block;
  margin-bottom: 15px;
  padding: 7px 10px;
  border: 1px #913a3d solid;
}

#player_application_form .send_success {
  margin-bottom: 20px;
  padding: 10px;
  border: 1px #078f0b solid;
  background-color: #e7f4e7;
  color: #078f0b;
}

#player_application_form input.unvalid, select.unvalid, textarea.unvalid { background-color: #e8c9cb; }

#player_application_form fieldset {
  border: 1px #c3c3c3 solid;
  margin-bottom: 25px;
}

#player_application_form legend {
  color: #666666;
  font-size: 110%;
  padding: 0 8px;
}

#player_application_form input.checkbox {
  position: relative;
  top: 2px;
}

#player_application_form input.text, #player_application_form input.readonly { width: 200px; }
#player_application_form input.checkbox.readonly, #player_application_form input.radio.readonly { width: auto; }
#player_application_form select { width: 204px; }

#player_application_form input.readonly {
  width: 200px;
  background-color: #efefef;
}

#player_application_form .mandatory_explanation {
  font-size: 1.1em;
  font-style: italic;
  text-align: right;
  margin-bottom: 5px;
}

#player_application_form .required_mark {
  font-weight: bold;
  color: #ff0000;
  margin-left: 3px;
}

#player_application_form th {
  padding: 2px 20px 2px 5px;
  position: relative;
  text-align: right;
  width: 180px;
  font-weight: bold;
}

#player_application_form .festival_term {
  display: block;
  font-size: 9px;
  color: #999999;
  font-weight: normal;
}

#player_application_form #section_tournament .festival_tournaments { width: 720px; }

#player_application_form #section_tournament .festival_tournaments span.tournament {
  display: inline-block;
  width: 30%;  
}

#player_application_form #section_tournament .festival_tournaments span.tournament.disabled label { color: #999999; }

#player_application_form #section_tournament .festival_tournaments span.tournament.accompany {
  display: block;
  width: auto;
  margin-top: 15px;
}

#section_tournament .festival_tournaments span.tournament.t_M {
  padding-left: 220px;
}

#player_application_form .fide_id_help {
  padding-right: 15px;
  margin-top: 7px;
}

#player_application_form .fide_id_help a {
  font-size: 9px;
  font-style: italic;
  font-weight: normal;
  color: #3473e7;
}

#player_application_form .fide_id_help img {
  position: relative;
  top: 2px;
  margin-right: 3px;
}

#section_chess tr:first-child th, #section_chess tr:first-child td {
  padding-top: 5px;
  padding-bottom: 5px;
  background-color: #ffdc73;
  position: relative;
}

#section_chess tr:first-child .validation_message {
  position: absolute;
  left: 225px;
  top: 10px;
}

#section_accommodation fieldset>div { padding: 10px; }

#section_accommodation .festival {
  margin-bottom: 10px;
  font-size: 1.3em;
  font-style: italic;
}

#section_accommodation .festival span {
  font-style: normal;
  font-weight: bold;
  margin-left: 10px;
}

#section_accommodation select {
  width: 904px;
  margin-bottom: 5px;
}

#section_others label {
  display: inline-block;
  margin-bottom: 5px;
}

#section_others textarea {
  width: 914px;
  padding: 4px;
  height: 50px;
}

#section_verification { text-align: center; }
#section_verification legend { text-align: left; }

#recaptcha_area, #recaptcha_table { width: 318px !important; }
#recaptcha_widget_div, #recaptcha_area { display: inline-block; }

#section_verification div.submit { margin-top: 15px; }

#section_chess .load_fide {
  position: relative;
  top: 3px;
  margin-left: 5px;
  margin-right: 15px;
}

#player_application_form .fide_id_not_assigned {
  display: block;
  margin: 2px 0;
}

#section_visa th { width: 300px; }

#section_visa .visa_heading {
  text-align: center;
  padding: 10px 0;
}