/* ============================================================
   FINALES COMPACT-BACKUP: SENIORENRAT BIRSFELDEN (PUBGATEWAY)
============================================================ */
:root {
    --color-table-header: #6b8f58; --color-table-odd: #f2f7f0; --color-table-even: #a4c292;
    --color-table-text: #2b2b2b; --color-nav-bg: #ffffff; --color-text-link: #5b8c3d; --color-text-link-hover: #3b5c25;
}

/* 1. TABELLENFARBEN & RAHMEN */
.wp-block-table, .wp-block-table th, .wp-block-table td, .wp-block-table tr, table, thead, tbody, tfoot { border: none !important; border-width: 0 !important; box-shadow: none !important; }
.wp-block-table td, .wp-block-table th { border-bottom: none !important; border-bottom-width: 0 !important; }
.wp-block-table th { background-color: var(--color-table-header) !important; color: #ffffff !important; font-weight: bold !important; }
.wp-block-table th a { color: #ffffff !important; text-decoration: none !important; font-weight: bold !important; }
.wp-block-table td { padding-top: 10px !important; padding-bottom: 10px !important; }
.wp-block-table tr:nth-child(odd) { background-color: var(--color-table-odd) !important; }
.wp-block-table tr:nth-child(odd) td { color: var(--color-table-text) !important; }
.wp-block-table tr:nth-child(odd) td a, .wp-block-table tr:nth-child(odd) a { color: var(--color-table-text) !important; text-decoration: none !important; font-weight: normal !important; }
.wp-block-table tr:nth-child(odd) td a:hover, .wp-block-table tr:nth-child(odd) a:hover { text-shadow: 0.5px 0 0 currentColor, -0.5px 0 0 currentColor !important; }
.wp-block-table tr:nth-child(even) { background-color: var(--color-table-even) !important; }
.wp-block-table tr:nth-child(even) td { color: var(--color-table-text) !important; }
.wp-block-table tr:nth-child(even) td a, .wp-block-table tr:nth-child(even) a { color: var(--color-table-text) !important; text-decoration: none !important; font-weight: normal !important; }
.wp-block-table tr:nth-child(even) td a:hover, .wp-block-table tr:nth-child(even) a:hover { text-shadow: 0.5px 0 0 currentColor, -0.5px 0 0 currentColor !important; }

@media (max-width: 767px) {
    .wp-block-table thead, .wp-block-table th { display: none !important; }
    .wp-block-table table, .wp-block-table tbody, .wp-block-table tr, .wp-block-table td { display: block !important; width: 100% !important; box-sizing: border-box !important; }
    .wp-block-table tr { margin-bottom: 15px !important; padding: 5px 0 !important; border-radius: 4px !important; box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important; }
    .wp-block-table td { text-align: left !important; padding: 8px 15px !important; white-space: normal !important; }
}

/* 2. DESKTOP HAUPTNAVIGATION & COMPACT FIXES (STRIKT AB 922px) */
@media (min-width: 922px) {
    .main-navigation ul ul, .wp-block-navigation__container ul, .sub-menu, .ast-builder-menu-sub-menu { flex-direction: column !important; flex-wrap: wrap !important; display: block !important; }
    .main-navigation ul ul li, .sub-menu li, .wp-block-navigation-item .sub-menu li { width: 100% !important; display: block !important; }
    .main-navigation a, .wp-block-navigation-item__content, .wp-block-navigation-item a { padding-left: 16px !important; padding-right: 16px !important; font-size: 0.90em !important; font-weight: normal !important; }
    .main-navigation a:hover, .wp-block-navigation-item__content:hover, .wp-block-navigation-item a:hover { text-shadow: 0.6px 0 0 currentColor, -0.5px 0 0 currentColor !important; }
    .main-navigation ul, .wp-block-navigation__container, .wp-block-navigation ul { flex-wrap: nowrap !important; display: flex !important; }
    .main-navigation .gt_wrapper, .wp-block-navigation-item .gt_wrapper, .wp-block-navigation .gt_wrapper { font-size: 11px !important; max-width: 110px !important; padding: 0 !important; margin-left: 5px !important; }
    .main-navigation img.nturl, .wp-block-navigation-item img.nturl, .wp-block-navigation img.nturl { width: 16px !important; height: auto !important; margin: 0 2px !important; }
    .main-navigation, .nav-menu, .ast-navigation, #site-navigation, .wp-block-navigation { background-color: var(--color-nav-bg) !important; }
}

@media (min-width: 1025px) {
    .main-navigation ul ul, .sub-menu, .ast-builder-menu-sub-menu, .main-navigation ul ul li, .sub-menu li { background-color: #f0f5eb !important; }
    .main-navigation .main-nav ul ul li a, .main-navigation ul ul a, .ast-builder-menu-sub-menu a, .sub-menu a { font-size: 0.79em !important; font-weight: normal !important; background-color: #f0f5eb !important; padding-top: 6px !important; padding-bottom: 6px !important; }
    .main-navigation .main-nav ul ul li a:hover, .main-navigation ul ul a:hover, .ast-builder-menu-sub-menu a:hover, .sub-menu a:hover { text-shadow: 0.6px 0 0 currentColor, -0.5px 0 0 currentColor !important; }
    .main-navigation ul ul li, .sub-menu li { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
}

/* 3. INHALT-TEXTE & ÜBERSCHRIFTEN (DESKTOP & MOBILE) */
.wp-theme-pubgateway .entry-content p, .wp-theme-pubgateway .content-area p, .wp-block-paragraph { color: #000000 !important; }
.entry-content a, .content-area a, .entry-content p a, .content-area p a, .entry-content li a, .content-area li a { color: var(--color-text-link) !important; font-weight: bold !important; text-decoration: none !important; }
.entry-content a:hover, .content-area a:hover, .entry-content p a:hover, .content-area p a:hover { color: var(--color-text-link-hover) !important; text-shadow: 0.6px 0 0 currentColor, -0.5px 0 0 currentColor !important; text-decoration: none !important; }

@media (min-width: 1025px) {
    .entry-content a[href^="tel:"], .content-area a[href^="tel:"] { color: #000000 !important; font-weight: normal !important; text-decoration: none !important; cursor: default !important; pointer-events: none !important; }
}

input[type="text"], input[type="email"], input[type="url"], input[type="tel"], input[type="number"], textarea, select { border: 2px solid #666666 !important; background-color: #ffffff !important; color: #000000 !important; border-radius: 4px !important; padding: 10px !important; }
input[type="text"]:focus, input[type="email"]:focus, textarea:focus, select:focus { border-color: var(--color-table-header) !important; box-shadow: 0 0 5px rgba(107, 143, 88, 0.5) !important; outline: none !important; }
.page h1, .page .entry-title, .page .page-title, .wp-theme-pubgateway h1, .wp-theme-pubgateway .entry-title, .wp-theme-pubgateway h1.entry-title, .wp-theme-pubgateway .page-title { text-align: left !important; }

@media (max-width: 1024px) {
    .entry-content p, .content-area p, .wp-block-paragraph { font-size: 16px !important; line-height: 1.6 !important; }
    .entry-content h1, .content-area h1, .entry-content h2, .content-area h2, h1.entry-title, h2.entry-title, .page-title, .entry-title { font-size: 24px !important; }
    .entry-content h3, .content-area h3, h3 { font-size: 19px !important; }
    .entry-content h4, .content-area h4, h4 { font-size: 15px !important; }
}

/* 4. ALTES MENÜ VERSTECKEN */
@media (max-width: 1024px) {
    header .wp-block-navigation, header .main-navigation, header .ast-navigation, button.wp-block-navigation__responsive-container-open, button.wp-block-navigation__responsive-container-close, .wp-block-navigation__responsive-container { display: none !important; visibility: hidden !important; opacity: 0 !important; height: 0 !important; overflow: hidden !important; }
}
