main {
  padding-bottom: var(--space-12);
}
.section-header {
  max-width: 720px;
  margin: 0 auto var(--space-6);
  text-align: left;
}
.review-layout {
  align-items: flex-start;
}
.review-main {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.review-main-body {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.review-score-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}
.score-item {
  padding: var(--space-4);
  border-radius: var(--radius-md);
  background: radial-gradient(circle at top left, #fffbeb 0, #ffffff 45%);
  border: 1px solid var(--color-border-soft);
}
.score-label {
  font-size: var(--font-size-sm);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-amber);
  margin-bottom: var(--space-2);
}
.score-value {
  font-family: var(--font-serif);
  font-size: var(--font-size-2xl);
  color: var(--color-primary);
  margin-bottom: var(--space-2);
}
.score-note {
  font-size: var(--font-size-sm);
  margin-bottom: 0;
}
.review-aside {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.review-aside-title {
  font-size: var(--font-size-xl);
  margin-bottom: var(--space-2);
}
.review-meta-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  font-size: var(--font-size-sm);
}
.review-meta-row {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.review-meta-row dt {
  font-weight: 700;
  color: var(--color-gray-700);
}
.review-meta-row dd {
  margin: 0;
  color: var(--color-text-muted);
}
.review-download-cta {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.review-download-cta p {
  margin-bottom: 0;
}
.review-secondary-link {
  align-self: flex-start;
}
.review-section-grid {
  align-items: center;
}
.review-image-panel {
  max-width: 520px;
  margin: 0 auto;
}
.player-quotes-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.player-quote h3 {
  font-size: var(--font-size-lg);
}
.player-meta {
  font-size: var(--font-size-sm);
  margin-bottom: 0;
  color: var(--color-gray-600);
}
.farming-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.missions-card {
  height: 100%;
}
.missions-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.missions-list li strong {
  display: block;
  font-family: var(--font-serif);
  margin-bottom: 4px;
}
.audio-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.learning-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.learning-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  counter-reset: steps;
}
.learning-list li {
  counter-increment: steps;
  position: relative;
  padding-left: 2.2rem;
}
.learning-list li::before {
  content: counter(steps);
  position: absolute;
  left: 0;
  top: 0.15rem;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-amber));
  color: #fefce8;
  font-size: var(--font-size-sm);
  display: flex;
  align-items: center;
  justify-content: center;
}
.performance-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.recommendation-card {
  background: radial-gradient(circle at top left, #fffbeb 0, #ffffff 40%, #ffedd5 100%);
}
.recommendation-grid {
  align-items: center;
}
.recommendation-cta {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.recommendation-score {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-lg);
  background: rgba(250, 250, 249, 0.96);
  border: 1px solid var(--color-border-soft);
  box-shadow: var(--shadow-subtle);
}
.recommendation-score-label {
  font-size: var(--font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--color-amber);
  margin-bottom: 4px;
}
.recommendation-score-value {
  font-family: var(--font-serif);
  font-size: var(--font-size-2xl);
  color: var(--color-primary);
}
.recommendation-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  font-size: var(--font-size-sm);
}
.recommendation-links a {
  text-decoration: underline;
  text-decoration-color: rgba(234, 88, 12, 0.6);
  text-underline-offset: 3px;
}
@media (max-width: 1024px) {
  .review-layout {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1.4fr);
  }
  .review-aside {
    position: static;
  }
  .player-quotes-grid,
  .farming-grid,
  .audio-grid,
  .performance-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .review-score-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 768px) {
  .review-layout,
  .review-section-grid,
  .player-quotes-grid,
  .farming-grid,
  .audio-grid,
  .performance-grid,
  .recommendation-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .section-header {
    text-align: left;
  }
  .review-score-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .review-image-panel {
    order: -1;
  }
}
@media (max-width: 640px) {
  .recommendation-links {
    flex-direction: column;
    align-items: flex-start;
  }
}
