.odds-summary {
  margin-top: .75rem;
  border: 1px solid rgba(120, 164, 215, .25);
  border-radius: .75rem;
  background: rgba(9, 30, 51, .72);
  overflow: hidden;
}

.odds-summary__header,
.odds-market__title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}

.odds-summary__header {
  padding: .7rem .85rem;
  border-bottom: 1px solid rgba(120, 164, 215, .2);
  background: rgba(25, 56, 87, .58);
}

.odds-summary__eyebrow,
.odds-summary__meta,
.odds-market__title-row span,
.odds-summary__note,
.odds-outcome small {
  font-size: .68rem;
  color: #9fc0e2;
}

.odds-summary__eyebrow,
.odds-summary h4,
.odds-market h5,
.odds-outcome__label {
  text-transform: uppercase;
  letter-spacing: .045em;
  font-weight: 800;
}

.odds-summary h4,
.odds-market h5 {
  margin: 0;
  color: #fff;
}

.odds-summary h4 { font-size: .88rem; }
.odds-market h5 { font-size: .72rem; }

.odds-summary__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .25rem .65rem;
  text-align: right;
}

.odds-summary__badge {
  padding: .12rem .42rem;
  border: 1px solid rgba(255, 193, 7, .55);
  border-radius: 999px;
  color: #ffd76a;
}

.odds-summary__markets {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: .55rem;
  padding: .7rem;
}

.odds-market {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: .55rem;
  border: 1px solid rgba(120, 164, 215, .18);
  border-radius: .55rem;
  background: rgba(11, 38, 65, .8);
}

.odds-market__title-row { margin-bottom: .45rem; }
.odds-market__title-row span { text-align: right; }

.odds-market__outcomes {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: repeat(auto-fit, minmax(4.4rem, 1fr));
  gap: .35rem;
}

.odds-outcome {
  display: grid;
  align-content: center;
  min-width: 0;
  min-height: 4.25rem;
  padding: .42rem .35rem;
  border-radius: .42rem;
  background: rgba(27, 67, 106, .72);
  text-align: center;
}

.odds-outcome__label { font-size: .68rem; color: #b9d5f1; }
.odds-outcome strong { font: 800 1.05rem/1.15 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: #fff; }
.odds-outcome small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.odds-summary__note { margin: 0; padding: 0 .85rem .7rem; }
.odds-summary__empty { padding: .8rem .9rem; color: #b8caDC; font-size: .78rem; }
.odds-summary--stale { border-color: rgba(255, 193, 7, .35); }

.match-preview > .odds-summary {
  margin: 0 0 .75rem;
}

.match-preview > .odds-summary .odds-summary__markets {
  grid-template-columns: repeat(auto-fit, minmax(min(16rem, 100%), 1fr));
}

.odds-summary__inline-meta {
  color: #9fc0e2;
  display: flex;
  flex-wrap: wrap;
  font-size: .66rem;
  gap: .25rem .65rem;
  justify-content: flex-end;
  padding: 0 0 .45rem;
}

.odds-summary--prediction-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0;
  overflow: visible;
}

.odds-summary--prediction-card .odds-summary__markets {
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
}

.odds-summary--prediction-card .odds-market {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}

.odds-summary--prediction-card .odds-market__title-row {
  margin-bottom: .35rem;
}

.odds-summary--prediction-card .odds-outcome {
  min-height: 3.15rem;
  padding-block: .3rem;
}

.odds-summary--prediction-card .odds-outcome strong {
  font-size: 1rem;
}

.bet-match-odds {
  margin-top: .5rem;
}

@media (max-width: 767.98px) {
  .odds-summary__header,
  .odds-market__title-row {
    align-items: flex-start;
  }
  .odds-summary__meta {
    max-width: 55%;
  }
  .odds-summary__markets,
  .match-preview > .odds-summary .odds-summary__markets {
    grid-template-columns: 1fr;
  }
  .odds-summary--compact .odds-market__outcomes {
    grid-template-columns: repeat(auto-fit, minmax(4rem, 1fr));
  }
  .odds-outcome {
    min-height: 3.85rem;
  }
  .odds-outcome small {
    font-size: .62rem;
  }
}
