/* TGV TIERING — TRIVIA WIDGET
 *
 * Deliberately restrained: this renders inside a blog post, a File page and a
 * campaign page, so it reads as a card on whatever background it lands on
 * rather than imposing a layout. Brand colour comes from --primary
 * (CLAUDE.md — never hardcode #ff0013). */

.tgv-trivia {
  margin: 2rem auto;
  max-width: 560px;
  width: 100%;
}

.tgv-trivia-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  padding: 1.75rem 1.5rem;
  text-align: center;
}

.tgv-trivia-title {
  font-size: 1.35rem;
  margin: 0 0 0.5rem;
}

.tgv-trivia-intro,
.tgv-trivia-meta,
.tgv-trivia-note,
.tgv-trivia-loading {
  font-size: 0.95rem;
  opacity: 0.8;
  margin: 0 0 0.75rem;
}

.tgv-trivia-intro {
  white-space: pre-line;
}

.tgv-trivia-note.is-win {
  color: var(--primary);
  font-weight: 600;
  opacity: 1;
}

.tgv-trivia-progress {
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.6;
  margin: 0 0 0.5rem;
}

.tgv-trivia-question {
  font-size: 1.15rem;
  line-height: 1.4;
  margin: 0 0 1.25rem;
}

.tgv-trivia-score {
  font-size: 2.5rem;
  margin: 0 0 0.75rem;
  color: var(--primary);
}

/* Score-range outcome copy (admin-configured, optional — CLAUDE.md/TIERING
   §6.1). Replaces the plain "Your score" heading when a quiz has one; the
   numeric score still shows underneath it. */
.tgv-trivia-band-title {
  font-size: 1.5rem;
  margin: 0 0 0.5rem;
  color: var(--primary);
}

.tgv-trivia-band-body {
  font-size: 0.95rem;
  line-height: 1.5;
  text-align: left;
  opacity: 0.9;
  margin: 0 0 1.25rem;
}

/* Flat completion message (admin-configured, optional — CLAUDE.md/TIERING
   §6.1). Shown alongside the score/band above, not instead of it — the same
   text every time, regardless of score. A light highlight box so it reads
   as a distinct announcement (e.g. a giveaway confirmation). */
.tgv-trivia-completion-message {
  font-size: 0.95rem;
  line-height: 1.5;
  text-align: left;
  margin: 0 0 1.25rem;
  padding: 0.85rem 1rem;
  border-radius: 10px;
  background: rgba(255, 0, 19, 0.08);
  border: 1px solid rgba(255, 0, 19, 0.25);
}

.tgv-trivia-options {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.tgv-trivia-option {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 10px;
  color: inherit;
  cursor: pointer;
  font: inherit;
  padding: 0.8rem 1rem;
  text-align: left;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.tgv-trivia-option[disabled] {
  cursor: default;
}

/* Feedback after answering. Both states carry a symbol as well as a colour,
   so the result doesn't depend on colour vision alone. */
.tgv-trivia-option.is-correct {
  border-color: #2ecc71;
  background: rgba(46, 204, 113, 0.14);
}

.tgv-trivia-option.is-correct::after {
  content: " ✓";
  font-weight: 700;
  color: #2ecc71;
}

.tgv-trivia-option.is-wrong {
  border-color: var(--primary);
  background: rgba(255, 0, 19, 0.12);
}

.tgv-trivia-option.is-wrong::after {
  content: " ✕";
  font-weight: 700;
  color: var(--primary);
}

.tgv-trivia-start {
  margin-top: 0.5rem;
}

@media (hover: hover) {
  .tgv-trivia-option:not([disabled]):hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.3);
  }
}
