.gp-section { background: var(--bg); padding-top: 90px; padding-bottom: 24px; }

.gp-header { text-align: center; margin-bottom: 32px; }
.gp-title {
  font-family: 'Baloo 2', cursive;
  font-weight: 800;
  font-size: clamp(24px, 3.5vw, 34px);
  color: var(--navy);
  margin-bottom: 6px;
}
.gp-subtitle { font-size: 15px; font-weight: 600; color: var(--muted); }

.gp-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  gap: 12px;
  max-width: 456px;
  margin: 0 auto 32px;
}

.gp-len-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 16px 6px;
  background: #fff;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(0,80,140,0.08);
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.gp-len-btn:hover {
  transform: translateY(-4px);
  border-color: #67e8f9;
  box-shadow: 0 14px 32px rgba(0,151,167,0.16);
}
.gp-len-num {
  font-family: 'Baloo 2', cursive;
  font-weight: 800;
  font-size: 20px;
  background: linear-gradient(135deg, #0097a7, #1565c0);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.gp-len-label {
  font-size: 8px;
  font-weight: 700;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.gp-back      { text-align: center; }
.gp-back-link { font-size: 14px; font-weight: 700; color: var(--teal); text-decoration: none; }
.gp-back-link:hover { text-decoration: underline; }

/* ── How to play ── */
.gp-howto {
  background: #f0f4f8;
  padding: 48px 5vw 56px;
  margin-top: 8px;
}
.gp-howto-inner {
  max-width: 760px;
  margin: 0 auto;
  background: #fff;
  border-radius: 20px;
  padding: 32px 36px;
  box-shadow: 0 4px 16px rgba(0,80,140,0.07);
  border-left: 5px solid #0097a7;
}
.gp-howto-heading {
  font-family: 'Baloo 2', cursive;
  font-weight: 800;
  font-size: 20px;
  color: #0d2545;
  margin-bottom: 14px;
}
.gp-howto-text {
  font-size: 14px;
  color: #5f7897;
  font-weight: 600;
  line-height: 1.85;
}
.gp-howto-text + .gp-howto-text { margin-top: 16px; }
.gp-howto-text strong { color: #0d2545; }
