/*
Theme Name: Esteem Child
Template: esteem
*/

body {
	background: #000000;
}


button {
	color: #CC0000;
	font-family: 'Verdana', sans-serif;
	font-size: 8px;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #660000;
	margin: 0;
	padding:0;
}

h1 {
	line-height: 1.2;
	padding: 0px 0px 30px 0px;
}

h2 {
	line-height: 1.4;
	padding: 0px 0px 30px 0px;
	margin: 0;
}


h3 {
	line-height: 1.5;
}

h4 {
	line-height: 1.6;
}

h5 {
	line-height: 1.7;
}

h6 {
	line-height: 1.8;
}


.mittleren_teil  {
	float: right;
	width: 100%;
	height: 75vh;
	background: #006600;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	font-size: 10px;
}  

.mittleren_teil_seite_mit_border,
.mittleren_teil_seite_ohne_border  {
	float: right;
	width: 100%;
	height: 73vh;
	overflow: auto;
	background: #FFFFFF;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}  

.mittleren_teil_seite_mit_border table {
	border: 1px solid #000000;
	margin: 15px 0px 15px 0px;
	padding: 15px 0px 15px 0px;
	background: #CCFFFF;
}

.mittleren_teil_seite_ohne_border table {
	margin: 20px 0px 20px 0px;
	padding: 20px 0px 20px 0px;
	background: #CCFFFF;
}

.mittleren_teil_seite_ohne_border td,
.mittleren_teil_seite_mit_border td {
	color: #000000;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}  

.mittleren_teil_seite_mit_border p,
.mittleren_teil_seite_mit_border a:any-link,
.mittleren_teil_seite_ohne_border p, 
.mittleren_teil_seite_ohne_border a:any-link {
	font-size: 13px;
	color: #000000;
	margin: 0px 10px 0px 10px;
	padding: 5px 10px 5px 10px;
}

.mittleren_teil_seite_mit_border a:hover, 
.mittleren_teil_seite_mit_border a:focus, 
.mittleren_teil_seite_mit_border a:active,
.mittleren_teil_seite_ohne_border a:hover, 
.mittleren_teil_seite_ohne_border a:focus, 
.mittleren_teil_seite_ohne_border a:active {
	background: #66FF99;
}

.main-navigation {
  clear: none;
  padding-top: 12px;
  margin-right: 30px;
}

.main-navigation ul li {
  float: left;
  position: relative;
  font-size: 16px;
}

.main-navigation ul li {
  padding-right: 40px;
}

.main-navigation li a {
  line-height: 50px;
  height: 88px;
}

.main-navigation ul ul {
  background-color: #ffffff;
}

.main-navigation ul ul ul {
  left: -99999px;
}

.main-navigation ul ul a {
  width: 140px;
  padding: 10px 0px 10px 15px;
  border-right: none;
  border-left: none;
  border-bottom: 1px solid blue;
  border-top: none;
}

.main-navigation ul.sub-menu a {
  height: auto !important;
  line-height: normal;
}

.main-navigation ul ul li {
  padding-right: 0;
}

/* ===============================
   Aktive & Hover-Zustände
   =============================== */
.main-navigation li:hover > a,
.main-navigation li:hover > .sub-toggle {
  color: #ed564b;
}

.main-navigation .nav-menu > li.menu-item-has-children > a {
  position: relative;
  padding-right: 30px;
}

.main-navigation .nav-menu > li.menu-item-has-children > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #2c2c2c transparent transparent transparent;
  pointer-events: none;
}

.main-navigation .nav-menu > li.menu-item-has-children:hover > a::after {
  transform: translateY(-50%) rotate(-180deg);
  border-color: #ed564b transparent transparent transparent;
}

.sub-toggle {
  position: absolute;
  top: 15px;
  right: 10px;
}

/* ===============================
   Ausblenden von Menü-Indikatoren (Pfeilen o.Ä.) bei Menüpunkten mit Untermenüs,
   die sonst doppelt erscheinen würden (von CSS und von Wordpress)
   =============================== */
.sub-arrow,
.menu-item-has-children > span {
  display: none;
}
	
/* ===============================
   Die neuen Pfeile
   =============================== */	
/* Nur 1. Ebene: Pfeil bei Menüpunkten mit Untermenü */
.main-navigation .nav-menu > li.menu-item-has-children > a {
  position: relative;
  padding-right: 30px; /* Platz für den Pfeil */
}

/* Der Pfeil selbst */
.main-navigation .nav-menu > li.menu-item-has-children > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #2c2c2c transparent transparent transparent;
  pointer-events: none;
}

/* Hover: Pfeil dreht sich, Farbe wird rot */
.main-navigation .nav-menu > li.menu-item-has-children:hover > a::after {
  transform: translateY(-50%) rotate(-180deg);
  border-color: #ed564b transparent transparent transparent;
}

#content .post {
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.entry-content {
	padding-top: 0px;
}

.widget ul li a {
	color: #2c2c2c;
}

.page-title-bar {
	display: flex;
    align-items: center;   /* vertikale Mitte */
    padding-top: 0.5em;    /* weniger Abstand oben */
    padding-bottom: 0.5em; /* weniger Abstand unten */
    min-height: auto;      /* falls Theme eine Höhe erzwingt */
}

.page-title-bar .page-title-wrap h1 {
    margin: 0;          /* verhindert zusätzlichen Abstand */
    font-size: 1.5em;   /* ggf. Schriftgröße anpassen */
	padding: 0;
}

/* VON ANTONIO HINZUGEFÜGT AM 25.05.2025 */

ul.internes-menue,
ul.internes-menue li,
ul.internes-menue ul.sub-menu,
ul.internes-menue ul.sub-menu li {
	list-style: none !important;
}

/* ============================================
   Formularfelder: Hintergrund dunkelblau, Text weiß
   ============================================ */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea,
select {
  background-color: #225a89 !important;
  color: #FFFFFF !important;
  border: 1px solid #FFFFFF !important;
  border-radius: 6px; /* ✨ abgerundete Ecken */
  padding: 8px;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
textarea::placeholder {
  color: #cce0f5 !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
  background-color: #1a4670 !important;
  color: #FFFFFF !important;
  border-color: #FFFFFF !important;
  outline: none;
}

/* ============================================
   Buttons: Hintergrund dunkelblau, Text weiß, Rundung
   ============================================ */
button,
input[type="submit"],
input[type="reset"],
input[type="button"],
.esteem-login-form button {
  background-color: #225a89 !important;
  color: #FFFFFF !important;
  border: none;
  padding: 8px 16px;
  border-radius: 6px; /* ✨ abgerundete Ecken */
  cursor: pointer;
  transition: background-color 0.3s ease;
}

button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.esteem-login-form button:hover {
  background-color: #1a4670 !important;
  color: #FFFFFF !important;
}

/* ============================================
   Formatierung für Eintrag in header
   'Eingeloggt als..."
   ============================================ */
   
.user-info-bar {
    background: #f5f5f5;
    border-bottom: 1px solid #ddd;
    padding: 8px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    font-family: sans-serif;
}

.user-info-bar .user-text {
    color: #333;
}

.logout-button {
    background: #225A89;
    color: #fff;
    padding: 5px 10px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s;
    border: 1px solid transparent;
}

.logout-button:hover {
    background: #fff;
    color: #225A89;
    border: 1px solid #225A89;
}

/* ============================
   HOME-SPECIFIC ANPASSUNGEN – zwingend
   ============================ */

/* Weißer Bereich unter der Tabelle auf der Homepage reduzieren */
.inner-wrap,
#page {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Extra: Abstand unter Tabellen in Content entfernen */
.entry-content table {
    margin-bottom: 0 !important;
}

/* Notfalls alle leeren Paddings im Content entfernen */
.entry-content > * {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* ============================
   KOMPAKTER FOOTER GLOBAL
   ============================ */
#colophon,
#colophon .widget-area,
#site-generator {
	background-color: #225a89; /* ALT */
	padding-top: 5px !important;
    padding-bottom: 5px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    line-height: 1.2 !important; /* Text dichter zusammen */
}

/* Widgets im Footer sehr kompakt */
#colophon .widget {
    margin-bottom: 5px !important;
    padding: 0 !important;
}

#colophon .widget a:hover {
	color: #CC0000;
}

.copyright {
	font-size: 10px;
	text-align: center;
}

/* Copyright-Text kompakt */
#site-generator {
    color: #FFFFFF;
    font-size: 12px !important;
    padding: 10px 0 !important;
}

#site-generator a {
    color: #FFFFFF;
    font-weight: normal;
    text-decoration: none;
    transition: color 0.3s ease, font-weight 0.3s ease;
}

#site-generator a:hover {
    color: #FFFFFF;
    background-color: #FFD700;
    font-weight: bold;
    padding: 2px 4px;
    border-radius: 3px;
}

/* Stil für Login-Formular */
.esteem-login-form input {
  width: 100%;
  max-width: 300px;
  padding: 8px;
  margin-top: 4px;
}

.esteem-login-form button {
  background-color: #3c8dbc;
  color: white;
  padding: 8px 16px;
  border: none;
  cursor: pointer;
}

.esteem-login-form button:hover {
  background-color: #367fa9;
}

.esteem-login-form a {
  font-size: 0.9em;
  color: #3c8dbc;
  text-decoration: underline;
}

.esteem-login-form a:hover {
  color: #367fa9;
}

/* Datumseingabe in einer Zeile mit Punkten */
.datum-eingabe {
  display: inline-flex;
  align-items: center;
  gap: 4px; /* kleiner horizontaler Abstand */
  white-space: nowrap;
}

.datum-eingabe input.datum-teil {
  width: 3em;
  text-align: center;
  padding: 4px 6px;
  margin: 0;
}

.datum-punkt {
  padding: 0 2px;
  font-weight: bold;
}


/* Footer-Links (Login/Logout) */

.footer-login-link a {
  font-weight: bold; 
  color: #FFFFFF !important;
  margin-left: 20px;
}

.footer-login-link a:hover {
  text-decoration: underline;
  color: #FF9999 !important;
}

/* Layout des benutzerdefinierten Footer-Blocks */

/* Gemeinsames Styling für alle Footer-Link-Listen */
ul.footer-links {
  list-style: none;
  margin: 0 auto;
  padding: 10px 0;
  display: flex;
  background: transparent;
  font-size: 0.95em;
  flex-wrap: wrap;
}

ul.footer-links li span {
  color: #FFFFFF;
  margin: 0 5px;
}

ul.footer-links li {
  margin: 0;
  padding: 0 10px;
  border-left: 2px solid rgba(255, 255, 255, 0.5);
}

ul.footer-links li:first-child {
  border-left: none;
}

ul.footer-links li a {
  color: #FFFFFF !important;
  text-decoration: none;
  font-weight: normal;
  transition: color 0.3s ease;
  padding: 2px;
}

ul.footer-links li a:hover {
  color: #225a89 !important;
  text-decoration: none;
  font-weight: bold;
  background: #FFFFFF;
  padding: 2px;
}

/* Ausrichtung je nach Bereich */

.footer-links-linksbuendig {
  justify-content: flex-start;
  text-align: left;
}

.footer-links-zentriert {
  justify-content: center;
  text-align: center;
}

.footer-links-rechtsbuendig {
  justify-content: flex-end;
  text-align: right;
}

/* TABELLE MITGLIEDERLISTE 
UND ANDERE */

/* Grundstil */
.responsive-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1rem;
}

.responsive-table th,
.responsive-table td {
  border: 1px solid #ccc;
  padding: 0.75rem;
  text-align: left;
}

/* Kopfzeile */
.responsive-table thead {
  background-color: #f0f0f0;
  font-weight: bold;
	color: #660000;
}

/* Mobilansicht */
@media (max-width: 600px) {
  .responsive-table, 
  .responsive-table thead, 
  .responsive-table tbody, 
  .responsive-table th, 
  .responsive-table td, 
  .responsive-table tr {
    display: block;
    width: 100%;
  }

  .responsive-table thead {
    display: none;
  }

  .responsive-table tr {
    margin-bottom: 1rem;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 0.5rem;
    background-color: #fff;
  }

  .responsive-table td {
    position: relative;
    padding-left: 50%;
    text-align: left;
    border: none;
    border-bottom: 1px solid #eee;
  }

  .responsive-table td::before {
    content: attr(data-label);
    position: absolute;
    left: 0.75rem;
    top: 0.75rem;
    font-weight: bold;
    white-space: nowrap;
  }
}

.wp-block-table table {
    border: none !important;
}
.wp-block-table td, 
.wp-block-table th {
    border: none !important;
}

/* Box für besondere Mitteilungen zentriert, blauer Rahmen, dunkelgrüner Hintergrund, weiße Schrift */

.mitteilungs-box-mitte {
    border: 2px solid blue;          
    background-color: darkgreen;     
    color: white;                    
    font-weight: bold;
    padding: 1em;
    margin: 0 auto 0 auto;
    border-radius: 5px;
    box-sizing: border-box;
    text-align: center;
    width: auto;                     
    max-width: 90%;                  
}

/* Tooltip auf einem Button */

    .tooltip {
      position: relative;
      display: inline-block;
      cursor: pointer;
    }

    .tooltip .tooltiptext {
      visibility: hidden;
      width: 160px;
			background-color: white;
			color: black;
			border: 2px solid #CC0000; 
      text-align: center;
      border-radius: 6px;
      padding: 8px;
      position: absolute;
      z-index: 1;
      bottom: 125%; 
			/* Position über dem Button */
      left: 50%;
      transform: translateX(-50%);
      opacity: 0;
      transition: opacity 0.3s;
    }

    .tooltip:hover .tooltiptext {
      visibility: visible;
      opacity: 1;
    }