.tt-wrapper {

    width:100%;

    overflow-x:auto;

    padding:20px;

    box-sizing:border-box;

}



.tt-title {

    text-align:center;

    margin-bottom:30px;

    font-size:28px;

}



.tt-bracket {

    display:flex;

    align-items:flex-start;

    gap:40px;

    min-width:max-content;

}



.tt-round {

    width:220px;

}



.tt-round h3 {

    text-align:center;

    margin-bottom:20px;

    font-size:18px;

}



.tt-match {

    background:#ffffff;

    border:1px solid #ddd;

    border-radius:8px;

    margin-bottom:35px;

    overflow:hidden;

    box-shadow:0 2px 6px rgba(0,0,0,.08);

}



.tt-player {

    padding:10px;

    min-height:18px;

    border-bottom:1px solid #eee;

    font-size:14px;

}



.tt-player:last-child {

    border-bottom:none;

}



.tt-player.winner {

    font-weight:bold;

    background:#e8f7e8;

}



.tt-score {

    text-align:center;

    background:#f5f5f5;

    padding:6px;

    font-size:13px;

    color:#555;

}



.tt-empty {

    padding:20px;

    border:1px solid #ddd;

    background:#fafafa;

    border-radius:8px;

}

.tt-round:not(:last-child) .tt-match {

    position:relative;

}



.tt-round:not(:last-child) .tt-match::after {

    content:"";

    position:absolute;

    right:-40px;

    top:50%;

    width:40px;

    height:1px;

    background:#ccc;

}



.tt-champion {

    margin-top:40px;

    padding:20px;

    text-align:center;

    background:#f8f8f8;

    border:1px solid #ddd;

    border-radius:10px;

    font-size:22px;

}



.tt-champion strong {

    display:block;

    margin-top:10px;

    font-size:26px;

}





/*
|--------------------------------------------------------------------------
| Mobile Darstellung
|--------------------------------------------------------------------------
*/


@media(max-width:768px){


    .tt-wrapper {

        padding:10px;

    }



    .tt-bracket {

        gap:20px;

    }



    .tt-round {

        width:180px;

    }



    .tt-title {

        font-size:22px;

    }



    .tt-player {

        font-size:13px;

        padding:8px;

    }



}