/* --- 2021-09-23 --- */
/* --- 2022-10-07 --- */
/* --- 2025-12-08 --- */
/* --- 2026-01-06 --- */
/* --- 2026-02-20 --- */
/* --- 2026-03-29 --- */

ul.danceitems {
    display: flex;
    column-gap: 0.3rem;
    padding: 0;
    margin: 0 0 0.6rem 0;
    list-style: none;
}

ul.danceitems li {
    margin: 0;
    color: var(--s-primary-color, #2091e1);
    padding: 0.3rem 0.6rem;
    border-radius: 4px;
    border: 2px solid var(--s-primary-color, #2091e1);
    cursor: pointer;
}

ul.danceitems li.selected {
    color: #fff;
    background-color: var(--s-primary-color, #2091e1);
}

/* === ASTRA THEME SUB MENU NAVI === */
ul#ast-hf-menu-1 > li > ul.sub-menu li {
    background-color: #00000078;
}

/* === LEFT SIDEBAR MENU MEIN KONTO === */
ul.account-sub-menu {
    padding-left: 0px;
}

div#mein-konto-menu > ul.menu {
    display: flex;
    flex-direction: column;
}

/* === ACCOUNT PAGE LISTS === */
ul.liste-kurs-lektionen {
    padding-left: 0px;
    display: flex;
    flex-direction: column;
}

ul.liste-kurs-lektionen li {
    list-style: none;
    padding-left: 0px;
}

ul.liste-kurs-lektionen > li:not(.headline):hover {
    background-color: #e8e8e8;
}

ul.liste-kurs-lektionen > li > ul {
    display: flex;
    flex-direction: row;
    padding-left: 0px;
    column-gap: 10px;
    margin: 0;
}

ul.liste-kurs-lektionen > li > ul > li {
    width: 10%;
    margin: 0;
}

ul.liste-kurs-lektionen > li > ul > li:first-child {
    width: 20%;
}

ul.liste-kurs-lektionen > li > ul > li:last-child {
    width: 25%;
    text-align: right;
}

ul.liste-kurs-lektionen > li > ul > li:nth-child(2),
ul.liste-kurs-lektionen > li > ul > li:nth-child(3),
ul.liste-kurs-lektionen > li > ul > li:nth-child(4),
ul.liste-kurs-lektionen > li > ul > li:nth-child(5) {
    text-align: center;
}

ul.liste-kurs-lektionen li.headline {
    border-bottom: 1px solid;
    color: var(--linkInitialColor);
}

ul.liste-kurs-lektionen > li > ul > li > a.icon-file-pdf {
    background-image: url(/wp-content/plugins/fo-dance-x/assets/img/file-pdf-red.svg);
    background-repeat: no-repeat;
    padding-left: 32px;
    background-size: contain;
}

select#grund {
    height: 30px;
    width: 200px;
}

/*=== MENU ICON MAIN NAVY ===*/
.dx_menu_icon:before {
    content: " ";
    line-height: 1em;
    width: 50px;
    position: relative;
    left: 16px;
    background-image: url(/wp-content/plugins/fo-dance-x/assets/img/enter.svg);
    height: 30px;
    background-position: center;
    background-size: 20px;
    background-repeat: no-repeat;
}

.dx_menu_icon.loggedin:before {
    background-image: url(/wp-content/plugins/fo-dance-x/assets/img/cool.svg);
}

/*.dx_menu_icon.loggedin:hover::before {*/
/*    background-image: url(/wp-content/plugins/fo-dance-x/assets/img/exit.svg);*/
/*}*/

/* === ACCORDION === */

div.en-accordion {
    margin-top: 30px;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

div.en-accordion div p {
    margin-bottom: 0px;
}

div.en-acc-row {
    display: flex;
    align-items: flex-end;
}

div.en-acc-heading {
    display: flex;
    justify-content: space-between;
    cursor: pointer;
}

div.kursstufenintro p {
    text-align: left;
}

div.en-acc-content a.kursanmeldelink {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

div.en-acc-content a.kursanmeldelink:hover {
    background-color: rgba(132, 132, 132, 0.31);
}

div.en-acc-content a.kursanmeldelink:hover:after {
    content: "Buchen";
    display: block;
    position: absolute;
    right: -68px;
    background-color: #da1c4b;
    padding: 2px 8px;
    margin-top: -5px;
    color: #fff;
    border-radius: 5px;
}

div.en-acc-content a.kursanmeldelink div {
    width: 20%;
    text-align: left;
    line-height: 1.4;
}

div.en-acc-content a.kursanmeldelink div.kurswtag {
    min-width: 100px;
}

div.en-acc-content a.kursanmeldelink div.vonbis {
    min-width: 220px;
}

div.en-acc-content a.kursanmeldelink div.lektionen {
    min-width: 120px;
}

div.en-acc-content a.kursanmeldelink div.zeiten {
    min-width: 120px;
}

div.en-acc-section > div.en-acc-heading > svg {
    transition: transform .3s ease-in-out;
    transform: rotate(180deg);
}

div.en-acc-section.en-acc-open > div.en-acc-heading > svg {
    transition: transform .3s ease-in-out;
    transform: rotate(0deg);
}

div.en-acc-section > div.en-acc-row {
    display: none;
}

div.en-acc-section > div.en-acc-content {
    display: none;
}

div.en-acc-section.en-acc-open > div.en-acc-content {
    display: block !important;
}

div.en-acc-section.en-acc-open > div.en-acc-row {
    display: flex !important;
}

span.en-data-fieldlabel {
    opacity: 0.8;
    font-size: 0.75em;
}

span.en-hide-line {
    display: none;
}

div.en-acc-row {
    gap: 24px;
}

div.en-acc-row > div {
    border-bottom: 1px dotted #ff6900;
}

div.en-acc-row.en-columns-4 > div {
    width: 25%;
}

div.en-acc-row.en-columns-5 > div {
    width: 20%;
}

div.en-acc-row.en-columns-6 > div {
    width: 16%;
}

div.en-acc-row.en-columns-7 > div {
    width: 14%;
}

div.en-acc-row.en-columns-8 > div {
    width: 12%;
}

div.en-acc-row.en-columns-9 > div {
    width: 9%;
}

/* === /ACCORDION === */

/* === sidebar menu === */
ul#menu-sidebar-menue li {
    list-style: none;
    margin: 0;
}

li.en_sidebar_uppercase {
    font-weight: 700;
    text-transform: uppercase;
}

/* === other content === */
p.kursteaser {
    display: block !important;
}

.en-container .no-result {
    max-width: var(--content-width) !important;
    width: var(--container-width) !important;
    margin: 100px auto;
}

/* === EINZELKURS DATAFIELDS === */
span.dx-data-fieldlabel {
    font-weight: 400;
    font-size: 0.8rem;
}

span.dx-data-field,
span.en-col-field {
    font-weight: 700;
    font-size: 0.8rem;
    padding-left: 0.6rem;
}

div.dx-block-course-data.dx-columns-2,
div.dx-block-course-data.dx-columns-3 {
    display: flex;
    gap: 20px;
}

div.dx-block-course-data.dx-columns-2 > div {
    width: 50%;
}

div.dx-block-course-data.dx-columns-3 > div {
    width: 33.33%;
}

div.kursblock-course-data,
div.en-block-course-data.en-columns-2,
div.en-block-course-data.en-columns-3 {
    display: flex;
    gap: 20px;
}

div.kursblock-course-data.kurscolumns-1 > div,
div.en-block-course-data.en-columns-1 > div {
    width: 100%;
}

div.kursblock-course-data.kurscolumns-2 > div,
div.en-block-course-data.en-columns-2 > div {
    width: 50%;
}

div.kursblock-course-data.kurscolumns-3 > div,
div.en-block-course-data.en-columns-3 > div {
    width: 33.33%;
}

div.dx-block-single-course-data.anmeldelink,
div.en-block-single-course-data.anmeldelink {
    margin-top: 50px !important;
    text-align: center;
}

div.en-block-single-course-section {
    margin-top: 50px;
}

/* === DATAFIELDS === */
span.dashicons.en-red:before {
    /*content: "\f5ec";*/
    /*font-family: fontawesome;*/
    content: "\f153";
    font-family: 'dashicons';
    color: #c40112;
    line-height: 1;
    font-size: 22px;
    font-weight: 700;
}

span.dashicons.en-yellow:before {
    /*content: "\f058";*/
    /*font-family: fontawesome;*/
    content: "\f153";
    font-family: 'dashicons';
    line-height: 1;
    font-size: 22px;
    font-weight: 700;
    color: darkorange;
}

span.dashicons.en-green:before {
    /*content: "\f058";*/
    /*font-family: fontawesome;*/
    content: "\f12a";
    font-family: 'dashicons';
    color: green;
    line-height: 1;
    font-size: 22px;
    font-weight: 700;
}

/* === /DATAFIELDS === */

ul#menu-login-menu-aside li.active {
    color: var(--linkHoverColor);
    border-bottom: 1px solid var(--linkHoverColor);
    font-weight: 700;
}

ul#menu-login-menu-aside li.active > a {
    font-weight: 700;
}

ul#menu-login-menu.account-sub-menu > li > a {
    padding: 10px 15px;
}

ul.account-sub-menu > li {
    list-style: none;
}

/* === OVERLAY-ACCOUNT === */
div#overlayaccount {
    display: flex;
    position: fixed;
    left: 0px;
    top: 0px;
    height: 100vh;
    width: 100vw;
    background-color: rgb(255 255 255 / 80%);
    z-index: 9;
}

/* === OVERLAY-ANMELDUNG === */
div#overlaycontainer {
    display: flex;
    position: fixed;
    left: 0px;
    top: 0px;
    height: 100vh;
    width: 100vw;
    /*background-color: #89b1bf61;*/
    /*background-color: rgb(137 177 191 / 68%);*/
    /*background-color: #00000078; */
    background-color: #253b74ba;
    z-index: 99;
}

div#overlay {
    font-size: 0.8rem;
    margin: auto;
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    row-gap: 20px;
    max-height: 90vh;
    position: relative;
    width: 70vw !important;
    max-width: 600px !important;
    overflow-y: scroll !important;
    height: auto;
    min-width: 60px;
    background-color: #fff;
    /*box-shadow: 0px 0px 20px rgb(44 62 80 / 15%);*/
    box-shadow: 0px 0px 20px rgb(44 62 80 / 75%);
    border-radius: var(--rundeeckenklein);
    transition: transform 0.5s ease-out;
}

div#overlay h4 {
    font-size: 1rem;
}

div#overlay #overlayfront {
    display: none;
}

div#overlay.loading #overlayfront {
    display: block;
    background-image: url(../img/spinner.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 90px;
    position: absolute;
    top: 0px;
    height: 100%;
    width: 100%;
    left: 0px;
    background-color: rgb(255 255 255 / 70%);
}

div#overlay.loading.error #overlayfront {
    border: 6px solid red;
    border-radius: 6px;
}

div#overlayperson1,
div#overlayperson2,
div#overlayafteruserdata {
    position: relative;
    margin-bottom: 20px;
    padding-left: 12px;
    padding-right: 15px;
    border-left: 3px solid #ddd;
}

div#overlayperson1.requiredfields,
div#overlayperson2.requiredfields,
div#overlayafteruserdata.requiredfields {
    border-left: 3px solid red;
}

div#overlayperson1.requiredfieldsok,
div#overlayperson2.requiredfieldsok,
div#overlayafteruserdata.requiredfieldsok {
    border-left: 3px solid #40ba7b;
}

legend.overlay_required:after,
label.overlay_required:after {
    content: "*";
    color: red;
    padding-left: 6px;
    font-weight: 700;
}

label.overlay_required.selecthint:after {
    content: "Bitte auswählen";
    display: flex;
    border: 1px solid red;
}

div.fieldbox {
    display: flex;
    flex-direction: column;
    width: 100%;
}

span.abmeldung-ok {
    background-color: #57f23e;
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    margin-right: 8px;
}

span.abmeldung-error {
    background-color: #c40012;
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    margin-right: 8px;
}

div#overlayafteruserdata p {
    margin-bottom: 0px;
}

#overlayscrollbox {
    margin-left: -15px;
    margin-right: -15px;
    padding-top: 20px;
}

#sendeanmeldung .overlayclose {
    display: block;
    width: 50%;
    text-align: left;
    cursor: pointer;
}

#sendeanmeldung {
    margin-top: 1rem;
    display: flex;
}

#sendeanmeldung button.anmeldebutton:hover {
    background: var(--color-content-primary);
}

#sendeanmeldung button.anmeldebutton {
    text-transform: uppercase;
    font-weight: 400;
}

ul.overlayul {
    margin-left: 0;
}

div#overlaykurs,
div#overlaypreis {
    margin-top: 1rem;
}

div#overlaykurs > span.overlayshow,
div#overlaypreis > span.overlayshow,
div#overlayperson1 > span.overlayshow,
div#overlayperson2 > span.overlayshow,
div#overlay > span.overlayclose {
    position: absolute;
    display: block;
    right: 30px;
    cursor: pointer;
}

div#overlayperson1.hide,
div#overlayperson2.hide,
div#overlayafteruserdata.hide,
div#overlayform.hide {
    display: none;
}

div#overlaykurs div.infolist,
div#overlaypreis div.infolist,
div#overlayperson1 div.infolist,
div#overlayperson2 div.infolist {
    display: none;
}

div#overlayperson1.opened div.infolist,
div#overlayperson2.opened div.infolist {
    display: block;
}

div#overlaykurs.opened div.infolist,
div#overlaypreis.opened div.infolist {
    display: block;
}

div#overlay > span.overlayclose svg {
    width: 20px;
    height: 20px;
}

span.overlayclose.close-on-error {
    color: #c40012;
    margin-top: 1rem;
}

form.saveuserdata .form-email label {
    display: block;
    padding-top: 20px !important;
    min-width: 110px;
    max-width: 135px;
}

div#overlaykurs.opened > span.overlayshow > svg,
div#overlaypreis.opened > span.overlayshow > svg,
div#overlayperson1.opened > span.overlayshow > svg,
div#overlayperson2.opened > span.overlayshow > svg {
    transition: transform .3s ease-in-out;
    transform: rotate(180deg);
}

div#overlaykurs > span.overlayshow > svg,
div#overlaypreis > span.overlayshow > svg,
div#overlayperson1 > span.overlayshow > svg,
div#overlayperson2 > span.overlayshow > svg {
    transition: transform .3s ease-in-out;
    transform: rotate(0deg);
}

div#overlaykurs > span.overlayshow,
div#overlaypreis > span.overlayshow,
div#overlayperson1 > span.overlayshow,
div#overlayperson2 > span.overlayshow {
    margin-top: -24px;
}

div#overlaykurs ul,
div#overlaypreis ul,
div#overlayperson1 ul,
div#overlayperson2 ul {
    list-style: none;
    padding: 0px;
    margin-top: 15px;
    margin-bottom: 5px;
    display: flex;
    flex-direction: column;
    /*flex-wrap: wrap;*/
}

div#overlaykurs,
div#overlaypreis {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

div#overlaykurs ul > li,
div#overlaypreis ul > li {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0.25rem;
    justify-content: space-between;
}

div#overlaykurs ul > li:nth-child(odd),
div#overlaypreis ul > li:nth-child(odd) {
    background-color: #e8e8e8;
}

div#overlaykurs ul > li > span.overlay-l,
div#overlaypreis ul > li > span.overlay-l {
    line-height: 1.2;
}

div#overlaykurs ul > li > span.overlay-r,
div#overlaypreis ul > li > span.overlay-r {
    line-height: 1.2;
    text-align: right;
}

div#overlayform.use1,
div#overlayform.use2 {
    overflow-y: scroll;
    margin-left: -10px;
    margin-right: -10px;
    padding: 0px 10px 10px 10px;
    border-radius: 6px;
}

div#overlayform.use1 {
    border: 3px solid #ddd;
}

div#overlayform.use2 {
    border: 3px solid #40ba7b;
}

div#overlayformselect {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 0px;
    margin-top: 0px;
}

div.overlay_form_full input[type=text],
div.overlay_form_half input[type=text],
div.overlay_form_full input[type=tel],
div.overlay_form_half input[type=tel],
div.overlay_form_full input[type=email],
div.overlay_form_half input[type=email],
div.overlay_form_full input[type=password],
div.overlay_form_half input[type=password],
div.overlay_form_full input[type=date],
div.overlay_form_half input[type=date],
div.overlay_form_full select,
div.overlay_form_half select {
    padding: 4px 8px;
    height: 30px;
    min-height: 30px;
    line-height: normal;
    background-color: rgba(255, 255, 255, 0.5);
}

#bemerkung {
    padding: 2px 12px;
    height: auto;
    background-color: rgba(255, 255, 255, 0.5);
}

div.overlay_form_full input:placeholder-shown,
div.overlay_form_half input:placeholder-shown,
#bemerkung:placeholder-shown {
    font-size: 0.75rem;
}

div.overlay_form_half select {
    font-size: 0.75rem;
}

div.overlay_form_full input[type=password] {
    margin-bottom: 30px;
}

div.overlay_form_checkbox,
div.overlay_form_radio {
    margin-bottom: 10px;
}

div.overlay_form_checkbox {
    font-size: 0.66rem;
    margin-top: 10px;
}

div.overlay_form_full label,
div.overlay_form_half label,
div.overlay_form_full legend,
div.overlay_form_half legend,
div.overlay_form_radio label,
div.overlay_form_checkbox label,
div.overlay_form_radio legend,
div.overlay_form_radio legend,
#person1 > label {
    font-size: 0.66rem;
    font-weight: 400;
}

div.overlay_form_checkbox label {
    padding-right: 12px;
}

div.overlay_form_full label,
div.overlay_form_half label {
    min-width: 112px;
}

ul#select-person {
    margin: 0px;
    padding: 0px;
}

ul#select-person li {
    list-style: none;
    display: inline-block;
    padding: 0px 10px;
    margin-right: 20px;
    border-radius: 6px;
    /*margin-left: -10px;*/
    /*margin-right: -10px;*/
    border: 3px solid transparent;
    cursor: pointer;
}

ul#select-person li.selected1 {
    border-color: #ffaf5a;
    font-weight: 700;
}

ul#select-person li.selected2 {
    border-color: #40ba7b;
    font-weight: 700;
}

ul#select-person li > span {
    position: relative;
    display: none;
    font-size: 0.6rem;
    font-weight: 400;
}

ul#select-person li.selected1 > span,
ul#select-person li.selected2 > span {
    /*color: #c40012;*/
    left: 0px;
    display: block;
    height: 0px;
    top: 8px;
}

div.error-hint1 {
    display: flex;
    color: #fff;
    margin-top: 0.5rem;
}

div.error-hint1 span {
    color: #fff;
    font-size: 0.7rem;
    padding: 0 0.5rem;
    background-color: #c40012;
    font-weight: 700;
}

div.error-hint {
    display: flex;
    margin-top: 0.1rem;
}

div.error-hint span {
    color: #fff;
    font-size: 0.7rem;
    line-height: 1.5;
    font-weight: 700;
    padding: 0 0.5rem;
    color: #c40012;
}

input.haserror {
    color: #c40012 !important;
    background-color: #fff !important;
    border: 2px solid #c40012 !important;
}

/*div#overlayform > .infolist {*/
/*    overflow-y: scroll;*/
/*    max-height: 50vh;*/
/*    margin-left: -10px;*/
/*    margin-right: -10px;*/
/*    padding: 0px 10px 10px 10px;*/
/*    border: 3px solid orange;*/
/*    border-radius: 6px;*/
/*}*/

div#overlay h4 {
    margin-bottom: 0px;
}

div#overlaybottom {
    text-align: center;
    margin-bottom: 20px;
}

div#overlaybottom a,
button.anmeldebutton,
button.savebutton,
div.overlay_form_button_zeile button.passwordreset,
div#overlayform button.anmeldebutton {
    font-weight: 700;
    cursor: pointer;
    padding: 6px 30px;
    border-radius: var(--buttonBorderRadius) !important;
}

span#formmessage1,
span#formmessage1 {
    display: none;
}

span#formmessage1.fail,
span#formmessage1.ok,
span#formmessage2.fail,
span#formmessage2.ok {
    display: block;
    margin: 1rem;
    text-align: center;
}

span#formmessage2.fail {
    color: #fff;
    margin-left: auto;
    margin-right: auto;
    font-size: 0.7rem;
    line-height: 1.25;
    padding: 0 0.5rem;
    border-radius: 4px;
    background-color: #c40012;
    font-weight: 700;
}

span#formmessage1.fail {
    display: block;
    background-color: #c40012;
    color: #fff;
    font-size: 0.7rem;
    padding: 0 0.5rem;
    border-radius: 4px;
}

div#overlaybottom a,
button.savebutton {
    background: var(--color4);
    color: var(--color8) !important;
}

button.anmeldebutton {
    background: #008000;
    color: #fff !important;
    margin-left: 0.6rem;
    margin-right: 0.6rem;
}

button.anmeldebutton:hover {
    font-weight: bold;
}

div.overlay_form_button_zeile button.passwordreset {
    font-weight: 400;
    background: var(--color7);
    color: var(--color1);
}

div.overlay_form_button_zeile button.passwordreset:hover {
    color: var(--color);
}

div#overlaybottom button.anmeldebutton.green,
div#overlayform button.anmeldebutton.green {
    background-color: #40ba7b;
}

div#overlayform div.register-fields {
    display: none;
}

div#overlaybottom a.green {
    background-color: #40ba7b;
}

div.overlay_form_button_zeile {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
}

/*#button-div {*/
/*    padding: 20px;*/
/*}*/

#overlay.abmeldedialog {
    width: 500px;
}

#overlay.abmeldedialog p {
    margin: 0;
}

#overlay.abmeldedialog .box-select {
    display: flex;
    gap: 20px;
}

#button-div span {
    padding-left: 20px;
}

/*=== CALENDAR ===*/

table.cal {
    font-size: 0.75rem;
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border: 0 !important;
}

table.cal thead th.cal-day {
    position: sticky;
    top: 0;
    z-index: 1;
    background-color: #ffffff;
    line-height: 1.5;
    border-top: 1px solid silver;
}

table.cal thead {
    text-align: left;
}

table.cal thead tr td {
    border-top: 1px solid silver !important;
    border-left: 1px solid silver;
}

table.cal tbody,
table.cal tbody tr {
    border: 0;
}

table.cal tr {
    border-left: 1px solid silver;
}

table.cal tbody.spacer::before {
    content: "-";
    display: block;
    line-height: 1.5em;
    color: transparent;
}

table.cal tr td {
    border: 0 !important;
}

table.cal tr td.cal-day {
    border-left: 1px solid silver !important;
    border-right: 1px solid silver !important;
    padding: 0.4rem;
}

td.cal-week-zeit {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    line-height: 1.25;
}

td.cal-week-zeit {
    border-left: 1px solid blue !important;
}

div.cal-kursinfo {
    text-align: left;
    line-height: 1.25;
    display: block;
    padding: 0.4rem;
    vertical-align: top;
}

.cal-kursinfo.raum1,
.cal-kursinfo.raum2 {
    padding: 0.4rem;
    margin-bottom: 0.4rem;
}

.cal-kursinfo.raum1 {
    background-color: #d7f0f0;
}

.cal-kursinfo.raum2 {
    background-color: #a3dfe0;
}

.cal-kursinfo.ferien {
    background-color: #f3f3f3;
    color: #da2670;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

td.cal-day.cal-kursinfo {
    vertical-align: top;
}

span.cal-kursleitung {
    width: 100%;
    display: inline-block;
    font-weight: 700;
}

a.cal-kurstitel {
    display: block;
    font-size: 1.1rem;
    font-weight: 700;
    hyphens: auto;
}

span.cal-text {
    hyphens: auto;
}

span.zeit-uhr,
span.zeit-raum {
    width: 60px;
    display: block;
    margin-bottom: 0.75rem;
}

span.zeit-raum {
    color: #253b74;
    font-weight: 700;
}

tr.cal-week {
    border-top: 1px solid silver !important;
    border-bottom: 1px solid silver !important;
}

.cal-week.raum-raum1 {
    background-color: #d7f0f0;
}

.cal-week.raum-raum2 {
    background-color: #a3dfe0;
}

td.cal-week-zeit {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    line-height: 1.25;
}

/*=== /CALENDAR ===*/

@media only screen and (max-width: 639px) {
    div.en-acc-content a.kursanmeldelink > div {
        width: 50%;
    }

    div.en-acc-content a.kursanmeldelink:hover:after {
        content: "Buchen";
        display: block;
        position: absolute;
        right: -20px;
        background-color: #da1c4b;
        padding: 2px 8px;
        margin-top: 20px;
        color: #fff;
        border-radius: 0px;
        /* transform: rotate(90deg); */
        width: 70px;
        line-height: 1.2;
    }
}

@media only screen and (min-width: 989px) {

    form .overlay_form_full,
    form .overlay_form_half {
        display: flex;
        padding-top: 20px;
        column-gap: 20px;
    }

}

@media only screen and (max-width: 900px) {
    div.dbm_calendar {
        overflow-x: scroll;
    }

    table.cal-mo-fr {
        min-width: 900px;
    }

}
