/*
 Theme Name:   Twenty Twenty-Five Child KGV
 Theme URI:    http://example.com/ (Optional: Ihre Website-Adresse)
 Description:  Ein Child Theme für Twenty Twenty-Five.
 Author:       Ihr Name
 Author URI:   http://example.com/ (Optional: Ihre Autoren-Adresse)
 Template:     twentytwentyfive
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  ttwfivechildkgv
*/

/* Hier fügen Sie Ihre eigenen CSS-Anpassungen hinzu. */

body {
    background-color: #f9fafb; /* bg-gray-50 */
    font-family: 'Inter', sans-serif; /* font-sans */
    color: #374151; /* text-gray-800 */
}

/* Zusätzlicher Stil für einen subtilen Schatten */
.card-shadow, .tribe-events-widget-events-list__event-row {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.06);
    transition: transform 0.3s ease;
    will-change: transform;
}
.card-shadow:hover, .tribe-events-widget-events-list__event-row:hover {
    transform: translateY(-2px);
}
/* Sticky Header für bessere Navigation auf Mobilgeräten */
.sticky-header {
    position: sticky;
    top: 0;
    z-index: 50;
}

.bg-gruen {
    background-color: #38a169;
}
.text-white {
		color: #ffffff;
}

:where(.wp-site-blocks) > * {
    margin-block-start: 0;
	margin-block-end: 0;
}

section.is-layout-constrained {
    margin-block-start: 0;
	margin-block-end: 0;
}

.button-icon a::before {
	content: "";
	display: inline-block;
	height: 24px;
	width: 24px;
	background-image: url("data:image/svg+xml,%3Csvg fill='none' stroke='currentColor' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4' color='%23ffffff'%3E%3C/path%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	margin-right: 8px;
	vertical-align: middle;
}

.main-menu a {
	outline: none !important;
}

.wp-block-query card-shadow {
	border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

.tribe-events-widget-events-list__event-row {
	background-color: #fff;
	border-radius: 20px;
	padding-top:15px !important;
	padding-bottom:15px !important;
}

.tribe-events-widget-events-list__view-more {
	display: none;
}

.tribe-events-widget-events-list__event-row:has(.tribe_events_cat-wichtig) {
    border-left: 5px solid #FF0000; /* Beispiel: Ein roter Rahmen für wichtige Events */
}

.tribe-events-widget-events-list__event-row:has(.tribe_events_cat-arbeitseinsatz) {
    border-left: 5px solid #38a169; /* Beispiel: Ein roter Rahmen für wichtige Events */
}

.tribe-events-widget-events-list__event-row:has(.tribe_events_cat-fest) {
    border-left: 5px solid #ffff00; /* Beispiel: Ein roter Rahmen für wichtige Events */
}

.tribe-events-widget-events-list__event-row:has(.tribe_events_cat-sprechstunde) {
    border-left: 5px solid #1e73be; /* Beispiel: Ein roter Rahmen für wichtige Events */
}

.tribe-events-widget-events-list__event-row:has(.tribe_events_cat-vorstandssitzung) {
    border-left: 5px solid #bbb8b3; /* Beispiel: Ein roter Rahmen für wichtige Events */
}

/* Container an den Birkenhof-Stil anpassen */
.kgv-login-container {
    max-width: 450px;
    margin: 50px auto;
    padding: 40px;
    background: #f9fbf9; /* Ganz leichtes Grün-Weiß */
    border: 2px solid #1e392a; /* Das dunkle Birkenhof-Grün */
    border-radius: 4px; /* Eher klassisch-kantig */
    box-shadow: 8px 8px 0px #1e392a; /* "Schatten" im Retro-Stil passend zum Verein */
}

.birkenhof-login-title {
    text-align: center;
    color: #1e392a;
    margin-bottom: 25px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Fehlermeldung */
.birkenhof-error {
    background: #fdecea;
    color: #ca3a31;
    padding: 10px;
    border-left: 4px solid #ca3a31;
    margin-bottom: 20px;
    font-size: 14px;
}

/* Eingabefelder */
.kgv-input-group label {
    display: block;
    margin-bottom: 5px;
    color: #1e392a;
    font-weight: 600;
}

.kgv-input-group input {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 0; /* Eckig für seriösen Look */
    background: #fff;
}

.kgv-input-group input:focus {
    outline: 2px solid #558b2f; /* Helleres Grasgrün bei Fokus */
}

/* Button */
.kgv-login-button {
    width: 100%;
    padding: 15px;
    background-color: #1e392a;
    color: #ffffff;
    border: none;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    text-transform: uppercase;
    transition: all 0.2s ease;
}

.kgv-login-button:hover {
    background-color: #558b2f;
    transform: translateY(-2px);
}

.kgv-login-footer {
    text-align: center;
    margin-top: 25px;
}

.kgv-login-footer a {
    color: #1e392a;
    font-size: 14px;
    text-decoration: underline;
}