/* Responsive Tabellen Styles - Desktop identisch zu HTML Tables */

/* DEL Tabelle (Standings) - behält original Table-Look */
.seeyou__del-table {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
}

.seeyou__del-table-header {
    display: none; /* Header wird nicht benötigt da original keine hatte */
}

.seeyou__del-table-row {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 8px 12px;
}

.seeyou__del-table-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.seeyou__del-table-cell {
    text-align: left;
}

.seeyou__del-table-cell:first-child,
.seeyou__del-table-cell:last-child {
    text-align: center;
}

.seeyou__del-table-hometeam .seeyou__del-table-cell {
    font-weight: bold;
}

/* DEL Ergebnisse (Last Results) - behält original Table-Look */
.seeyou__del-last-results {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
}

.seeyou__del-results-header {
    display: none; /* Header wird nicht benötigt da original keine hatte */
}

.seeyou__del-results-row {
    display: grid;
    grid-template-columns: auto auto auto auto auto;
    gap: 8px;
}

.seeyou__del-results-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.seeyou__del-results-cell {
    text-align: center;
}

/* Spielerstatistik - behält original Table-Look */
.player-statistic {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
}

/* Spielplan/Schedule Tabelle */
.schedule-table {
    display: block;
    width: 100%;
    padding-bottom: 1rem;
}

.schedule-table-header {
    display: grid;
    grid-template-columns: 110px 90px 1fr 30px 1fr 80px;
    gap: 0 1em;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.schedule-table-row {
    display: grid;
    grid-template-columns: 110px 90px 1fr 30px 1fr 80px;
    gap: 0 1em;
    align-items: center;
}

.schedule-table-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

/* Header Ausrichtung */
.schedule-table-header .schedule-table-cell { text-align: left; }
.schedule-table-header .schedule-table-cell:nth-child(3),
.schedule-table-header .schedule-table-cell:nth-child(5),
.schedule-table-header .schedule-table-cell:nth-child(6) { text-align: left; }

/* Zeilen Ausrichtung */
.schedule-table-row .schedule-table-cell { text-align: left; }
.schedule-table-row .schedule-table-cell:nth-child(3) { text-align: left; }
.schedule-table-row .schedule-table-cell:nth-child(4),
.schedule-table-row .schedule-table-cell:nth-child(6) { text-align: center; }

/* Semantische Grid Areas für Schedule Table */
.schedule-table-cell:nth-child(1) { grid-area: date; }
.schedule-table-cell:nth-child(2) { grid-area: time; }
.schedule-table-cell:nth-child(3) { grid-area: home; text-align: left; } /* Heimteam rechtsbündig */
.schedule-table-cell:nth-child(4) { grid-area: vs; }
.schedule-table-cell:nth-child(5) { grid-area: away; }
.schedule-table-cell:nth-child(6) { grid-area: result; }

/* Trainerkarriere Tabelle (4 Spalten) */
.career-table {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
}

/* Turnier/Tournament Tabelle mit Named Grid Areas */
.tournament-table {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
}

.tournament-table-row {
    display: grid;
    grid-template-areas: "date time home vs away result";
    grid-template-columns: auto auto 1fr auto auto auto;
    gap: 8px 12px;
}

.tournament-table-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.tournament-table-cell {
    text-align: left;
}

/* Semantische Klassen für bessere Verständlichkeit */
.tournament-table-cell:nth-child(1) { 
    grid-area: date;
    font-weight: bold;
}

.tournament-table-cell:nth-child(2) { 
    grid-area: time;
    margin-left: 1rem;
}

.tournament-table-cell:nth-child(3) { 
    grid-area: home;
}

.tournament-table-cell:nth-child(4) { 
    grid-area: vs;
    text-align: right;
}

.tournament-table-cell:nth-child(5) { 
    grid-area: away;
    text-align: center;
}

.tournament-table-cell:nth-child(6) { 
    grid-area: result;
    text-align: left;
}

.career-table-header {
    display: grid;
    grid-template-areas: "period club league position";
    grid-template-columns: 110px 2fr 160px 160px;
    gap: 12px 20px;
    font-weight: bold;
}

.career-table-row {
    display: grid;
    grid-template-areas: "period club league position";
    grid-template-columns: 110px 2fr 160px 160px;
    gap: 12px 20px;
}

.career-table-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.career-table-cell {
    text-align: left;
}

/* Semantische Grid Areas für Career Table */
.career-table-cell:nth-child(1) { grid-area: period; }
.career-table-cell:nth-child(2) { grid-area: club; }
.career-table-cell:nth-child(3) { grid-area: league; }
.career-table-cell:nth-child(4) { grid-area: position; }

/* --- Schedule-Tabelle: Desktop saubere Spaltenausrichtung --- */
.schedule-table-header {
    display: grid;
    grid-template-areas: "date time home vs away result";
    grid-template-columns: 100px 100px 200px 50px auto 70px;
    gap: 8px;
    font-weight: bold;
}

.schedule-table-row {
    display: grid;
    grid-template-areas: "date time home vs away result";
    grid-template-columns: 100px 100px 200px 50px auto 70px;
    gap: 8px;
}

.schedule-table-cell {
    text-align: center;
}

/* Mobile-Layout bleibt wie gehabt */

.schedule-table-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.schedule-table-cell {
    text-align: center;
}

/* Semantische Grid Areas für Schedule Table */
.schedule-table-cell:nth-child(1) { grid-area: date; }
.schedule-table-cell:nth-child(2) { grid-area: time; }
.schedule-table-cell:nth-child(3) { grid-area: home; }
.schedule-table-cell:nth-child(4) { grid-area: vs; }
.schedule-table-cell:nth-child(5) { grid-area: away; }
.schedule-table-cell:nth-child(6) { grid-area: result; }

.player-statistic-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px;
}

.player-statistic-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.player-statistic-label {
    font-weight: normal;
    text-align: left;
}

.player-statistic-value {
    text-align: left;
}

/* Mittlere Bildschirme - flexiblere Spaltenbreiten */
@media (max-width: 1024px) and (min-width: 769px) {
    .career-table-header {
        grid-template-areas: "period club league position";
        grid-template-columns: 100px 1fr 60px 140px;
        gap: 8px 12px;
    }
    
    .career-table-row {
        grid-template-areas: "period club league position";
        grid-template-columns: 100px 1fr 60px 140px;
        gap: 8px 12px;
    }
}

/* Mobile Responsive Styles */
@media (max-width: 768px) {
    /* DEL Tabelle wird gestackt */
    .seeyou__del-table {
        grid-template-columns: 1fr;
        gap: 1rem;
        border: none;
        background: none;
    }
    
    .seeyou__del-table-header {
        display: none;
    }
    
    .seeyou__del-table-row {
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 0.5rem;
        margin-bottom: 1rem;
        padding-bottom: 0;
        border-bottom: none;
    }
    
    .seeyou__del-table-hometeam {
        font-weight: bold;
    }
    
    .seeyou__del-table-cell {
        border: none;
        padding: 0;
    }
    
    /* Ergebnisse werden zu Cards */
    .seeyou__del-last-results {
        grid-template-columns: 1fr;
        gap: 1rem;
        border: none;
        background: none;
    }
    
    .seeyou__del-results-header {
        display: none;
    }
    
    .seeyou__del-results-row {
        display: block;
        margin-bottom: 1rem;
        padding-bottom: 0;
        border-bottom: none;
    }
    
    .seeyou__del-results-cell {
        border: none;
        padding: 0.25rem 0;
        text-align: left;
        display: block;
    }
    
    .seeyou__del-results-cell:nth-child(5n+1):before {
        content: "Spiel: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .seeyou__del-results-cell:nth-child(5n+2):before {
        content: "Heim: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .seeyou__del-results-cell:nth-child(5n+3):before {
        content: "Ergebnis: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .seeyou__del-results-cell:nth-child(5n+4):before {
        content: "Gast: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .seeyou__del-results-cell:nth-child(5n+5):before {
        content: "Datum: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    /* Spielerstatistik bleibt Grid aber wird enger */
    .player-statistic-row {
        grid-template-columns: 1fr 2fr;
        gap: 8px;
    }
    
    .player-statistic-label,
    .player-statistic-value {
        font-size: 0.9rem;
    }
    
    /* Schedule Tabelle wird zu Cards */
    .schedule-table-header {
        display: none;
    }
    
    .schedule-table-row {
        display: block; /* Grid von Desktop überschreiben */
        margin-bottom: 1rem;
        padding-bottom: 1rem;
        border-bottom: 1px solid #ddd;
    }
     .schedule-table-row:last-of-type {
        border-bottom: none;
    }
    
    .schedule-table-cell {
        display: block;
        padding: 0.25rem 0;
        text-align: left !important; /* Wichtig, um Desktop-Styles zu überschreiben */
    }
    
    .schedule-table-cell:before {
        content: attr(data-label);
        font-weight: bold;
        margin-right: 0.5rem;
        display: inline-block;
        width: 170px; /* Feste Breite für Labels */
    }
    
    .schedule-table-cell:nth-child(6n+1):before { content: "Datum:"; }
    .schedule-table-cell:nth-child(6n+2):before { content: "Uhrzeit:"; }
    .schedule-table-cell:nth-child(6n+3):before { content: "Heimteam:"; }
    .schedule-table-cell:nth-child(6n+4) { display: none; } /* vs ausblenden */
    .schedule-table-cell:nth-child(6n+5):before { content: "Auswärtsteam:"; }
    .schedule-table-cell:nth-child(6n+6):before { content: "Ergebnis:"; }
    
    /* Career Tabelle wird zu Cards */
    .career-table-header {
        display: none;
    }
    
    .career-table-row {
        display: block;
        margin-bottom: 1rem;
        padding-bottom: 0;
        border-bottom: none;
        gap: 0;
    }
    
    .career-table-cell {
        padding: 0.25rem 0;
        text-align: left;
        display: block;
    }
    
    .career-table-cell:nth-child(4n+1):before {
        content: "Zeitraum: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .career-table-cell:nth-child(4n+2):before {
        content: "Verein: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .career-table-cell:nth-child(4n+3):before {
        content: "Liga: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    .career-table-cell:nth-child(4n+4):before {
        content: "Position: ";
        font-weight: bold;
        margin-right: 0.5rem;
    }
    
    /* Tournament Tabelle - mobile mit Grid Areas */
    .tournament-table-row {
        display: grid;
        grid-template-areas: "date time . vs away result";
        grid-template-columns: auto auto auto auto auto auto;
        gap: 4px;
        margin-bottom: 0.5rem;
        padding-bottom: 0.5rem;
        border-bottom: 1px solid #ddd;
        font-size: 0.85rem;
    }
    
    .tournament-table-row:last-child {
        border-bottom: none;
    }
    
    .tournament-table-cell {
        text-align: center;
        padding: 0.2rem;
    }
    
    /* Mobile: Home Team versteckt durch "." in grid-template-areas */
    .tournament-table-cell:nth-child(1) {
        font-weight: bold;
        text-align: left;
    }
    
    .tournament-table-cell:nth-child(2) {
        text-align: left;
    }
    
    .tournament-table-cell:nth-child(4) {
        text-align: right;
    }
    
    .tournament-table-cell:nth-child(5) {
        text-align: center;
    }
    
    .tournament-table-cell:nth-child(6) {
        text-align: left;
    }
}

@media (max-width: 480px) {
    .seeyou__del-table-row {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 0.5rem;
    }
    
    .seeyou__del-table-cell:nth-child(3n+1):before {
        content: "Pos: ";
        font-weight: bold;
    }
    
    .seeyou__del-table-cell:nth-child(3n+2):before {
        content: "Team: ";
        font-weight: bold;
    }
    
    .seeyou__del-table-cell:nth-child(3n+3):before {
        content: "Punkte: ";
        font-weight: bold;
    }
    
    .player-statistic-row {
        grid-template-columns: 1fr;
        gap: 0.25rem;
    }
    
    .player-statistic-label {
        font-weight: bold;
    }
    
    .player-statistic-value {
        margin-bottom: 0.5rem;
    }
} 

/* --- Neue Tournament-Tabelle mit grid-template-areas --- */
.tournament-table-row {
  display: grid;
  grid-template-areas:
    "date time teams result";
  grid-template-columns: 140px 120px 1fr 120px;
  align-items: center;
  gap: 0 1em;
  border-bottom: 1px solid #fff2;
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
}
.tournament-date   { grid-area: date; text-align: left; font-weight: bold; }
.tournament-time   { grid-area: time; text-align: left; }
.tournament-teams  { grid-area: teams; text-align: left; font-weight: bold; }
.tournament-result { grid-area: result; text-align: center; }

/* Letzte Zeile ohne Border */
.tournament-table-row:last-child {
  border-bottom: none;
}

/* Mobile: Stacken und Umordnen */
@media (max-width: 768px) {
  .tournament-table-row {
    grid-template-areas:
      "date time"
      "teams teams"
      "result result";
    grid-template-columns: 1fr auto;
    gap: 0.2em 1em;
    margin-bottom: 1.5em;
    padding-bottom: 0.5em;
  }
  .tournament-date   { text-align: left; font-weight: bold; }
  .tournament-time   { text-align: right; }
  .tournament-teams  { text-align: center; font-weight: bold; margin-top: 0.2em; }
  .tournament-result { text-align: center; margin-top: 0.2em; }
} 

/* Scorer-Tabelle (8 Spalten) */
.scorer-table {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
}

.scorer-table-header {
    display: grid;
    grid-template-columns: 70px 1fr 70px 70px 70px 70px 90px 70px;
    gap: 0 1em;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.scorer-table-row {
    display: grid;
    grid-template-columns: 70px 1fr 70px 70px 70px 70px 90px 70px;
    gap: 0 1em;
    align-items: center;
}

.scorer-table-row:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.scorer-table-cell {
    text-align: center;
}

.scorer-table-cell:nth-child(2) {
    text-align: left; /* Spielername linksbündig */
}

/* Mobile Responsive für Scorer-Tabelle */
@media (max-width: 768px) {
    .scorer-table-header {
        display: none;
    }
    
    .scorer-table-row {
        display: block;
        margin-bottom: 1.5rem;
        padding-bottom: 1rem;
        border-bottom: 1px solid #ddd;
    }
    
    .scorer-table-row:last-child {
        border-bottom: none;
    }
    
    .scorer-table-cell {
        display: block;
        padding: 0.25rem 0;
        text-align: left !important;
    }
    
    .scorer-table-cell:before {
        content: attr(data-label);
        font-weight: bold;
        margin-right: 0.5rem;
        display: inline-block;
        width: 170px;
    }
    
    .scorer-table-cell:nth-child(8n+1):before { content: "Nummer:"; }
    .scorer-table-cell:nth-child(8n+2):before { content: "Spielername:"; }
    .scorer-table-cell:nth-child(8n+3):before { content: "Spiele:"; }
    .scorer-table-cell:nth-child(8n+4):before { content: "Punkte:"; }
    .scorer-table-cell:nth-child(8n+5):before { content: "Tore:"; }
    .scorer-table-cell:nth-child(8n+6):before { content: "Vorlagen:"; }
    .scorer-table-cell:nth-child(8n+7):before { content: "Strafzeiten:"; }
    .scorer-table-cell:nth-child(8n+8):before { content: "+/-:"; }
    
    /* DEL Vollständige Tabelle (10 Spalten) - Mobile Labels */
    .scorer-table-cell:nth-child(10n+1):before { content: "Position:"; }
    .scorer-table-cell:nth-child(10n+2):before { content: "Team:"; }
    .scorer-table-cell:nth-child(10n+3):before { content: "Spiele:"; }
    .scorer-table-cell:nth-child(10n+4):before { content: "Siege:"; }
    .scorer-table-cell:nth-child(10n+5):before { content: "Siege OT:"; }
    .scorer-table-cell:nth-child(10n+6):before { content: "Niederlagen OT:"; }
    .scorer-table-cell:nth-child(10n+7):before { content: "Niederlagen:"; }
    .scorer-table-cell:nth-child(10n+8):before { content: "Tore:"; }
    .scorer-table-cell:nth-child(10n+9):before { content: "Punkte:"; }
    .scorer-table-cell:nth-child(10n+10):before { content: "PPG:"; }
}

/* DEL Vollständige Tabelle (10 Spalten) */
.del-full-table {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 0;
    border: none;
    background: none;
}

.del-full-table-header {
    display: grid;
    grid-template-columns: 60px 200px 60px 60px 60px 60px 60px 100px 80px 80px;
    gap: 0 1em;
    font-weight: bold;
    border-bottom: 2px solid #ddd;
    padding: 12px 0;
    margin-bottom: 0;
    background-color: transparent;
}

.del-full-table-row {
    display: grid;
    grid-template-columns: 60px 200px 60px 60px 60px 60px 60px 100px 80px 80px;
    gap: 0 1em;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #eee;
}

.del-full-table-row:last-child {
    border-bottom: none;
}

.del-full-table-cell {
    text-align: center;
    padding: 0 4px;
    font-size: 14px;
}

.del-full-table-cell:nth-child(2) {
    text-align: left; /* Teamname linksbündig */
    font-weight: 500;
}

/* Hervorhebung des Heimteams in der vollständigen Tabelle */
.del-full-table-hometeam {
    background-color: rgba(0, 123, 191, 0.1);
}

.del-full-table-hometeam .del-full-table-cell {
    font-weight: bold;
}

/* Mobile Responsive für DEL Vollständige Tabelle */
@media (max-width: 768px) {
    .del-full-table-header {
        display: none;
    }
    
    .del-full-table-row {
        display: block;
        margin-bottom: 1.5rem;
        padding-bottom: 1rem;
        border-bottom: 1px solid #ddd;
    }
    
    .del-full-table-row:last-child {
        border-bottom: none;
    }
    
    .del-full-table-cell {
        display: block;
        padding: 0.25rem 0;
        text-align: left !important;
    }
    
    .del-full-table-cell:before {
        content: attr(data-label);
        font-weight: bold;
        margin-right: 0.5rem;
        display: inline-block;
        width: 170px;
    }
    
    .del-full-table-cell:nth-child(10n+1):before { content: "Position:"; }
    .del-full-table-cell:nth-child(10n+2):before { content: "Team:"; }
    .del-full-table-cell:nth-child(10n+3):before { content: "Spiele:"; }
    .del-full-table-cell:nth-child(10n+4):before { content: "Siege:"; }
    .del-full-table-cell:nth-child(10n+5):before { content: "Siege OT:"; }
    .del-full-table-cell:nth-child(10n+6):before { content: "Niederlagen OT:"; }
    .del-full-table-cell:nth-child(10n+7):before { content: "Niederlagen:"; }
    .del-full-table-cell:nth-child(10n+8):before { content: "Tore:"; }
    .del-full-table-cell:nth-child(10n+9):before { content: "Punkte:"; }
    .del-full-table-cell:nth-child(10n+10):before { content: "PPG:"; }
}

/* Hervorhebung des Heimteams in der Scorer-Tabelle */
.scorer-table-hometeam .scorer-table-cell {
    font-weight: bold;
    background-color: rgba(0, 123, 191, 0.1);
} 

.schedule-table-header, .schedule-table-row {
    display: grid;
    grid-template-columns: 100px 100px 1.2fr 40px 1.5fr 80px;
    gap: 0 1em;
    align-items: center;
}

.schedule-table-header {
    display: grid;
    grid-template-columns: 100px 100px 1.2fr 40px 1.5fr 80px;
    gap: 0 1em;
    align-items: center;
    font-weight: bold;
    border-bottom: 2px solid #ddd;
    padding: 12px 0;
    margin-bottom: 0;
    background-color: transparent;
}
.schedule-table-header .schedule-table-cell {
    text-align: center;
    white-space: nowrap;
    font-weight: bold;
    font-size: 1.1em;
}
.schedule-table-header .schedule-table-cell:nth-child(3),
.schedule-table-header .schedule-table-cell:nth-child(5) {
    text-align: left;
}

/* Teamzelle mit Logo und Name nebeneinander, kein Umbruch */
.schedule-table-cell {
    text-align: left;
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    white-space: nowrap;
}

.schedule-table-cell img {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-right: 6px;
    vertical-align: middle;
}

/* Ergebniszelle mittig */
.schedule-table-cell:last-child {
    text-align: center;
    justify-content: center;
    display: flex;
    align-items: center;
} 

@media (max-width: 768px) {
    .schedule-table-header {
        display: none;
    }
    .schedule-table-row {
        display: block;
        margin-bottom: 1.5rem;
        padding-bottom: 1rem;
        border-bottom: 1px solid #ddd;
    }
    .schedule-table-row:last-child {
        border-bottom: none;
    }
    .schedule-table-cell {
        display: block;
        padding: 0.25rem 0;
        text-align: left !important;
        white-space: normal;
    }
    .schedule-table-cell:before {
        content: attr(data-label);
        font-weight: bold;
        margin-right: 0.5rem;
        display: inline-block;
        width: 170px;
    }
    .schedule-table-cell:nth-child(1):before { content: "Datum:"; }
    .schedule-table-cell:nth-child(2):before { content: "Uhrzeit:"; }
    .schedule-table-cell:nth-child(3):before { content: "Heimteam:"; }
    .schedule-table-cell:nth-child(4):before { content: "vs"; }
    .schedule-table-cell:nth-child(5):before { content: "Auswärtsteam:"; }
    .schedule-table-cell:nth-child(6):before { content: "Ergebnis:"; }
} 