/* Contenedor principal con scroll horizontal para móviles */
.bracket-container {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-start;
    overflow-x: auto;
    padding: 20px 0;
    gap: 20px;
}

/* Columna de cada Ronda */
.bracket-round {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    min-width: 260px;
    flex: 1;
}

.bracket-round-title {
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--primary-color);
    margin-bottom: 15px;
    border-bottom: 2px solid var(--border-color);
    padding-bottom: 5px;
    font-family: 'Rajdhani', sans-serif;
}

/* Tarjeta de Partido */
.match-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    margin-bottom: 20px;
    padding: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    position: relative;
    transition: transform 0.2s;
    color: var(--text-main);
}

.match-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
    border-color: var(--primary-color);
}

/* Conectores visuales */
.bracket-round:not(:last-child) {
    border-right: 1px dashed var(--border-color);
}

/* Estilos internos de la tarjeta */
.match-team {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 0;
}

.match-team.winner {
    font-weight: bold;
    color: var(--accent-green);
}

.match-team.loser {
    opacity: 0.6;
    color: var(--text-muted);
}

.match-score {
    background: var(--bg-input);
    padding: 2px 8px;
    border-radius: 4px;
    font-family: monospace;
    font-weight: bold;
    color: var(--text-main);
    border: 1px solid var(--border-color);
}

.match-meta {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: center;
    margin-top: 5px;
    border-top: 1px solid var(--border-color);
    padding-top: 5px;
}

/* Tercer Lugar */
.third-place-container {
    margin-top: 40px;
    border-top: 2px solid var(--border-color);
    padding-top: 20px;
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
}

/* ===== ESTILOS ESPECIALES PARA LA FINAL ===== */

/* Columna de la Final - Más ancha y destacada */
.bracket-round-final {
    min-width: 350px !important;
    flex: 1.5;
    padding: 0 10px;
    /* Padding extra para acomodar el tamaño mayor */
}

/* Título de la Final - Gradiente Dorado */
.final-title {
    font-size: 1.5rem !important;
    background: linear-gradient(135deg, #FFD700, #FFA500, #FFD700);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(255, 215, 0, 0.5);
    animation: goldShine 3s ease-in-out infinite;
    letter-spacing: 2px;
    padding: 10px 0;
}

@keyframes goldShine {

    0%,
    100% {
        filter: brightness(1);
    }

    50% {
        filter: brightness(1.3);
    }
}

/* Tarjeta de la Final - Más grande sin scale */
.final-match {
    border: 3px solid #FFD700 !important;
    box-shadow: 0 0 25px rgba(255, 215, 0, 0.4),
        0 8px 16px rgba(0, 0, 0, 0.5) !important;
    background: linear-gradient(135deg,
            rgba(255, 215, 0, 0.05),
            rgba(255, 165, 0, 0.05)) !important;
    padding: 15px !important;
    /* Más padding interno */
    margin: 20px 0;
    font-size: 1.1rem;
    /* Texto más grande */
}

.final-match .match-team {
    padding: 8px 0;
    /* Más espacio vertical */
}

.final-match .match-score {
    font-size: 1.2rem;
    /* Scores más grandes */
    padding: 4px 12px;
}

.final-match:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 0 35px rgba(255, 215, 0, 0.6),
        0 12px 24px rgba(0, 0, 0, 0.6) !important;
    border-color: #FFA500 !important;
}

/* ===== ESTILOS ESPECIALES PARA 3ER LUGAR ===== */

/* Título del 3er Lugar - Bronce */
.third-place-title {
    color: #CD7F32 !important;
    font-size: 1.2rem;
    text-shadow: 0 0 10px rgba(205, 127, 50, 0.3);
}

/* Tarjeta del 3er Lugar - Estilo Bronce */
.third-place-match {
    border: 2px solid #CD7F32 !important;
    background: linear-gradient(135deg,
            rgba(205, 127, 50, 0.05),
            rgba(184, 115, 51, 0.05)) !important;
    box-shadow: 0 0 15px rgba(205, 127, 50, 0.3),
        0 4px 8px rgba(0, 0, 0, 0.4) !important;
}

.third-place-match:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 20px rgba(205, 127, 50, 0.5),
        0 6px 12px rgba(0, 0, 0, 0.5) !important;
    border-color: #B87333 !important;
}