/* Risultati Oracle: contrasto e leggibilita coerenti su tutte le card. */

.result-card h2 {
  font-size: clamp(30px, 4.4vw, 38px) !important;
  line-height: 1.05 !important;
}

.result-card .result-role {
  font-size: 13px !important;
  font-weight: 900 !important;
}

.result-card .theme {
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

.result-card .reason-list {
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 600 !important;
}

.result-card .score {
  font-size: 11px !important;
  font-weight: 800 !important;
}

.result-card .game-facts span {
  font-size: 13px !important;
  font-weight: 800 !important;
}

/* Card principale viola: tutti i testi secondari devono restare chiari. */
.result-card.main-pick,
.result-card.main-pick h2 {
  color: #fff !important;
}

.result-card.main-pick .result-role,
.result-card.main-pick .theme,
.result-card.main-pick .reason-list,
.result-card.main-pick .result-note,
.result-card.main-pick .score,
.result-card.main-pick .score b {
  color: #fff !important;
}

.result-card.main-pick .theme,
.result-card.main-pick .reason-list,
.result-card.main-pick .score {
  opacity: .92 !important;
}

.result-card.main-pick .game-facts span {
  background: rgba(255,255,255,.92) !important;
  color: var(--ink) !important;
  border-color: var(--ink) !important;
}

/* Card gialla e verde: niente grigi a basso contrasto. */
.result-card:not(.main-pick),
.result-card:not(.main-pick) h2,
.result-card:not(.main-pick) .result-role,
.result-card:not(.main-pick) .theme,
.result-card:not(.main-pick) .reason-list,
.result-card:not(.main-pick) .result-note,
.result-card:not(.main-pick) .score,
.result-card:not(.main-pick) .score b {
  color: var(--ink) !important;
}

.result-card:not(.main-pick) .theme,
.result-card:not(.main-pick) .reason-list,
.result-card:not(.main-pick) .score {
  opacity: .88 !important;
}

.result-card:not(.main-pick) .result-note {
  background: rgba(255,255,255,.68) !important;
}

.result-card:not(.main-pick) .game-facts span {
  background: #fff !important;
  color: var(--ink) !important;
  border-color: var(--ink) !important;
}

@media (max-width: 650px) {
  .result-card {
    padding: 24px 20px !important;
  }

  .result-card h2 {
    font-size: clamp(32px, 9vw, 40px) !important;
    margin-top: 22px !important;
    margin-bottom: 10px !important;
  }

  .result-card .result-role {
    font-size: 14px !important;
    letter-spacing: .08em !important;
  }

  .result-card .theme {
    font-size: 16px !important;
  }

  .result-card .reason-list {
    margin: 20px 0 !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  .result-card .reason-list li + li {
    margin-top: 8px !important;
  }

  .result-card .score {
    font-size: 12px !important;
  }

  .result-card .game-facts {
    gap: 8px !important;
  }

  .result-card .game-facts span {
    padding: 8px 11px !important;
    font-size: 14px !important;
  }

  .played-cta {
    font-size: 16px !important;
  }

  .recap {
    font-size: 13px !important;
    gap: 8px !important;
  }

  .recap b {
    padding: 8px 11px !important;
    font-size: 13px !important;
  }

  .result-actions .primary {
    font-size: 16px !important;
  }
}
