/* ===============================
   SPIELPLAN � FINAL
   =============================== */

.spielplan {
    width: 100%;
}

/* Zeile */
.spielplan-row {
    display: grid;
    grid-template-columns: 90px 1fr 90px;
    align-items: center;
    min-height: 64px;
    background: #ffffff;
    border-bottom: 1px solid #dcdcdc;
}

/* Zeit links */
.spielplan-time {
    background: #5a5a5a;
    color: #fff;
    text-align: center;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

    .spielplan-time .day {
        font-size: 0.75rem;
    }

    .spielplan-time .time {
        font-size: 1.15rem;
        font-weight: 700;
    }

/* Mitte */
.spielplan-center {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 18px;
    padding: 0 16px;
}

/* Teams */
.team {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

    .team img {
        height: 32px;
    }

    .team.home {
        justify-content: flex-end;
        text-align: right;
    }

    .team.away {
        justify-content: flex-start;
    }

.team-name {
    font-weight: 500;
}

/* Ergebnis */
.score {
    min-width: 60px;
    text-align: center;
    font-weight: 700;
    font-family: Consolas, monospace;
}

/* Rechts */
.spielplan-type {
    font-size: 0.75rem;
    color: #999;
    text-align: right;
    padding-right: 10px;
}
/* Desktop: Mobile-Logo ausblenden */
.logo-mobile {
    display: none;
}

/* =========================
   MOBILE SPIELPLAN
   ========================= */
@media (max-width: 768px) {

    .spielplan-row {
        display: flex;
        flex-direction: column;
        padding: 0;
        margin-bottom: 16px;
        border: none;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
        overflow: hidden;
    }

    /* ZEIT - Kompakte Kopfzeile */
    .spielplan-time {
        background: linear-gradient(135deg, #5a5a5a 0%, #3a3a3a 100%);
        color: #fff;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 0;
        font-size: 0.9rem;
        margin-bottom: 0;
    }

        .spielplan-time .day {
            font-size: 0.9rem;
            font-weight: 500;
        }

        .spielplan-time .time {
            font-size: 1rem;
            font-weight: 700;
        }

    /* CENTER - Horizontal Layout mit Score in Mitte */
    .spielplan-center {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 8px;
        padding: 16px 12px;
        background: #fff;
    }

        /* Heimteam - rechtsbündig */
        .spielplan-center .team.home {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            text-align: right;
            gap: 4px;
        }

        /* Gastteam - linksbündig */
        .spielplan-center .team.away {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            text-align: left;
            gap: 4px;
        }

        .spielplan-center .team-name {
            font-size: 0.8rem;
            font-weight: 600;
            line-height: 1.2;
            max-width: 100%;
            word-wrap: break-word;
            white-space: normal;
        }

        .spielplan-center img {
            height: 36px;
            width: auto;
        }

        /* Mobile: Desktop-Logo ausblenden, Mobile-Logo zeigen */
        .spielplan-center .logo-desktop {
            display: none;
        }

        .spielplan-center .logo-mobile {
            display: block;
        }

        /* Score in der Mitte - prominent */
        .spielplan-center .score {
            font-size: 1.8rem;
            font-weight: 700;
            min-width: 70px;
            text-align: center;
            color: #fff;
            padding: 8px 12px;
            border-radius: 10px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.15);
        }

        /* Mit Ergebnis - grün */
        .spielplan-center .score.has-result {
            background: linear-gradient(135deg, #28a745 0%, #218838 100%);
        }

        /* Kein Ergebnis - grau */
        .spielplan-center .score.no-result {
            background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%);
        }

    /* RUNDE + BUTTON - Footer */
    .spielplan-type {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 8px 12px;
        font-size: 0.8rem;
        color: #666;
        background: #f8f9fa;
        border-top: 1px solid #eee;
    }

        .spielplan-type .btn {
            min-width: 44px;
            min-height: 44px;
            padding: 8px 14px;
            font-size: 1.1rem;
            border-radius: 8px;
        }
}

/* Extra kleine Bildschirme */
@media (max-width: 400px) {
    .spielplan-center .team-name {
        font-size: 0.75rem;
    }

    .spielplan-center img {
        height: 30px;
    }

    .spielplan-center .score {
        font-size: 1.5rem;
        min-width: 60px;
        padding: 6px 10px;
    }
}

