.summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}

.summary-card {
  background: #fff5ea;
  padding: 20px;
  border-radius: 16px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.summary-card p {
  font-size: 34px;
  font-weight: 700;
}

.chart-card,
.table-card {
  background: #fff5ea;
  padding: 24px;
  border-radius: 18px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
  margin-bottom: 20px;
}

.section-title {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 20px;
}

@media (max-width: 768px) {
  body {
    padding: 12px;
  }

  .student-name {
    font-size: 24px;
  }

  .summary-card p {
    font-size: 28px;
  }
}
