.grecaptcha-badge { visibility: hidden !important; }
#mbk-kalender-wrapper { font-family: sans-serif; max-width: 100%; margin: auto; }
#mbk-kalender-header { display: flex; justify-content: space-between; align-items: center; }
#mbk-kalender-header button { background: #0073aa; color: white; border: none; padding: 5px 10px; cursor: pointer; }
#mbk-kalender-tabelle { width: 100%; border-collapse: collapse; margin-top: 10px; }
#mbk-kalender-tabelle th, #mbk-kalender-tabelle td { text-align: center; padding: 10px; border: 1px solid #ddd; }


#mbk-kalender-tabelle td.tag-buchbar { background: #e0ffe0; cursor: pointer; }
#mbk-kalender-tabelle td.tag-buchbar:hover { background: #b0ffb0; }
#mbk-kalender-tabelle td.heute { font-weight: bold; border-color: #0073aa; }
#mbk-kalender-tabelle td.nicht-buchbar { background: #f9f9f9; color: #aaa; }
#mbk-kalender-tabelle td.ausgewaehlt { background: #0073aa; color: white; }

#mbk-zeitfenster-liste { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
#mbk-zeitfenster-container { margin-top: 30px; }

.mbk-zeit-button { background: #eee; border: 2px solid #ccc; padding: 8px 12px; cursor: pointer; }
.mbk-zeit-button.ausgewaehlt { background: #0073aa; color: white; border-color: #005177; }
#mbk-buchungsformular-container { border: 1px solid #ddd; padding: 15px; margin-top: 30px; background: #f9f9f9; }
#mbk-buchungsformular input[type='text'], 
#mbk-buchungsformular input[type='email'], 
#mbk-buchungsformular input[type='tel'] { width: 100%; padding: 8px; box-sizing: border-box; }
#mbk-buchungsformular input[type='checkbox'] { width: auto; }
#mbk-buchungsformular label { font-weight: 600; }
#mbk-buchungsformular label[for='mbk-dsgvo'] { font-weight: normal; font-size: 0.9em; }
#mbk-buchungsformular button { background: #28a745; color: white; border: none; padding: 10px 15px; cursor: pointer; font-size: 16px; }
#mbk-nachricht.success { border: 1px solid green; background: #e0ffe0; padding: 15px; margin-top: 15px; }
#mbk-nachricht.error { border: 1px solid red; background: #ffe0e0; padding: 15px; margin-top: 15px; }
#mbk-nachricht h3 { margin-top: 0; }
.mbk-loader { border: 5px solid #f3f3f3; border-radius: 50%; border-top: 5px solid #0073aa; width: 40px; height: 40px; animation: spin 1s linear infinite; margin: 20px auto;}
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
/* NEU: Styles für Terminart-Auswahl */
#mbk-termin-typ-container p { margin-bottom: 5px; }
#mbk-termin-typ-container label { font-weight: 600; }
#mbk-termin-typ-container p strong { color: #0073aa; font-weight: bold; }
.mbk-typ-auswahl { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 15px; }
.mbk-typ-radio { /* Hide the radio button */
    opacity: 0;
    position: fixed;
    width: 0;
}
.mbk-typ-button { /* Style the label */
    display: inline-block;
    background: #eee;
    border: 2px solid #ccc;
    padding: 8px 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: normal !important; /* Wichtig, um Label-Default zu überschreiben */
}
.mbk-typ-button:hover { background: #ddd; }
.mbk-typ-radio:checked + .mbk-typ-button {
    background: #0073aa; /* Same as selected time */
    color: white;
    border-color: #005177;
}
/* --- ANPASSEN / HINZUFÜGEN --- */

/* Dies ist der NEUE Stil für blockierte/vergangene Termine */
.mbk-zeit-button.zeit-buchbar {
    background: #eee;
    border: 2px solid #ccc;
    cursor: pointer;
}
.mbk-zeit-button.zeit-buchbar:hover {
    background: #ddd;
}
.mbk-zeit-button.zeit-buchbar.ausgewaehlt {
    background: #0073aa;
    color: white;
    border-color: #005177;
}

/* KORRIGIERT: Zeit-Buttons (Gebucht/Nicht verfügbar) */
.mbk-zeit-button.zeit-gebucht {
    background: #f0f0f0;
    color: #aaa;
    border-color: #ddd;
    cursor: not-allowed;
    text-decoration: line-through;
}

/* Du kannst die alte Regel ".mbk-zeit-button {...}" und ".mbk-zeit-button.ausgewaehlt {...}" 
   mit diesen drei neuen Regeln ersetzen. */