/* FORM */
div.fs {
  min-width: 400px;
  width: 100%;
  padding-top: 9px;
  margin: 16px 0;
  border-top: 1px solid #ddd;
}
div.fi {
  clear: both;
  margin: 0 0 5px 0;
  position: relative;
}
div.fi > label {
  position: absolute;
  min-width: 130px;
  width: 33%;
}
div.fi > label.req {
  /*font-weight: bold;*/
}
div.fi div.ff {
  padding-left: 33%;
  min-width: 270px;
  width: 62%;
}
div.ff > label {
  display: block;
}

div.ff input[type=text], div.ff select, div.ff textarea {
  box-sizing: border-box;
  font-size: 12px;
  padding: 2px 4px;
  border: 1px solid #bbb;
  background-color: #fafafa;
}
div.ff input[type=text], div.ff textarea {
  min-width: 270px;
  width: 100%;
}
input[type=radio], input[type=checkbox] {
  margin-right: 5px;
}
input.btn, button.btn, a.btn {
  text-align: center;
  text-decoration: none;
  display: inline-block;
  box-sizing: border-box;
  min-width: 150px;
  padding: 0 10px;
  background-color: #fafafa;
  border: 1px solid #bbb;
  border-radius: 5px;
  cursor: pointer;
}
input.btn:active, button.btn:active, a.btn:active {
  background-color: #eee;
}
input.btn-right, button.btn-right, a.btn-right {
  display: block;
  float: right;
}
input.btn-flex, button.btn-flex, a.btn-flex {
  min-width: inherit;
}
input.btn-small, button.btn-small, a.btn-small {
  font-size: 80%;
}

div.fs .hint {
  font-size: 11px;
  line-height: 13px;
  margin-top: 5px;
  margin-bottom: 10px;
}

/* Anrede, Quittung */
div.ff select.small {
  min-width: 60px;
  width: 20%;
}
/* PLZ */
div.ff input.pcode {
  min-width: 50px;
  width: 20%;
}
/* Ort */
div.ff input.city {
  float: right;
  min-width: 215px;
  width: 78%;
}
/* Spendenbetrag */
div.ff input.donation {
  min-width: 75px;
  width: 20%;
  text-align: right;
}

/* Error */
.error {}
.error > label, .error {
  font-weight: bold;
  color: red;
}
