/* ==================== Hintergrundbild & Überlagerung ==================== */
/* Legt das Hintergrundbild fest und sorgt für eine halbtransparente Überlagerung für bessere Lesbarkeit des Textes. */
body {
  font-family: sans-serif;
  background-color: #f9f9f9; /* Fallback-Farbe */
  background-image: url('images/Background.webp'); /* Bild im images/ Ordner */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  text-align: left;
  padding: 50px;
  position: relative; /* notwendig für Pseudo-Element */
  z-index: 0;
}

body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.5); /* halbtransparentes Weiß für Lesbarkeit */
  z-index: -1; /* liegt hinter dem Inhalt */
}

/* ==================== Button-Design ==================== */
/* Gestaltet alle Buttons einheitlich und definiert spezielle Farben für verschiedene Aktionen. */
button {
  font-size: 18px;
  padding: 12px 24px;
  border-radius: 8px;
  cursor: pointer;
  border: none;
}

/* Sprachwechsel-Button: Grüner Button für Sprachumschaltung */
#languageBtn {
  background-color: #28a745;
  color: white;
}
#languageBtn:hover {
  background-color: #218838;
}

/* Datenschutz-Button: Gelber Button für Datenschutz-Hinweis */
#clickBtn {
  background-color: #ffc107;
  color: black;
}
#clickBtn:hover {
  background-color: #e0a800;
}

/* Impressum-Button: Magentafarbener Button für Impressum */
#impressumBtn {
  background-color: magenta;
  color: white;
}
#impressumBtn:hover {
  background-color: #c71585;
}

/* Buttons nebeneinander anordnen, mit Abstand */
.button-row {
  display: flex;
  gap: 10px; /* Abstand zwischen Buttons */
  margin-bottom: 20px;
}

/* ==================== Benutzerdefinierte Alerts ==================== */
/* Definiert das Aussehen der benutzerdefinierten Alert-Fenster für Datenschutz und Impressum. */
#customAlert {
  display: none;
  position: fixed;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff8dc;
  border: 2px solid #444;
  padding: 20px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  border-radius: 10px;
  text-align: center;
  min-width: 280px;
}

#impressumAlert {
  display: none;
  position: fixed;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #ffe4ff;
  border: 2px solid #444;
  padding: 20px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  border-radius: 10px;
  text-align: center;
  min-width: 280px;
}

/* Schließen-Button für Alert-Fenster */
#closeBtn {
  margin-top: 15px;
  padding: 10px 20px;
  border: none;
  background-color: #007bff;
  color: white;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
}
#closeBtn:hover {
  background-color: #0056b3;
}

/* Textausrichtung im Impressum-Alert */
#impressumText {
  text-align: left;
}

/* Schließen-Button für das Impressum-Fenster */
#closeImpressumBtn {
  display: block;
  margin: 15px auto 0 auto;
  padding: 10px 20px;
  border: none;
  background-color: #007bff;
  color: white;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
}
#closeImpressumBtn:hover {
  background-color: #0056b3;
}

/* ==================== TabView-Stil ==================== */
/* Gestaltet die Tab-Navigation und die zugehörigen Inhalte. */
.tab-buttons {
  display: flex;
  gap: 10px;
  margin: 30px auto 0 auto;
  margin-left: 50px;
  margin-right: 50px;
  width: calc(100% - 100px);
}

.tab-button {
  padding: 10px 20px;
  border: none;
  background-color: #ccc;
  cursor: pointer;
  border-radius: 6px 6px 0 0;
  font-size: 16px;
}
.tab-button.active {
  background-color: #007bff;
  color: white;
}

.tab-content {
  display: none;
  padding: 20px;
  background-color: #f2f2f2;
  border: 1px solid #ddd;
  border-radius: 0 6px 6px 6px;
  margin: 0 auto 50px auto; /* gleicher Abstand unten wie links/rechts */
  width: calc(100% - 100px); /* entspricht links/rechts padding von 50px */
  height: calc(100vh - 300px); /* dynamisch je nach Bildschirmhöhe */
  overflow: auto; /* scrollbar machen */
}
.tab-content.active {
  display: block;
  background-color: rgba(173, 216, 230, 0.4); /* transparentes Hellblau */
}

/* Eingebettete PDFs und andere Inhalte sollen die komplette Fläche nutzen */
.tab-content iframe {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}