/**
 * Last Game Shortcode — [gbrs_last_game]
 *
 * Resumen visual del último partido disputado.
 * Fondo transparente: el verde Spanish Packers lo aplica Elementor.
 * Alta especificidad en todos los selectores para resistir overrides.
 *
 * Layout objetivo (desktop):
 *   ─────────────────────────────────────────
 *   [logo away]    [NFL]    [logo home]
 *
 *   CITY              X  |  Y              CITY
 *   AWAY-NAME            |     HOME-NAME
 *   ─────────────────────────────────────────
 *   Tabla cuartos        │     [Box Score]
 *                        │     [Crónica]
 *
 * Paleta:
 *   Verde Spanish Packers: #10301f
 *   Dorado Spanish Packers: #f9b45b
 *   Blanco texto: #ffffff
 */

/* ── Contenedor ─────────────────────────────────────────────────────── */

.gbrs-last-game {
    padding: 0;
    border-radius: 8px;
    color: #ffffff;
}

/* ── Marcador: logos arriba, nombres+scores debajo ──────────────────── */

.gbrs-last-game .gbrs-last-game__scoreboard {
    margin-bottom: 2rem;
}

/* Fila 1: tres columnas (logo away | NFL | logo home) */
.gbrs-last-game .gbrs-last-game__logos {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.25rem;
}

.gbrs-last-game .gbrs-last-game__team-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 150px;
}

/* Visitante (izquierda): logo alineado tendiendo al centro */
.gbrs-last-game .gbrs-last-game__team-logo--away {
    justify-content: flex-end;
    padding-right: .5rem;
}

/* Local (derecha): logo alineado tendiendo al centro */
.gbrs-last-game .gbrs-last-game__team-logo--home {
    justify-content: flex-start;
    padding-left: .5rem;
}

.gbrs-last-game .gbrs-last-game__team-logo img {
    max-height: 100%;
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

/* Logo NFL pequeño en el centro */
.gbrs-last-game .gbrs-last-game__nfl {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.gbrs-last-game .gbrs-last-game__nfl-logo {
    height: 60px;
    width: auto;
    display: block;
    opacity: .95;
}

/* Fila 2: dos columnas (away | home) con separador central */
.gbrs-last-game .gbrs-last-game__names {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 1.5rem;
    position: relative;
}

/* Separador vertical sutil entre los dos equipos */
.gbrs-last-game .gbrs-last-game__names::before {
    content: "";
    position: absolute;
    top: 5%;
    bottom: 5%;
    left: 50%;
    width: 1px;
    background: rgba(255, 255, 255, .18);
}

/* Cada equipo de la fila 2 */
.gbrs-last-game .gbrs-last-game__team {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    min-width: 0;
}

.gbrs-last-game .gbrs-last-game__team--away {
    justify-content: flex-end;
    padding-right: 1.25rem;
}

.gbrs-last-game .gbrs-last-game__team--home {
    justify-content: flex-start;
    padding-left: 1.25rem;
}

/* Texto del equipo (ciudad encima, nombre debajo) */
.gbrs-last-game .gbrs-last-game__team-text {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1.1;
    min-width: 0;
    text-align: right;
}

.gbrs-last-game .gbrs-last-game__team-text--right {
    align-items: flex-start;
    text-align: left;
}

.gbrs-last-game .gbrs-last-game__team-city {
    font-family: "Poppins", sans-serif;
    font-size: .85rem;
    font-weight: 500;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .55);
    margin-bottom: .25rem;
}

.gbrs-last-game .gbrs-last-game__team-name {
    font-family: "UltimatumBold", "Poppins", sans-serif;
    font-weight: normal;
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #ffffff;
    white-space: nowrap;
}

/* Nombre del equipo Packers en dorado */
.gbrs-last-game .gbrs-last-game__team-name--gb {
    color: #f9b45b;
}

/* Score gigante */
.gbrs-last-game .gbrs-last-game__team-score {
    font-family: "UltimatumBold", "Poppins", sans-serif;
    font-weight: normal;
    font-size: 5.5rem;
    line-height: 1;
    color: #ffffff;
    font-variant-numeric: tabular-nums;
    flex-shrink: 0;
}

.gbrs-last-game .gbrs-last-game__team-score--gb {
    color: #f9b45b;
}

/* ── Footer: cuartos a la izquierda + botones verticales a la derecha ─ */

.gbrs-last-game .gbrs-last-game__footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 2rem;
}

/* Tabla de cuartos */
.gbrs-last-game .gbrs-last-game__linescore {
    display: flex;
    justify-content: flex-start;
}

.gbrs-last-game .gbrs-last-game__linescore-placeholder {
    min-height: 1px;
}

.gbrs-last-game .gbrs-last-game__linescore table {
    border-collapse: collapse;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(249, 180, 91, .25);
    border-radius: 6px;
    overflow: hidden;
    font-variant-numeric: tabular-nums;
}

.gbrs-last-game .gbrs-last-game__linescore thead th {
    padding: .55rem 1.1rem;
    background: rgba(255, 255, 255, .06);
    font-family: "Poppins", sans-serif;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #f9b45b;
    text-align: center;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.gbrs-last-game .gbrs-last-game__linescore thead th:first-child {
    background: transparent;
}

.gbrs-last-game .gbrs-last-game__linescore tbody th {
    padding: .65rem 1.1rem;
    font-family: "UltimatumBold", "Poppins", sans-serif;
    font-weight: normal;
    font-size: .9rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #ffffff;
    text-align: left;
    border: none;
    background: transparent;
}

.gbrs-last-game .gbrs-last-game__linescore tbody td {
    padding: .65rem 1.1rem;
    font-family: "Poppins", sans-serif;
    font-size: 1.05rem;
    font-weight: 500;
    color: #ffffff;
    text-align: center;
    border: none;
    background: transparent;
}

.gbrs-last-game .gbrs-last-game__linescore tbody tr:first-child th,
.gbrs-last-game .gbrs-last-game__linescore tbody tr:first-child td {
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

/* Botones apilados verticalmente, alineados al centro vertical */
.gbrs-last-game .gbrs-last-game__actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .75rem;
}

.gbrs-last-game .gbrs-last-game__btn,
.gbrs-last-game .gbrs-last-game__btn:link,
.gbrs-last-game .gbrs-last-game__btn:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
    padding: .85rem 1.4rem;
    font-family: "UltimatumBold", "Poppins", sans-serif;
    font-weight: normal;
    font-size: .9rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 4px;
    border: 1px solid #f9b45b;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

/* Box Score: outline (transparente con borde dorado) */
.gbrs-last-game .gbrs-last-game__btn--boxscore,
.gbrs-last-game .gbrs-last-game__btn--boxscore:link,
.gbrs-last-game .gbrs-last-game__btn--boxscore:visited {
    background: transparent;
    color: #f9b45b;
}

.gbrs-last-game .gbrs-last-game__btn--boxscore:hover,
.gbrs-last-game .gbrs-last-game__btn--boxscore:focus-visible {
    background: rgba(249, 180, 91, .12);
    color: #ffffff;
    transform: translateY(-1px);
}

/* Crónica: relleno dorado sólido */
.gbrs-last-game .gbrs-last-game__btn--chronicle,
.gbrs-last-game .gbrs-last-game__btn--chronicle:link,
.gbrs-last-game .gbrs-last-game__btn--chronicle:visited {
    background: #f9b45b;
    color: #10301f;
}

.gbrs-last-game .gbrs-last-game__btn--chronicle:hover,
.gbrs-last-game .gbrs-last-game__btn--chronicle:focus-visible {
    background: #ffffff;
    color: #10301f;
    transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
    .gbrs-last-game .gbrs-last-game__btn:hover,
    .gbrs-last-game .gbrs-last-game__btn:focus-visible {
        transform: none;
    }
}

/* ── Responsive ─────────────────────────────────────────────────────── */

/* Pantallas medianas: reducir un poco logos y scores */
@media (max-width: 1199px) {
    .gbrs-last-game .gbrs-last-game__team-logo {
        height: 120px;
    }

    .gbrs-last-game .gbrs-last-game__nfl-logo {
        height: 50px;
    }

    .gbrs-last-game .gbrs-last-game__team-name {
        font-size: 1.9rem;
    }

    .gbrs-last-game .gbrs-last-game__team-score {
        font-size: 4.5rem;
    }
}

/* Tablet: scoreboard compacto, footer apilado */
@media (max-width: 900px) {
    .gbrs-last-game .gbrs-last-game__team-logo {
        height: 95px;
    }

    .gbrs-last-game .gbrs-last-game__nfl-logo {
        height: 42px;
    }

    .gbrs-last-game .gbrs-last-game__team {
        gap: .85rem;
    }

    .gbrs-last-game .gbrs-last-game__team-name {
        font-size: 1.4rem;
    }

    .gbrs-last-game .gbrs-last-game__team-city {
        font-size: .7rem;
    }

    .gbrs-last-game .gbrs-last-game__team-score {
        font-size: 3.5rem;
    }

    /* Footer: una sola columna */
    .gbrs-last-game .gbrs-last-game__footer {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }

    .gbrs-last-game .gbrs-last-game__linescore,
    .gbrs-last-game .gbrs-last-game__actions {
        justify-content: center;
        align-items: center;
    }

    .gbrs-last-game .gbrs-last-game__actions {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }

    .gbrs-last-game .gbrs-last-game__btn {
        width: auto;
        max-width: none;
    }
}

/* Móvil: layout generoso, aprovecha el ancho completo */
@media (max-width: 600px) {

    /* Logos más grandes en móvil */
    .gbrs-last-game .gbrs-last-game__logos {
        gap: .5rem;
    }

    .gbrs-last-game .gbrs-last-game__team-logo {
        height: 135px;
    }

    .gbrs-last-game .gbrs-last-game__team-logo--away {
        padding-right: 0;
    }

    .gbrs-last-game .gbrs-last-game__team-logo--home {
        padding-left: 0;
    }

    .gbrs-last-game .gbrs-last-game__nfl-logo {
        height: 38px;
    }

    .gbrs-last-game .gbrs-last-game__names {
        gap: .25rem;
    }

    .gbrs-last-game .gbrs-last-game__team {
        gap: .6rem;
    }

    .gbrs-last-game .gbrs-last-game__team--away,
    .gbrs-last-game .gbrs-last-game__team--home {
        padding-left: .25rem;
        padding-right: .25rem;
    }

    /* Tus valores ajustados manualmente */
    .gbrs-last-game .gbrs-last-game__team-city {
        font-size: .8rem;
    }

    .gbrs-last-game .gbrs-last-game__team-name {
        font-size: 2.1rem;
    }

    .gbrs-last-game .gbrs-last-game__team-score {
        font-size: 4.4rem;
    }

    /* Tabla de cuartos */
    .gbrs-last-game .gbrs-last-game__linescore thead th {
        padding: .5rem .85rem;
        font-size: 1rem;
    }

    .gbrs-last-game .gbrs-last-game__linescore tbody th,
    .gbrs-last-game .gbrs-last-game__linescore tbody td {
        padding: .6rem .85rem;
        font-size: .95rem;
    }

    /* Botones a ancho completo */
    .gbrs-last-game .gbrs-last-game__actions {
        flex-direction: column;
        align-items: stretch;
    }

    .gbrs-last-game .gbrs-last-game__btn {
        max-width: 100%;
        width: 100%;
        padding: 1rem 1.4rem;
        font-size: .9rem;
        margin: 0;
    }
}

/* Móvil muy pequeño (<380px): ajuste fino */
@media (max-width: 380px) {
    .gbrs-last-game .gbrs-last-game__team-logo {
        height: 110px;
    }

    .gbrs-last-game .gbrs-last-game__team-name {
        font-size: 1.15rem;
    }

    .gbrs-last-game .gbrs-last-game__team-score {
        font-size: 3rem;
    }
}
