/* Copa 2026 — previsão da fase de grupos. Escopado em .copa-page. */

.copa-page {
    --copa-warn: #c98a1a;
    --copa-h: #2f7fc0;   /* mandante */
    --copa-d: #b08428;   /* empate   */
    --copa-a: #b05068;   /* visitante */
    --copa-sb-thumb: rgba(0, 0, 0, 0.22);
    --copa-sb-thumb-hover: rgba(0, 0, 0, 0.38);
}
[data-theme="dark"] .copa-page {
    --copa-warn: #d9a441;
    --copa-h: #4f9fe0;
    --copa-d: #d4a23e;
    --copa-a: #d0738c;
    --copa-sb-thumb: rgba(255, 255, 255, 0.22);
    --copa-sb-thumb-hover: rgba(255, 255, 255, 0.38);
}

.copa-page .section-description { max-width: 720px; }

/* Legenda de fontes */
.copa-fontes { margin-top: 1.25rem; }
.copa-fontes__list {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-wrap: wrap; gap: 0.45rem 1.25rem;
}
.copa-fontes__item {
    display: flex; align-items: baseline; gap: 0.45rem;
    font-size: 0.8rem; line-height: 1.4; color: var(--text-secondary);
}
.copa-fontes__tag {
    flex: none;
    font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.06em;
    color: var(--text-tertiary);
    min-width: 4.5rem;
}
.copa-fontes__txt strong { color: var(--text-primary); font-weight: 600; }

.copa-sub {
    font-size: 0.78rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--text-secondary);
    margin: 0 0 0.85rem;
}
.copa-sub__src { color: var(--text-tertiary); }

/* Toolbar */
.copa-toolbar {
    margin-top: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}
.copa-toolbar__info {
    font-size: 0.82rem;
    color: var(--text-tertiary);
    max-width: 38ch;
    line-height: 1.45;
}
.copa-toolbar__info strong { color: var(--text-secondary); font-weight: 400; }
.copa-toolbar__actions { display: flex; gap: 0.5rem; }

.copa-btn {
    font: inherit;
    font-size: 0.85rem;
    padding: 0.45rem 0.9rem;
    border: var(--line-width) solid var(--text-primary);
    border-radius: 999px;
    background: var(--text-primary);
    color: var(--bg-primary);
    cursor: pointer;
    transition: opacity 0.15s ease;
}
.copa-btn:hover { opacity: 0.82; }
.copa-btn--ghost { background: transparent; color: var(--text-secondary); border-color: var(--border-color); }

/* Favoritos */
.copa-favoritos { margin-top: 2rem; }
.copa-favoritos__list {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-wrap: wrap; gap: 0.5rem;
}
.copa-fav {
    display: inline-flex; align-items: center; gap: 0.45rem;
    padding: 0.4rem 0.75rem;
    border: var(--line-width) solid var(--border-color);
    border-radius: 999px; background: var(--bg-secondary);
}
.copa-fav__flag { font-size: 1.05rem; line-height: 1; }
.copa-fav__name { font-size: 0.9rem; color: var(--text-primary); }
.copa-fav__prob { font-size: 0.8rem; font-variant-numeric: tabular-nums; color: var(--text-secondary); }

/* Mini-calendário */
.copa-cal { margin-top: 2.25rem; }
.copa-calgrid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.3rem;
    max-width: 360px;
}
.copa-cal__wd {
    text-align: center;
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-tertiary);
    padding-bottom: 0.1rem;
}
.copa-cal__cell {
    aspect-ratio: 1 / 1;
    border-radius: 6px;
    border: var(--line-width) solid var(--border-color);
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    background: color-mix(in srgb, var(--link-color) calc(var(--f) * 1%), var(--bg-secondary));
}
.copa-cal__cell--empty { border: none; background: none; }
.copa-cal__dia { font-size: 0.82rem; font-variant-numeric: tabular-nums; color: var(--text-primary); }
.copa-cal__qtd { font-size: 0.6rem; line-height: 1; color: var(--text-secondary); }
.copa-cal__legend { margin: 0.6rem 0 0; font-size: 0.74rem; color: var(--text-tertiary); }

/* Grade de grupos */
.copa-grupos-wrap { margin-top: 2.5rem; }
.copa-grupos__head { margin-bottom: 1.1rem; }
.copa-grupos__head-row {
    display: flex; align-items: center; justify-content: space-between;
    gap: 1rem; flex-wrap: wrap;
    margin-bottom: 0.5rem;
}
.copa-grupos__head-row .copa-sub { margin-bottom: 0; }
.copa-grupos__head .copa-hint { margin-top: 0; }

/* Toggle de visualização */
.copa-view-toggle {
    display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 0.75rem;
}
.copa-view-toggle__label {
    font-size: 0.62rem; letter-spacing: 0.08em; text-transform: uppercase;
    color: var(--text-tertiary);
}
.copa-view-toggle__btns {
    display: inline-flex;
    border: var(--line-width) solid var(--border-color);
    border-radius: 999px; overflow: hidden;
    background: var(--bg-secondary);
}
.copa-view-btn {
    font: inherit; font-size: 0.78rem;
    padding: 0.35rem 0.85rem;
    border: none; background: transparent;
    color: var(--text-secondary); cursor: pointer;
    transition: background 0.14s ease, color 0.14s ease;
}
.copa-view-btn:hover { color: var(--text-primary); background: var(--bg-tertiary); }
.copa-view-btn--active {
    background: var(--text-primary); color: var(--bg-primary);
}
.copa-view-btn--active:hover { opacity: 0.9; }
.copa-view-btn:focus-visible {
    outline: 2px solid var(--link-color); outline-offset: 2px; z-index: 1;
}

/* Lista cronológica (ordem de jogo) */
.copa-fixture-head {
    display: grid;
    grid-template-columns: 2.4rem 1.5rem minmax(0, 1fr) auto;
    column-gap: 0.45rem;
    padding: 0.35rem 0.35rem 0.25rem;
    border-bottom: var(--line-width) solid var(--border-color);
    margin-bottom: 0.15rem;
}
.copa-fixture-head span {
    font-size: 0.58rem; text-transform: uppercase; letter-spacing: 0.06em;
    color: var(--text-tertiary);
}
.copa-fixture-head span:nth-child(3) { text-align: center; }
.copa-fixture-head span:last-child { text-align: right; padding-right: 0.15rem; }

.copa-fixture {
    list-style: none; margin: 0; padding: 0;
    border: var(--line-width) solid var(--border-color);
    border-radius: 10px; background: var(--bg-secondary);
    overflow: hidden;
}
.copa-fixture .copa-jogo {
    grid-template-columns: 2.4rem 1.5rem minmax(0, 1fr) auto;
    padding-left: 0.65rem; padding-right: 0.65rem;
}
.copa-fixture .copa-jogo:last-child { border-bottom: none; }
.copa-jogo__grupo {
    display: none;
    font-size: 0.72rem; font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--text-tertiary); text-align: center;
}
.copa-page.copa-view--lista .copa-jogo__grupo { display: block; }
.copa-page.copa-view--lista .copa-grupos { display: none; }

.copa-fixture-head,
.copa-fixture { display: none; }
.copa-page.copa-view--lista .copa-fixture-head { display: grid; }
.copa-page.copa-view--lista .copa-fixture { display: block; }

.copa-hint {
    margin: 0;
    font-size: 0.82rem; line-height: 1.5;
    color: var(--text-tertiary);
    max-width: 60ch;
}
.copa-hint strong { color: var(--text-secondary); font-weight: 600; }
.copa-hint__fav { color: var(--text-primary); font-weight: 600; }
.copa-grupos {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
    gap: 1.25rem;
}
.copa-grupo {
    border: var(--line-width) solid var(--border-color);
    border-radius: 10px;
    background: var(--bg-secondary);
    padding: 0.9rem 1rem 1rem;
}
.copa-grupo__head {
    display: flex; align-items: baseline; justify-content: space-between;
    gap: 0.6rem; flex-wrap: wrap;
    margin-bottom: 0.5rem; padding-bottom: 0.5rem;
    border-bottom: var(--line-width) solid var(--border-color);
}
.copa-grupo__title { margin: 0; font-size: 1rem; letter-spacing: 0.02em; }
.copa-grupo__fav { font-size: 0.78rem; color: var(--text-secondary); }

/* Lista de jogos */
.copa-jogos { list-style: none; margin: 0; padding: 0; }
.copa-jogo {
    position: relative;
    display: grid;
    grid-template-columns: 2.4rem minmax(0, 1fr) auto;
    column-gap: 0.45rem;
    align-items: center;
    padding: 0.5rem 0.35rem;
    border-bottom: var(--line-width) solid var(--border-color);
    border-radius: 6px;
    transition: background 0.14s ease;
}
.copa-jogo:last-child { border-bottom: none; }
.copa-jogo:hover,
.copa-jogo:focus-within { background: var(--bg-tertiary); }

.copa-jogo__data {
    display: flex; flex-direction: column; align-items: flex-start;
    line-height: 1.1;
}
.copa-jogo__dia { font-size: 0.76rem; font-variant-numeric: tabular-nums; color: var(--text-secondary); }
.copa-jogo__sem { font-size: 0.6rem; text-transform: uppercase; letter-spacing: 0.03em; color: var(--text-tertiary); }

.copa-jogo__times {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
}
.copa-time { display: flex; align-items: center; gap: 0.35rem; min-width: 0; }
.copa-time--home { justify-content: flex-end; }
.copa-time--away { justify-content: flex-start; }
.copa-time__flag { font-size: 1rem; line-height: 1; flex: none; }
.copa-time__name {
    font-size: 0.82rem; color: var(--text-secondary);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.copa-time--home .copa-time__name { text-align: right; }
.copa-time--away .copa-time__name { text-align: left; }
.copa-time.is-fav .copa-time__name { color: var(--text-primary); }
.copa-x { color: var(--text-tertiary); font-size: 0.74rem; flex: none; }
.copa-casa {
    flex: none;
    font-size: 0.5rem; text-transform: uppercase; letter-spacing: 0.05em;
    color: var(--copa-h); border: var(--line-width) solid var(--copa-h);
    border-radius: 3px; padding: 0.02rem 0.18rem; line-height: 1.2;
    opacity: 0.85;
}

.copa-jogo__palpite {
    display: flex; align-items: center; gap: 0.25rem;
}

/* Tooltip compacto (hover/foco no jogo) */
.copa-tip {
    position: absolute;
    left: 50%; bottom: calc(100% - 0.3rem);
    z-index: 20;
    width: min(228px, 82vw);
    padding: 0.55rem 0.65rem 0.5rem;
    background: var(--bg-primary);
    border: var(--line-width) solid var(--border-color);
    border-radius: 9px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
    opacity: 0; visibility: hidden; pointer-events: none;
    transform: translate(-50%, 6px);
    transition: opacity 0.16s ease, transform 0.16s ease;
}
.copa-jogo:hover .copa-tip,
.copa-jogo:focus-within .copa-tip {
    opacity: 1; visibility: visible; transform: translate(-50%, 0);
}
.copa-tip::after {
    content: ""; position: absolute; top: 100%; left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-top-color: var(--bg-primary);
}
.copa-tip__teams {
    display: block; font-size: 0.72rem; color: var(--text-secondary);
    margin-bottom: 0.4rem; line-height: 1.25;
}
.copa-tip__teams em { color: var(--text-tertiary); font-style: normal; margin: 0 0.15rem; }
.copa-tip__head {
    display: flex; align-items: baseline; gap: 0.4rem;
    margin-bottom: 0.45rem; padding-bottom: 0.4rem;
    border-bottom: var(--line-width) solid var(--border-color);
}
.copa-tip__score {
    font-size: 1.05rem; font-weight: 600; letter-spacing: 0.04em;
    font-variant-numeric: tabular-nums; color: var(--text-primary);
}
.copa-tip__cap {
    font-size: 0.58rem; text-transform: uppercase; letter-spacing: 0.05em;
    color: var(--text-tertiary);
}

/* Tabela de probabilidades (apostas vs modelo): numeros sempre visiveis */
.copa-tip__tbl {
    display: grid;
    grid-template-columns: auto 1fr 1fr 1fr;
    gap: 0.2rem 0.35rem;
    align-items: center;
}
.copa-tip__th {
    font-size: 0.54rem; text-transform: uppercase; letter-spacing: 0.03em;
    color: var(--text-tertiary); text-align: center;
}
.copa-tip__th--h { color: var(--copa-h); }
.copa-tip__th--d { color: var(--copa-d); }
.copa-tip__th--a { color: var(--copa-a); }
.copa-tip__rl {
    font-size: 0.6rem; text-transform: uppercase; letter-spacing: 0.04em;
    color: var(--text-secondary); padding-right: 0.2rem; white-space: nowrap;
}
.copa-tip__v {
    font-size: 0.74rem; font-weight: 600; font-variant-numeric: tabular-nums;
    text-align: center; color: var(--text-secondary);
}
.copa-tip__v--h { color: var(--copa-h); }
.copa-tip__v--d { color: var(--copa-d); }
.copa-tip__v--a { color: var(--copa-a); }
/* Barra empilhada das odds (visual sob cada linha) */
.copa-tip__bar {
    grid-column: 2 / -1;
    display: flex; height: 0.45rem; width: 100%;
    margin: 0.05rem 0 0.25rem;
    border-radius: 3px; overflow: hidden;
    background: var(--bg-tertiary);
}
.copa-tip__seg { height: 100%; min-width: 0; }
.copa-tip__seg--h { background: var(--copa-h); }
.copa-tip__seg--d { background: var(--copa-d); }
.copa-tip__seg--a { background: var(--copa-a); }
.copa-tip__elo {
    display: block; margin-top: 0.45rem; padding-top: 0.35rem;
    border-top: var(--line-width) solid var(--border-color);
    font-size: 0.58rem; color: var(--text-tertiary);
}

/* Aviso de palpite fora do modelo (descartável) */
.copa-alerta {
    grid-column: 1 / -1;
    display: flex; align-items: center; gap: 0.4rem;
    margin-top: 0.4rem;
    padding: 0.3rem 0.45rem;
    border-radius: 6px;
    border: var(--line-width) solid color-mix(in srgb, var(--copa-warn) 45%, var(--border-color));
    background: color-mix(in srgb, var(--copa-warn) 12%, var(--bg-primary));
    font-size: 0.72rem; line-height: 1.3;
    color: var(--text-secondary);
}
.copa-alerta__icon { color: var(--copa-warn); flex: none; font-size: 0.8rem; }
.copa-alerta__txt { flex: 1; min-width: 0; }
.copa-alerta__x {
    flex: none; font: inherit; font-size: 1rem; line-height: 1;
    width: 1.2rem; height: 1.2rem; padding: 0;
    display: flex; align-items: center; justify-content: center;
    border: none; border-radius: 4px;
    background: transparent; color: var(--text-tertiary); cursor: pointer;
}
.copa-alerta__x:hover { background: var(--bg-tertiary); color: var(--text-primary); }
.copa-in {
    width: 1.85rem; text-align: center;
    font: inherit; font-size: 0.82rem; font-variant-numeric: tabular-nums;
    padding: 0.2rem 0;
    border: var(--line-width) solid var(--border-color); border-radius: 5px;
    background: var(--bg-primary); color: var(--text-primary);
    -moz-appearance: textfield; appearance: textfield;
}
.copa-in::-webkit-outer-spin-button,
.copa-in::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.copa-in:focus { outline: none; border-color: var(--link-color); }
.copa-in.is-filled { border-color: var(--link-color); color: var(--link-color); font-weight: 600; }
.copa-in-x { color: var(--text-tertiary); font-size: 0.72rem; }

.copa-grupo__classificados { margin: 0.75rem 0 0; font-size: 0.8rem; color: var(--text-secondary); }
.copa-grupo__classificados-label {
    color: var(--text-tertiary); text-transform: uppercase;
    letter-spacing: 0.06em; font-size: 0.68rem; margin-right: 0.4rem;
}

/* Método */
.copa-metodo { margin-top: 2.5rem; }
.copa-metodo p { font-size: 0.86rem; line-height: 1.6; color: var(--text-secondary); max-width: 760px; }
.copa-metodo strong { color: var(--text-primary); font-weight: 600; }

/* ===== Mata-mata: chave convergindo à final no centro ===== */
.copa-mata-wrap { margin-top: 2.5rem; }
.copa-bracket__scroll {
    overflow-x: auto; overflow-y: hidden;
    padding: 0.4rem 0 0.8rem;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: var(--copa-sb-thumb) transparent;
}
.copa-bracket__scroll::-webkit-scrollbar { height: 10px; }
.copa-bracket__scroll::-webkit-scrollbar-track { background: transparent; }
.copa-bracket__scroll::-webkit-scrollbar-thumb {
    background: var(--copa-sb-thumb); border-radius: 5px;
    transition: background-color 0.15s ease;
}
.copa-bracket__scroll::-webkit-scrollbar-thumb:hover { background: var(--copa-sb-thumb-hover); }
.copa-bracket {
    --bk-gap: 22px;
    position: relative;
    display: flex; align-items: stretch; gap: var(--bk-gap);
    min-width: 1280px;            /* força scroll horizontal quando não cabe */
    padding-top: 3rem;            /* espaço para o campeão, acima da final */
}
.copa-bracket__col {
    flex: 1 1 0; min-width: 0;
    display: flex; flex-direction: column;
}
.copa-bracket__rotulo {
    flex: none; text-align: center; margin-bottom: 0.45rem;
    font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.06em;
    color: var(--text-tertiary);
}
.copa-bracket__rotulo--final { color: var(--text-secondary); font-weight: 600; }
.copa-bracket__matches { flex: 1 1 auto; display: flex; flex-direction: column; }
.copa-bracket__match {
    position: relative; flex: 1 1 0;
    display: flex; flex-direction: column; justify-content: center; gap: 4px;
}

/* slots, seletores e chips */
.copa-bracket__slot { position: relative; display: flex; align-items: center; gap: 4px; }
.copa-bracket__sel {
    flex: 1 1 auto; min-width: 0;
    font: inherit; font-size: 0.72rem; line-height: 1.1;
    padding: 0.25rem 0.3rem;
    border: var(--line-width) solid var(--border-color); border-radius: 5px;
    background: var(--bg-primary); color: var(--text-primary);
}
.copa-bracket__sel:focus { outline: none; border-color: var(--link-color); }
.copa-bracket__chip {
    flex: 1 1 auto; min-width: 0;
    display: flex; align-items: center; gap: 0.3rem;
    font: inherit; font-size: 0.72rem; text-align: left;
    padding: 0.25rem 0.4rem; min-height: 1.6rem;
    border: var(--line-width) dashed var(--border-color); border-radius: 5px;
    background: var(--bg-secondary); color: var(--text-tertiary);
    cursor: pointer;
}
.copa-bracket__chip.is-filled {
    border-style: solid; color: var(--text-primary); background: var(--bg-primary);
}
.copa-bracket__chip .copa-bracket__name {
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.copa-bracket__win {
    flex: none; width: 1.25rem; height: 1.25rem; padding: 0;
    display: flex; align-items: center; justify-content: center;
    border: var(--line-width) solid var(--border-color); border-radius: 5px;
    background: var(--bg-primary); color: var(--text-tertiary);
    font: inherit; font-size: 0.9rem; line-height: 1; cursor: pointer;
}
.copa-bracket__win:hover:not(:disabled) { color: var(--link-color); border-color: var(--link-color); }
.copa-bracket__adv:disabled { opacity: 0.45; cursor: default; }
.copa-bracket__slot.is-winner .copa-bracket__sel,
.copa-bracket__slot.is-winner .copa-bracket__chip {
    border-style: solid; border-color: var(--link-color);
    color: var(--link-color); font-weight: 600;
}
.copa-bracket__slot.is-winner .copa-bracket__win {
    border-color: var(--link-color); color: var(--link-color);
}

/* campeão, acima da final */
.copa-bracket__champion {
    position: absolute; top: 0; left: 50%; transform: translateX(-50%);
    z-index: 2; white-space: nowrap;
    display: flex; flex-direction: column; align-items: center; gap: 0.1rem;
    padding: 0.3rem 0.75rem; border-radius: 8px;
    border: var(--line-width) solid var(--border-color); background: var(--bg-secondary);
}
.copa-bracket__champion-cap {
    font-size: 0.6rem; text-transform: uppercase; letter-spacing: 0.08em;
    color: var(--text-tertiary);
}
.copa-bracket__champion-team {
    display: flex; align-items: center; gap: 0.35rem;
    font-size: 0.84rem; font-weight: 600; color: var(--text-primary);
}
.copa-bracket__champion[data-empty="true"] .copa-bracket__champion-team {
    color: var(--text-tertiary); font-weight: 400;
}

/* conectores: braço horizontal por filho + barra vertical no topo do par */
.copa-bracket__match::after {
    content: ''; position: absolute; top: 50%; height: 0;
    width: var(--bk-gap);
    border-top: var(--line-width) solid var(--border-color);
}
.copa-bracket__match--l::after { right: calc(var(--bk-gap) * -1); }
.copa-bracket__match--r::after { left: calc(var(--bk-gap) * -1); }
.copa-bracket__col--final .copa-bracket__match::after { content: none; }

.copa-bracket__col--r32 .copa-bracket__match:nth-child(odd)::before,
.copa-bracket__col--r16 .copa-bracket__match:nth-child(odd)::before,
.copa-bracket__col--qf  .copa-bracket__match:nth-child(odd)::before {
    content: ''; position: absolute; top: 50%; width: 0; height: 100%;
    border-right: var(--line-width) solid var(--border-color);
}
.copa-bracket__col--r32 .copa-bracket__match--l:nth-child(odd)::before,
.copa-bracket__col--r16 .copa-bracket__match--l:nth-child(odd)::before,
.copa-bracket__col--qf  .copa-bracket__match--l:nth-child(odd)::before {
    right: calc(var(--bk-gap) * -1);
}
.copa-bracket__col--r32 .copa-bracket__match--r:nth-child(odd)::before,
.copa-bracket__col--r16 .copa-bracket__match--r:nth-child(odd)::before,
.copa-bracket__col--qf  .copa-bracket__match--r:nth-child(odd)::before {
    left: calc(var(--bk-gap) * -1);
}

/* Mata-mata em telas estreitas: sangra até as bordas para rolar de ponta a ponta,
   mantendo os times das pontas afastados da margem da tela. */
@media (max-width: 768px) {
    .copa-bracket__scroll {
        margin-left: -1.5rem; margin-right: -1.5rem;
        padding-left: 1.5rem; padding-right: 1.5rem;
    }
}

@media (max-width: 600px) {
    .copa-grupos__head-row { flex-direction: column; align-items: flex-start; }
    .copa-grupos { grid-template-columns: 1fr; gap: 1rem; }
    .copa-fixture-head,
    .copa-fixture .copa-jogo { grid-template-columns: 2.2rem 1.3rem minmax(0, 1fr) auto; column-gap: 0.35rem; }
    .copa-jogo { grid-template-columns: 2.2rem minmax(0, 1fr) auto; column-gap: 0.35rem; }
    .copa-jogo__times { gap: 0.3rem; }
    .copa-time { gap: 0.25rem; }
    .copa-time__name { font-size: 0.8rem; }
    .copa-time__flag { font-size: 0.85rem; }
    .copa-in { width: 1.7rem; }
    .copa-jogo__palpite { gap: 0.2rem; }
    .copa-bracket { --bk-gap: 16px; min-width: 1120px; padding-top: 2.6rem; }
    .copa-bracket__sel, .copa-bracket__chip { font-size: 0.68rem; }
}

/* Impressão: layout limpo para salvar como PDF/imagem */
@media print {
    header, footer, .copa-toolbar, .copa-fontes, .copa-metodo, .links, .copa-cal__legend,
    .copa-view-toggle, .copa-fixture-head { display: none !important; }
    .copa-page.copa-view--lista .copa-grupos { display: grid !important; }
    .copa-page.copa-view--lista .copa-fixture { display: none !important; }
    .copa-page { color: #000; }
    .copa-grupos { grid-template-columns: repeat(2, 1fr); gap: 0.5rem; }
    .copa-grupo { break-inside: avoid; border-color: #ccc; background: #fff; }
    .copa-jogo { background: none !important; }
    .copa-in {
        border: none; background: none; color: #000; font-weight: 700;
        width: 1.4rem; -webkit-appearance: none; appearance: none;
    }
    .copa-tip, .copa-alerta { display: none !important; }
    .copa-time__name { color: #000; }
    /* Mata-mata: encolhe para caber na página, sem scroll */
    .copa-bracket__scroll { overflow: visible; }
    .copa-bracket { min-width: 0; --bk-gap: 12px; }
    .copa-bracket__sel, .copa-bracket__chip { font-size: 0.6rem; }
    .copa-bracket__win { display: none; }
}
