.block_groupy_termin_finder {
    
}



.block_groupy_termin_finder .groupy_termin_finder_datum {
    display: block;
    text-align: center;
    margin-bottom: 16px;
}



.block_groupy_termin_finder .titel {
    color: #222;
    font-weight: normal;
    font-size: 20px;
    margin-bottom: 16px;
    margin-top: 0px;
    text-align: center;
}



.block_groupy_termin_finder .groupy_termin_finder_laden {
    text-align: center;
    padding: 16px;
    margin: 16px;
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
    border-radius: 6px;
}



.block_groupy_termin_finder .groupy_termin_finder_datum {
    display: none;
}



.block_groupy_termin_finder .groupy_termin_finder_datum .kalender_blatt {
    max-width: 300px;
    text-align: left;
    display: inline-block;
    padding: 16px;
    margin: 16px;
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
    border-radius: 6px;
    vertical-align: top;
}



.block_groupy_termin_finder .groupy_termin_finder_datum .kalender_blatt .tag {
    display: inline-block;
    width: calc((100% / 7) - 20px);
    padding: 8px;
    border-radius: 4px;
    margin: 2px;
    text-align: center;
}

.block_groupy_termin_finder .groupy_termin_finder_datum .kalender_blatt .tag.platzhalter {
    
}

.block_groupy_termin_finder .groupy_termin_finder_datum .kalender_blatt .tag.verfuegbar {
    background-color: var(--firmenfarbe);
    color: var(--firmenfarbe_text);
    cursor: pointer;
    transition: background-color 0.2s;
}

.block_groupy_termin_finder .groupy_termin_finder_datum .kalender_blatt .tag.verfuegbar:hover {
    background-color: var(--firmenfarbe_heller);
}

.block_groupy_termin_finder .groupy_termin_finder_datum .kalender_blatt .tag.gesperrt {
    background-color: #f4f4f4;
    color: #bcbcbc;
}



.block_groupy_termin_finder .groupy_termin_finder_uhrzeit {
    text-align: center;
    display: none;
    padding: 16px;
    margin: 16px;
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
    border-radius: 6px;
}



.block_groupy_termin_finder .groupy_termin_finder_uhrzeit p {
    white-space: normal;
}



.block_groupy_termin_finder .groupy_termin_finder_uhrzeit .eintrag {
    background-color: #ededed;
    border-radius: 4px;
    padding: 8px;
    margin: 4px 2px;
    font-size: 14px;
    transition: all 0.2s;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    width: 100px;
}



.block_groupy_termin_finder .groupy_termin_finder_uhrzeit .eintrag:hover {
    background-color: #f5f5f5;
}



.block_groupy_termin_finder .groupy_termin_finder_uhrzeit .eintrag.aktiv {
    outline: 3px solid var(--firmenfarbe);
}



.block_groupy_termin_finder .groupy_termin_finder_kontakt {
    text-align: center;
    display: none;
    padding: 16px;
    margin: 16px;
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
    border-radius: 6px;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt .termin_karte {
    display: inline-block;
    padding: 16px;
    margin: 16px;
    vertical-align: middle;
    background-color: #f3f3f3;
    border-radius: 8px;
    width: 200px;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt .termin_karte .cmsicon {
    color: var(--firmenfarbe);
    font-size: 60px;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt .formular {
    display: inline-block;
    padding: 16px;
    margin: 16px;
    vertical-align: middle;
    text-align: left;
    width: 250px;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt .formular label {
    font-size: 14px;
    margin-left: 8px;
    display: block;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt .weiter {
    display: inline-block;
    padding: 16px;
    margin: 16px;
    vertical-align: middle;
    width: 200px;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt div.fehler {
    display: none;
    text-align: left;
    font-size: 14px;
    padding: 8px;
    color: #c10000;
}

.block_groupy_termin_finder .groupy_termin_finder_kontakt .weiter .knopf {
    display: block;
    margin: 16px 0px 16px 0px;
}



.block_groupy_termin_finder .groupy_termin_finder_erfolg {
    text-align: center;
    display: none;
    padding: 16px;
    margin: 16px;
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
    border-radius: 6px;
}



.block_groupy_termin_finder .groupy_termin_finder_reservieren_knopf {
    height: 84px;
    display: none;
}



.block_groupy_termin_finder .groupy_termin_finder_cancel {
    float: left;
    opacity: 0.7;
    cursor: pointer;
    color: #313131;
    font-size: 25px;
}

.block_groupy_termin_finder .groupy_termin_finder_cancel:hover {
    opacity: 1.0;
}



.block_groupy_termin_finder .datenschutz {
    font-size: 12px;
    color: #5b5b5b;
}



.block_groupy_termin_finder table.struktur {
    margin: 0px;
    padding: 0px;
    margin-bottom: 16px;
    display: block;
    border: none;
}



.block_groupy_termin_finder table.struktur td {
    padding: 0px;
}



@media screen and (max-width: 500px){
    
    .terminpicker_datum {
        overflow-y: hidden;
    }
    
    .terminpicker_datum p {
        font-size: 14px;
        padding: 0px 8px 0px 8px;
    }
    
    .terminpicker_uhrzeit p {
        font-size: 14px;
        padding: 0px 8px 0px 8px;
    }
    
    .terminpicker_datum .eintrag {
        font-size: 14px;
    }
    
    .terminpicker_uhrzeit .eintrag {
        font-size: 14px;
    }
    
    
    .terminpicker_reservieren_knopf.knopf {
        margin: 8px;
        padding: 8px;
        border-radius: 4px;
        font-size: 13px;
        height: auto;
    }
    
    .terminpicker_reservieren_knopf.knopf .gicon {
        font-size: 24px;
        margin-right: 0px;
    }
    
    .terminpicker_reservieren_knopf.knopf span {
        display: block;
        white-space: normal;
    }
    
}