body {
  font-family: Arial, sans-serif;
  background-color: white;
}

/* NAVIGATION BAR DESIGN START */
.navbar {
  /* Verwenden wir eine unserer Grüntöne */
  background-color: #0b2e13 !important; 
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); 
  transition: background-color 0.3s ease;
}

.navbar-brand {
  /* Macht den Markennamen prominenter */
  font-family: 'Anton', sans-serif; 
  font-size: 1.5rem;
  color: #fff !important;
}

.navbar-nav .nav-item {
  margin-left: 20px;
}

.nav-link {
  color: #fff !important; /* Leichter Weißton */
  padding: 10px 15px;
}

.nav-link:hover {
  color: #ffffff !important; /* Reines Weiß beim Hover */
  background-color: rgba(23, 99, 40, 0.2); /* Sehr dezenter grüner Hintergrund */
  border-radius: 4px;
}
/* NAVIGATION BAR DESIGN END */


.masthead {
  position: relative;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  overflow: hidden;
}

.masthead .video-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}



.masthead::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  /* Dunkelt den Hintergrund ab */
  z-index: 1;
  /* Hinter den Text */
}

.masthead h1{
  color: #fff;
  font-family: Anton, "sans-serif";
  /* Weiße Schrift */
  z-index: 2;
  /* Über dem Pseudo-Element */
  position: relative;
}


.masthead p {
  color: #fff;
  font-family: Anton, "sans-serif";
  /* Weiße Schrift */
  z-index: 2;
  /* Über dem Pseudo-Element */
  position: relative;
  font-size: 3rem;
  font: weight 700;
}

.masthead h1 {
  font-size: 3rem;
  margin-bottom: 20px;
  font-weight: 700;
  /* hinzugefügt */
}

.masthead p {
  font-size: 1.2rem;
  font-weight: 500;
  /* hinzugefügt */
}




/* Table visual overhaul */
#table-section .table-container {
  max-width: 1100px;
  margin: 0 auto 60px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(11, 30, 51, 0.06);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(250, 250, 250, 0.96));
}

/* Make header look modern */
#table-section table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  margin: 0;
  background: transparent;
}

#table-section thead th {
  background: linear-gradient(90deg, #0b2e13 0%, #06190a 100%);
  color: #fff;
  font-weight: 700;
  border: 0;
  padding: 14px 12px;
  text-transform: uppercase;
  letter-spacing: .6px;
  cursor: pointer; /* Cursor auf Pointer setzen, da die Spalten jetzt klickbar sind */
  user-select: none;
  position: relative;
}

#table-section thead th:after {
  content: "⇅";
  font-size: 12px;
  opacity: .65;
  margin-left: 8px;
}

/* Entfernt die Pfeile von den Tabellenüberschriften */
#table-section thead th:after {
  content: none !important;
}

/* Rows */
#table-section tbody tr {
  transition: transform .12s ease, box-shadow .12s ease, background-color .12s;
}

#table-section tbody tr:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(11, 30, 51, 0.06);
  background: rgba(13, 110, 253, 0.03);
}

#table-section tbody td {
  padding: 12px 10px;
  vertical-align: middle;
}

/* Zebra + subtle borders */
#table-section tbody tr:nth-child(odd) {
  background: rgba(0, 0, 0, 0.01);
}

#table-section tbody tr+tr td {
  border-top: 1px solid rgba(0, 0, 0, 0.04);
}

/* Highlight specific row */
#table-section tbody tr.highlight {
  background: linear-gradient(90deg, rgba(23, 99, 40, 0.08), rgba(23, 99, 40, 0.03));
  font-weight: 700;
}


.footer {
  background: #002708;
  color: #fff;
  text-align: center;
  padding: 20px 0;
}

.footer a {
  color: #176328;
  text-decoration: none;
}



/* Hervorhebung der AKTUELLEN Seite in der Navigation */
.nav-link.active-page {
  /* Macht den Link fett */
  font-weight: bold !important;
  /* Gibt ihm die reinweiße Farbe, damit er sich auf dem dunklen Hintergrund abhebt */
  color: #ffffff !important;
  /* Fügt einen klaren weißen Strich unten hinzu */
  border-bottom: 2px solid #ffffff;
  /* Stellt sicher, dass der Border-Bottom nicht direkt am Text klebt */
  padding-bottom: 8px;
}
/* ========================================= */
/* ÜBERSCHREIBT DEN ALLGEMEINEN HOVER-EFFEKT FÜR DEN AKTIVEN LINK */
/* ========================================= */
.nav-link.active-page:hover {
  /* Setzt den Hintergrund auf Transparent (entfernt das leichte grüne Rechteck) */
  background-color: transparent !important; 
  
  /* Entfernt die Rundung */
  border-radius: 0 !important; 
  
  /* Stellt sicher, dass die Farbe Weiß bleibt und nicht vom normalen Hover überschrieben wird */
  color: #ffffff !important; 
}
/* ========================================= */
/* MOBILE OPTIMIERUNG FÜR HEADER (unter 767px) */
/* ========================================= */
@media (max-width: 767px) {
    
    /* 1. Logo ausblenden, um Platz zu sparen */
    .header-logo-absolute {
        display: none; 
    }

    /* 2. Suchleiste aus absoluter Positionierung nehmen und unter den Titel setzen */
    .table-card-toolbar {
        position: static; 
        margin-top: 20px; 
        max-width: 100%; 
        transform: none; 
    }
    
    /* 3. Container-Inhalt stapeln (Überschrift über Suche) */
    .header-with-search {
        display: flex;
        flex-direction: column; 
        align-items: center; 
        justify-content: center;
        text-align: center;
    }
    
    /* 4. Schriftgröße für kleine Bildschirme anpassen */
    .header-with-search h1 {
        font-size: 2rem;
    }
}

/* ========================================= */
/* NEUE STYLES FÜR GEKLICKTE SPIELZEILE */
/* ========================================= */

/* Definiert den permanenten Stil für eine gespielte/angesehene Zeile */
tr.game-played {
  /* Dunkelgrauer Hintergrund, wie gewünscht */
  background-color: #343a40 !important; 
  /* Heller Text, damit es lesbar bleibt */
  color: #ffffff !important; 
  /* Entfernt den Mauszeiger, um anzuzeigen, dass es nicht mehr klickbar ist */
  cursor: default !important; 
  /* Entfernt den Hover-Effekt, falls er in der Tabelle definiert wurde */
  pointer-events: none; 
}

/* Stellt sicher, dass das Modal (Karte) auf kleinen Bildschirmen gut aussieht */
@media (max-width: 767px) {
  .modal-xl {
    /* Macht das Modal auf kleinen Bildschirmen schmaler */
    --bs-modal-width: 95%; 
  }
}
/* FÜGE DIESEN ABSCHNITT HINZU, UM HORIZONTALES SCROLLEN FÜR BREITE TABELLEN AUF MOBILEN GERÄTEN ZU ERMÖGLICHEN */

.table-container {
  /* Erlaubt horizontales Scrollen, wenn der Inhalt (die Tabelle) breiter ist als der Bildschirm */
  overflow-x: auto; 
  /* Dies verbessert das Scrollverhalten auf Touch-Geräten (insbesondere iOS) */
  -webkit-overflow-scrolling: touch; 
}