/* Clean Grand Final / Next Match override */
#nextMatchTitle.next-match-rich{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin-top:14px!important;
}
#nextMatchTitle .next-team-inline{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}
#nextMatchTitle .next-team-home{justify-content:flex-start!important;text-align:left!important;flex-direction:row!important;}
#nextMatchTitle .next-team-away{justify-content:flex-end!important;text-align:right!important;flex-direction:row!important;}
#nextMatchTitle .next-team-name{
  display:block!important;
  min-width:0!important;
  color:#2a0d35!important;
  font-size:clamp(1.2rem,3vw,2rem)!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#nextMatchTitle .team-logo{
  display:block!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  flex:0 0 46px!important;
  object-fit:contain!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#nextMatchTitle .team-badge,
#nextMatchTitle .fallback-badge{
  display:none!important;
}
.next-match-vs{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:auto!important;
  height:auto!important;
  padding:0 2px!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#8a8396!important;
  font-size:1rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

.grand-final-showpiece.final-match-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  grid-template-areas:"meta meta meta" "home score away" "status status status"!important;
  align-items:center!important;
  gap:20px 22px!important;
  margin:10px 0 16px!important;
  padding:30px 28px 28px!important;
  border-radius:30px!important;
  border:2px solid rgba(184,137,36,.24)!important;
  background:linear-gradient(135deg,#fffdf7 0%,#fbf4df 52%,#f6ebcc 100%)!important;
  box-shadow:0 16px 38px rgba(79,55,14,.08),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.grand-final-showpiece .match-meta{
  grid-area:meta!important;
  justify-self:center!important;
  margin:0!important;
  text-align:center!important;
  color:#8a681d!important;
  font-size:.95rem!important;
  font-weight:1000!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
.grand-final-showpiece .fixture-home{
  grid-area:home!important;
  justify-self:start!important;
  justify-content:flex-start!important;
  flex-direction:row!important;
  text-align:left!important;
}
.grand-final-showpiece .fixture-away{
  grid-area:away!important;
  justify-self:end!important;
  justify-content:flex-end!important;
  flex-direction:row!important;
  text-align:right!important;
}
.grand-final-showpiece .fixture-team{
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
  min-width:0!important;
}
.grand-final-showpiece .fixture-away{flex-direction:row-reverse!important;}
.grand-final-showpiece .fixture-team span{
  display:block!important;
  min-width:0!important;
  color:#220a34!important;
  font-size:clamp(1.35rem,3vw,2.15rem)!important;
  font-weight:1000!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.grand-final-showpiece .fixture-team .team-logo{
  display:block!important;
  width:70px!important;
  height:70px!important;
  min-width:70px!important;
  flex:0 0 70px!important;
  object-fit:contain!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.grand-final-showpiece .fixture-team .team-badge,
.grand-final-showpiece .fixture-team .fallback-badge{
  display:none!important;
}
.grand-final-showpiece .score-display{
  grid-area:score!important;
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:90px!important;
  height:62px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#fffaf0,#efdfb2)!important;
  border:2px solid rgba(184,137,36,.26)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92)!important;
  color:#87631b!important;
  font-size:1.85rem!important;
  font-weight:1000!important;
}
.grand-final-showpiece .status-pill{
  grid-area:status!important;
  justify-self:center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#8a681d!important;
  font-size:.9rem!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-align:center!important;
  text-transform:uppercase!important;
}

@media(max-width:760px){
  #nextMatchTitle.next-match-rich{gap:8px!important;}
  #nextMatchTitle .next-team-inline{gap:7px!important;}
  #nextMatchTitle .next-team-name{font-size:.98rem!important;}
  #nextMatchTitle .team-logo{width:38px!important;height:38px!important;min-width:38px!important;flex-basis:38px!important;}
  .next-match-vs{font-size:.8rem!important;}
  .grand-final-showpiece.final-match-card{
    grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr)!important;
    gap:14px 8px!important;
    padding:22px 12px 20px!important;
    border-radius:26px!important;
  }
  .grand-final-showpiece .match-meta{font-size:.76rem!important;letter-spacing:.13em!important;}
  .grand-final-showpiece .fixture-team{gap:7px!important;}
  .grand-final-showpiece .fixture-team span{font-size:.96rem!important;white-space:normal!important;}
  .grand-final-showpiece .fixture-team .team-logo{width:48px!important;height:48px!important;min-width:48px!important;flex-basis:48px!important;}
  .grand-final-showpiece .score-display{min-width:64px!important;height:48px!important;padding:0!important;font-size:1.35rem!important;}
  .grand-final-showpiece .status-pill{font-size:.64rem!important;}
}