#kursliste td:nth-of-type(4) {
  width: auto;
}
#kursliste .legende{ font-size: .8em; }
#kursliste .legende-ampel { margin-bottom: 3px; }
#kursliste .ampel-part { display: inline-block; }
#kursliste .ampel-part:not(:nth-of-type(1)) { margin-left: 15px; }

#kursliste .anmeldebutton {position: relative;}
#kursliste .anmeldebutton span.ampelRot,
#kursliste .anmeldebutton span.ampelGelb,
#kursliste .anmeldebutton span.ampelGruen {
  position: absolute;
  left: 10px;
  top: 10px;
  font-size: 14px;
}
#kursliste tr td[data-title="Termin"] {white-space: nowrap;}
#kursliste tr td[data-title="Termin"] span.startdate {
  display: block;
  padding-left: 5px;
  font-style: italic;
  font-weight: normal;
}

.btn-trimester, .btn-levelgroup {margin: 3px 0;}
.btn-trimester:not(:nth-of-type(1)) , .btn-levelgroup:not(:nth-of-type(1)) {margin-left: 5px;}

.button-male,
.button-female {white-space: nowrap;}

@media (min-width: 475px) {
  .button-male {margin-right: 5px;}  
}

@media (max-width: 1180px) { 
  .button-male,
  .button-female
    {margin-bottom: 5px;}
  
}

.legende {
  font-size: 15px;
  margin-bottom: 25px;
}

.legende .legende-minpax,
.legende .legende-coursefull {
  position: relative;
  padding-left: 20px;
  margin-bottom: 3px;
}

.legende .legende-minpax:before,
.legende .legende-coursefull:before {
  font-family: 'entypo-fontello';
  content: '';
  position: absolute;
  left: 0;
  top: -1px;
}

.legende .legende-minpax:before {
  color: #FFBF00;
}

.legende .legende-coursefull:before {
  color: #CE041F;
}

@media (min-width: 992px) {
  .modal-lg, .modal-xl {
    --bs-modal-width: 900px;
  }
}

#chargesFootnote {
  font-weight: normal;
  margin-bottom: 20px;
}

#kursliste #level_79:before,
#kursliste #level_74:before,
#kursliste #level_77:before,
#kursliste #level_77:before,
#kursliste #level_276:before,
#kursliste #level_557:before,
#kursliste #level_560:before {
  content: '' !important;
}

#top #wrap_all #kursliste h2.levelgroup {
  font-size: 40px;
  font-family: 'gruppo', Helvetica, Arial, sans-serif;
  border-bottom: 1px solid #ece4d3;
  width: 100%;
  display: block;
  line-height: 60px;
}

#kursliste h4.levelname {
  margin-top: 30px;
}

#top #wrap_all #kursliste div[id^=level_]:not(:nth-of-type(1)) {margin-top: 60px;}
#top #wrap_all #kursliste h3.tableHeading {margin-top: 60px;}
a.btn-trimester {color: #FFF;}

/* MODAL */
html.responsive {overflow: visible;}
body.modal-open {overflow: hidden;}
body.modal-open a#scroll-top-link {display:none;}

.btn.toggleTermineModal {
  background-color: var(--enfold-main-color-primary) !important;
  background-image: linear-gradient(to right, rgb(241, 78, 0), rgb(255, 168, 0));
  color: var(--enfold-main-color-bg);
}

.btn.toggleTermineModal:hover, 
.btn.toggleTermineModal:focus, 
.btn.toggleTermineModal:active  {
  color: var(--enfold-main-color-bg);
}

#kursliste table .modal {
  font-size: 16px;
  background-color: rgba(0,0,0,0.7);
  width: 100%;
}

#kursliste table [id^=courseDates-] .modal-header button.close{
  width: 30px;
  background-color: #f14c00;
  font-size: 28px;
}

#kursliste table .modal .modal-content {
   background-color: #FFF;
}

div#dialog999 a.btn.appdownload {
  color: #fff;
}

/* NO-MORE-TABLES */
@media (max-width: 899px) {

  .levelButtonWrapper {text-align:center;}
  #kursliste .ampel-part { display: block; }
  #kursliste .ampel-part:not(:nth-of-type(1)) { margin-left: 0px; }
  #termine .no-more-tables .table td::before {display: inline-block; font-weight: normal;}
  #kursliste table .anmeldebutton.btn.running:disabled { display: block }
  #kursliste table div.button-male .anmeldebutton.btn:disabled, #kursliste table div.button-female .anmeldebutton.btn:disabled { display: inline-block }
  .no-more-tables .table td span.br::after { content: ""; }
  #kursliste tr td[data-title="Termin"] span.startdate { display: inline-block; }
  #termine td .anmeldung {text-align: right;}
.no-more-tables table.table, .no-more-tables .table thead, .no-more-tables .table tbody, .no-more-tables .table th, .no-more-tables .table td, .no-more-tables .table tr {
    display: block;
}
.no-more-tables .table thead tr {
    left: -9999px;
    position: absolute;
    top: -9999px;
}

.no-more-tables .table tr:last-child  {
    border-bottom: 1px solid #CCC !important;
}


.no-more-tables .table td {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: -moz-use-text-color -moz-use-text-color #eee;
    border-image: none;
    border-style: none none solid;
    border-width: medium medium 0;
    padding-left: 110px;//27%;
    position: relative;
    text-align: left;
    white-space: normal;
}

.no-more-tables .table.sc_table td,
#content .sc_rows > a {
    padding-left: 0px;
    padding-right: 0px;
}

.no-more-tables .table tr.headline-tr td:last-child {
    padding-left:4px;
}

.no-more-tables .sc_table td.date{
    width: 85%;
}

.no-more-tables .sc_table td.venue.empty{
    padding: 0px;
}

.no-more-tables .sc_table td.infolink{
    width: 15%;
    top: -38.85px;
    left: 85%;
    text-align: right;
    padding: 8px 0px;
}

.no-more-tables .tableHead td {
    padding: 2px 4px;
}
.no-more-tables .table td::before {
    font-weight: bold;
    left: 6px;
    padding-right: 10px;
    position: absolute;
    text-align: left;
    white-space: nowrap;
}
.no-more-tables .table td::before {
    content: attr(data-title);
}

.no-more-tables .table td span.br {
    display: inline;
}
table.anmeldungstab tr {
    border-bottom: 0 none;
    border-top: 0 none;
    min-height: 10px;
}

.no-more-tables .table.anmeldungstab.current td {
    padding-left: 150px;
}

 table.anmeldungstab tr td {
  width: auto !important;
 }

}