/*/*/
.required {
  color: #00c;
}
.module--plain legend {
  color: #000;
  padding: 0 0 0 15px;
  margin: 0 !important;
  font-weight: bold;
  background-color: inherit !important;
  border-top: 4px solid #eee;
  border-bottom: 4px solid #eee;
  font-size: 140%;
  position: relative;
  left: -5px;
  top: 5px;
}

.module--plain fieldset {
  float: left;
  clear: left;
  width: 100%;
  margin: 0 0 1em 0;
  padding: 0;
  background-color: #eee;
  border-top: 32px solid #eee;
  border-bottom: 1px solid #eee;
  border-left: 5px solid #eee;
  border-right: 1px solid #eee;
  padding-top: 10px;
}
.module--plain fieldset ul {
  padding: 0 0 0 10px;
  margin: 0 0 1em 0;
  list-style: none;
  clear: left;
}
.module--plain fieldset li {
  clear: left;
  padding-bottom: 0.5em;
}
.module--plain fieldset .group {
  padding-bottom: 0;
  margin-bottom: 0;
}

.module--plain fieldset.submit {
  float: none;
  width: auto;
  border: 0 transparent none;
  padding: 0;
  margin: 0 0 10px 0;
  background-color: transparent;
}
.module--plain fieldset.submit legend {
  height: 0;
  border: 0 none transparent;
}
.module--plain fieldset label {
  display: block;
  float: left;
  width: 5.25em;
  margin: 0 1em 1em 0;
  text-align: right;
}
.module--plain .tinymce fieldset label {
  float: none;
  text-align: left;
  margin: 0.25em 0;
}
.module--plain label.wide {
  width: 9em;
}
.module--plain label.wider {
  width: 17em;
}
.module--plain label.evenwider {
  width: 21em;
}
.module--plain label.superwide {
  width: 25em;
}
.module--plain label.checkb {
  width: 35em;
}

/* strong {
  display: block;
  margin-left: 9.5em;
  color: #c00;
  font-size: 95%;
  font-weight: bold;
} */

.module--plain fieldset li label.dsz {
  display: block;
  float: right;
  width: 36.25em;
  margin: 0 1em 1em 0;
  text-align: left;
}
.module--plain div.explain {
  margin: 0 0 0 20px;
  color: #00c;
  clear: both;
  font-size: 14px;
}
p.fehler {
  font-weight: bold;
  color: #c00;
}
ul.fehler li {
  font-weight: bold;
  margin-left: 2em;
}
.module--plain .error {
  background-color:#fdd;
}

.module--plain div.vorschau {
  border: 2px solid red;
  /*padding: 0.5em;*/
  font-weight: bold;
  font-size: 1.2em;
  background-color: #f9f9f9;
  margin: 1em 0;
  min-height: 2.75em;
}
.module--plain div.vorschau input {
  display: block;
  float: right;
  font-size: 1em !important;
  margin: 0 !important;
}
.module--plain div.vorschau input.korrigieren {
  float: left;
}
.module--plain div.vorschau p {
  clear: both;
  margin-top: 1em;
  font-size: 1em;
  font-weight: normal;
}
/* Fehler Dialog */
div#dialog-error p, div#dialog-error-js p {
  font-weight: bold;
  color: red;
}
div#dialog-error li, div#dialog-message li, div#dialog-confirm li, div#dialog-error-js li {
  margin-left: 1em;
}

/* nur fuer adressen */
#content input.buttondelete, #content input.buttonsubmit, #content input.buttonsearch {
  font-size:1em;
  font-weight:bold;
  border:1px solid #666;
  height: auto;
  padding: 0.1em 0.4em;
  margin: 0 0.5em 0 0;
  background-color:#e0e0e0;
}
#content input.buttondelete {
  color:#c33;
}
#content input.buttonsubmit {
   color:#33c;
}
#content input.buttonsearch {
   color:#3c3;
}
.module--plain fieldset.submit2 {
  float: none;
  width: auto;
  border: 0 transparent none;
  background-color: #fff;
  height: 4em;
  overflow: hidden;
}
.module--plain fieldset.submit2 input[type="image"],
.module--plain fieldset.submit2 a img {
  padding: 3px;
}
.module--plain fieldset.submit2 legend {
  height: 0;
  width: 0;
  border: 0 none transparent;
}
.module--plain div.verteiler {
  background-color: #f0f0f0;
  height: 2em;
  margin: 0 0 0 0.5em;
  padding: 0.25em;
}
/* CSS for tabbed interface with hamburger menu */
.module--plain header {
  background-color: transparent;
  padding: 10px 0;
  float: right;
  z-index: 1;
}
.module--plain div#addrhamb {
  border: 1px solid #000;
  border-radius: 3px 3px 3px 3px;
  cursor: pointer;
  display: block;
  height: 24px;
  padding: 3px 4px 3px;
  position: relative;
  width: 25px;
  background-color: #999;
}
.module--plain div#addrhamb div {
  background-color: #fff;
  border: 1px solid #eee;
  border-radius: 2px 2px 2px 2px;
  height: 2px;
  margin-top: 3px;
  width: 90%;
}
.module--plain .subnav a {
  text-decoration: none;
}
.module--plain .subnav a:hover, .module--plain .subnav a:focus  {
  text-decoration: underline;
}
.module--plain .subnav li li {
  font-size: 88.2%;
}
.module--plain .subnav ul, .module--plain .subnav p.back {
  padding: 0;
}
.module--plain div#floatmenue {
  width: 270px;
  position: absolute;
  top: 42px;
  left: -246x;
  background-color: #fff;
  border: 1px solid #aaa;
  z-index: 99;
  display: none;
}
.module--plain div#floatmenue ul li ul li {
  padding-top: 0;
}
.module--plain ul.autotabs li  a {
  outline: none;
}
.module--plain fieldset.verteiler ul li {
  padding: 0 0 4px 0;
  text-indent: -2em;
  margin-left: 2em;
}
.module--plain fieldset.verteiler ul li label {
  display: inline;
  width: auto;
  float: none;
  margin: 0 0 0 0.6em;
  text-align: left;
}
/* nur fuer anmeldungen */
table.subfield {
  border: 1px dotted #006;
  width: 410px;
  margin-left: 253px;
}
table.subfield th {
  font-weight: normal;
  font-style: italic;
}
table.subfield td {
  padding: 4px;
}
.module--plain table.subfield th.rb, .module--plain table.subfield td.rb {
  text-align: center;
}
.module--plain p.warteliste {
  background-color: #cfc;
  padding: 0.5em;
}
.mebox {
   padding: 0.5em 1em;
   background-color: #deeaef;
   margin-bottom: 0.5em;
}
div.bx {
  font-size: 120%;
  background-color: #eee;
  border: 1px solid #000;
  padding: 2px;
}
li.mailtext {
  padding-left: 18em;
}
li.mailoder {
  padding-left: 14em;
}
fieldset.ttable {
  margin: 0;
  background-color: #fff;
  border-top: 2em solid #fff;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
}
fieldset.ttable legend {
  border-top: 4px solid #fff;
  border-bottom: 4px solid #fff;
}
.module--plain table.dtform {
  display: table;
  table-layout: auto;
  border: 1px solid #ebebeb;
  margin-bottom: 0.5em;
}
.module--plain table.dtform th {
  padding: 2px;
  border: 1px solid #ebebeb;
  font-size: 110%;
}
.module--plain table.dtform td {
  padding: 2px;
  border: 1px solid #ebebeb;
  font-size: 110%;
  overflow: hidden;
}
.module--plain a.edit {
  display: block;
}
.module--plain span.fa-plus, .module--plain span.fa-minus {
  cursor: pointer;
}
.module--plain input.datum {
  width: 140px;
}
 .module--plain input.zeit {
  width: 90px;
}
 .module--plain input.ort {
  width: 330px;
}
/* work around aperto specials */
span.combobox {
  float: none;
}
/* KVVZ */
form#kvvzaendern fieldset li label {
  display: inline;
  float: none;
  width: auto;
}
table.kursdetails {
  width: 100%;
}
table.kursdetails tr th {
  font-size: 80%;
}
table.kursdetails tr td {
  font-size: 80%;
}
table.kursdetails tr td select {
  font-size: 100%;
}
.buttonconfirm, .buttonsubmit {
  font-size:1.1em;
  font-weight:bold;
  border:1px solid #666;
  margin-bottom: 0.5em;
  background-color:#ddd;
}
.buttonconfirm {
  color:#f00;
}
.buttonsubmit {
  color:#00f;
}
.buttonbreak {
  color:#000;
}
.module--plain input[type="checkbox"], .module--plain input[type="radio"] {
  vertical-align: middle;
}
.module--plain input[type="radio"] {
  margin-right: 5px;
}
.module--plain input[type="checkbox"] {
  margin-right: 2px;
}
@media (max-width: 879px) {
  .module--plain fieldset li label {
    float: none;
    width: auto;
    text-align: left;
    margin: 0;
  }
  .module--plain label.wide, .module--plain label.wider, .module--plain label.evenwider,
  .module--plain label.superwide, .module--plain label.checkb {
    width: auto;
  }
  .module--plain label.group {
    display: inline;
  }
  .module--plain div.explain {
    margin: 0;
  }
  li.mailtext, li.mailoder {
    padding-left: 0;
  }
  table.subfield {
    margin-left: 0;
  }
}
/* Terminbuchung */
div#grunddaten, div#terminauswahl, div#dse {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
div#dse {
  flex-wrap: nowrap;
}
div#dse div.dsetext {
  font-size: 140%;
}
div#dse div.dsebutton {
  min-width: 35px;
  margin-left: 10px;
}
#dse .dsetext label {
	width: auto;
	text-align: left;
}
div#grunddaten select, div#grunddaten input {
  font-size: 115%;
}
div#grunddaten div.gdfeld {
  margin: 5px;
}
div#terminauswahl div.terminfeld {
  margin: 5px;
}
div.sidebar {
  float: right;
  width: 390px;
  padding: 0 10px 0 0px;
  text-align: right;
}
div.sidebar label {
  width: auto;
  text-align: right;
  display: inline;
  padding: 0 0 0 10px;
  float: none;
  margin: 0;
}
table.telefon tr.gone {
  background-color: #f0f0f0;
  display: none;
}
table.telefon tr:hover {
  background-color: #f6f6f6;
}
span.faicon {
  cursor: pointer;
}
