/* =====================================================================
   COMPONENTE · BRACKETS DE LAS FINALES
   Celular: rondas apiladas verticalmente (cuartos → semis → final).
   Escritorio: llave horizontal clásica de 4 columnas.
   ===================================================================== */

.bk-wrap{padding:14px}
.bk{display:grid;grid-template-columns:1fr;gap:16px}
.bk-colwrap{display:flex;flex-direction:column}
.bk-colwrap h4{font-family:var(--body);font-size:13px;color:var(--muted);font-weight:600;margin:0 0 8px}
.bk-col{flex:1;display:flex;flex-direction:column;justify-content:space-around;gap:10px}
.m{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--bg)}
.m .lbl{font-size:12px;color:var(--muted);padding:5px 10px 0}
.pl{display:flex;align-items:center;gap:8px;padding:8px 10px}
.pl + .pl{border-top:1px solid var(--line)}
.pl .sd{font-family:var(--display);font-weight:700;font-size:14px;min-width:26px;height:22px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--line)}
.pl .nm{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pl .nm a{text-decoration:none}
.pl .pt{font-size:13px;color:var(--muted)}
.pl.tbd{color:var(--muted);font-style:italic}
.champ{border:2px solid var(--gold);border-radius:14px;padding:14px;text-align:center;background:var(--pine-soft)}
.champ .t{font-size:26px;margin:2px 0}
.champ .n{font-family:var(--display);font-size:20px;font-weight:700;color:var(--muted)}

@media (min-width:600px){
  .bk{grid-template-columns:1fr 1fr}
  .bk-colwrap:first-child{grid-row:span 2}
}

@media (min-width:900px){
  .bk-wrap{overflow-x:auto;padding:16px}
  .bk{grid-template-columns:repeat(3,minmax(200px,1fr)) minmax(160px,.8fr);gap:0 24px}
  .bk-colwrap:first-child{grid-row:auto}
  .bk-col{gap:14px}
}

/* ---------- Resultados (temporadas cerradas) ---------- */
.pl .sc{font-family:var(--display);font-weight:700;font-size:16px;min-width:24px;text-align:center;color:var(--muted)}
.pl.win{background:var(--pine-soft)}
.pl.win .sc{color:var(--ink)}
.pl.lose .nm{opacity:.65}
.champ .n.done{color:var(--ink)}
.champ .s{font-size:13px;color:var(--muted);margin-top:4px}
