/* ==========================================================
   UPCOMING FIGHT CARD
   ========================================================== */

.upcoming-fight-card {

    background: linear-gradient(
        135deg,
        #181818,
        #252525
    );

    border: 1px solid #333;

    border-radius: 16px;

    padding: 30px;

    margin-bottom: 30px;

    box-shadow: 0 12px 30px rgba(0,0,0,.35);

}

.upcoming-fight-card h2 {

    margin-top: 0;

    margin-bottom: 20px;

    text-align: center;

    font-size: 34px;

    color: #ffffff;

}

/* ==========================================================
   EVENT HEADER
   ========================================================== */

.upcoming-event {

    text-align: center;

    margin-bottom: 30px;

}

.upcoming-event h3 {

    margin: 0;

    font-size: 28px;

    color: #ffffff;

}

.upcoming-event p {

    margin-top: 8px;

    color: #bbbbbb;

    font-size: 16px;

}

/* ==========================================================
   MATCHUP
   ========================================================== */

.matchup-grid {

    display: grid;

    grid-template-columns: 1fr auto 1fr;

    gap: 35px;

    align-items: center;

    margin: 35px 0;

}

.fighter-panel {

    text-align: center;

    display: flex;

    flex-direction: column;

    align-items: center;

}

.fighter-photo {

    width: 150px;

    height: 150px;

    object-fit: cover;

    border-radius: 50%;

    border: 4px solid #c8102e;

    background: #2a2a2a;

    transition: transform .25s ease;

}

.fighter-photo:hover {

    transform: scale(1.05);

}

.fighter-name {

    margin-top: 18px;

    font-size: 24px;

    font-weight: bold;

    color: #ffffff;

}

.fighter-score {

    margin-top: 10px;

    font-size: 42px;

    font-weight: bold;

    color: #ff455f;

}

.vs-circle {

    width: 90px;

    height: 90px;

    border-radius: 50%;

    background: #c8102e;

    color: white;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 28px;

    font-weight: bold;

    box-shadow: 0 6px 20px rgba(200,16,46,.4);

}

/* ==========================================================
   PREDICTION
   ========================================================== */

.prediction-banner {

    background: #202020;

    border-left: 6px solid #c8102e;

    border-radius: 12px;

    padding: 24px;

    margin-top: 35px;

}

.prediction-banner h3 {

    margin-top: 0;

}

.prediction-winner {

    font-size: 30px;

    font-weight: bold;

    color: #56ff79;

    margin-bottom: 25px;

}

/* ==========================================================
   WIN PROBABILITY BAR
   ========================================================== */

.prediction-meter {

    display: flex;

    width: 100%;

    height: 26px;

    overflow: hidden;

    border-radius: 999px;

    background: #303030;

    margin: 25px 0;

}

.prediction-fighter {

    background: linear-gradient(
        90deg,
        #27ae60,
        #56ff79
    );

    transition: width .6s ease;

}

.prediction-opponent {

    background: linear-gradient(
        90deg,
        #c8102e,
        #ff5b74
    );

    transition: width .6s ease;

}

.prediction-percentages {

    display: flex;

    justify-content: space-between;

    gap: 20px;

    margin-bottom: 25px;

}

.prediction-percentages div {

    flex: 1;

    text-align: center;

}

.prediction-percentages strong {

    display: block;

    margin-bottom: 6px;

    font-size: 17px;

}

.confidence-grade {

    display: inline-block;

    margin-top: 10px;

    padding: 10px 20px;

    border-radius: 999px;

    background: #c8102e;

    color: white;

    font-weight: bold;

    letter-spacing: .5px;

}

/* ==========================================================
   TALE OF THE TAPE
   ========================================================== */

.upcoming-fight-card .fighter-table {

    margin-top: 20px;

}

.upcoming-fight-card .fighter-table th {

    text-align: center;

}

.upcoming-fight-card .fighter-table td {

    text-align: center;

}

/* ==========================================================
KEYS TO VICTORY
========================================================== */

.keys-to-victory {

    margin-top: 15px;

    margin-bottom: 20px;

    padding-left: 28px;

}

.keys-to-victory li {

    font-size: 18px;

    line-height: 1.7;

    margin-bottom: 8px;

}


.things-to-watch {

    margin-top: 15px;

    margin-bottom: 0;

    padding-left: 28px;

}

.things-to-watch li {

    font-size: 18px;

    line-height: 1.7;

    margin-bottom: 8px;

}

/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 900px) {

    .matchup-grid {

        grid-template-columns: 1fr auto 1fr;

        gap: 8px;

        align-items: center;

    }

    .vs-circle {

        margin: auto;

    }

    .fighter-photo {

        width: 90px;

        height: 90px;

        object-fit: cover;

        border-radius: 50%;

        display: block;

        margin: 0 auto;

    }

}

    .fighter-score {

        font-size: 34px;

    }

    .prediction-percentages {

        flex-direction: column;

        gap: 15px;

    }

}

/* ==========================================================
   TALE OF THE TAPE
   ========================================================== */

.tale-card {

    margin-top: 25px;

}

.tale-row {

    display: grid;

    grid-template-columns: 1fr 140px 1fr;

    align-items: center;

    gap: 20px;

    padding: 14px 0;

    border-bottom: 1px solid #333;

}

.tale-row:last-child {

    border-bottom: none;

}

.tale-row > div:first-child {

    text-align: right;

    font-size: 18px;

    font-weight: 600;

}

.tale-row > div:last-child {

    text-align: left;

    font-size: 18px;

    font-weight: 600;

}

.tale-label {

    text-align: center;

    color: #bbbbbb;

    font-weight: bold;

    text-transform: uppercase;

    letter-spacing: 1px;

    font-size: 13px;

}

@media (max-width:768px){

    .tale-row{

        grid-template-columns:1fr;

        text-align:center;

    }

    .tale-row div{

        text-align:center !important;

    }

}