@layer components {
  .forecast-template > section > h2 { font-family: var(--font-display, inherit); font-size: 1.5rem; font-weight: 800; line-height: 1.3; margin-bottom: 1rem; }
  .forecast-template > section:not([id$="-overview"]):not([id$="-free-broadcast"]) p { font-size: .875rem; line-height: 1.7; }
  .forecast-template > section:not([id$="-overview"]):not([id$="-free-broadcast"]) p + p { margin-top: .75rem; }
  .forecast-template [data-forecast-section="expert"] > div:first-of-type { display: flex; align-items: center; gap: .75rem; margin-bottom: 1rem; }
  .forecast-template [data-forecast-section="expert"] > div:first-of-type > img { width: 48px; height: 48px; flex-shrink: 0; border-radius: 50%; object-fit: cover; }
  .forecast-template [data-forecast-section="odds"], .forecast-template [data-forecast-section="h2h"] { min-width: 0; overflow-x: auto; }
  .forecast-template table { width: 100%; border-collapse: collapse; font-size: .875rem; }
  .forecast-template th { padding: .75rem; text-align: left; color: #68758b; font-size: .75rem; font-weight: 700; border-bottom: 1px solid #dce3ed; }
  .forecast-template td { padding: .75rem; border-bottom: 1px solid #e7ecf2; }
  .forecast-template td small { display: block; margin-top: .25rem; color: #68758b; font-size: .6875rem; }
  .forecast-template [data-forecast-section="overview"] > .grid > div:nth-child(3) > div:last-child { font-size: 1.5rem; line-height: 1.2; font-weight: 800; }
  @media (max-width: 639px) {
    .forecast-template > section > h2 { font-size: 1.25rem; }
    .forecast-template .rf-odds-values { min-width: 0; }
    .forecast-template td, .forecast-template th { padding: .6rem .45rem; }
  }
}
