Basis of $\mathbb{Z}^n$ approximating bases of $\mathbb{Z}_p^n$ I have some questions about the proof of Theorem 2.1. in Section 2 of Chapter 9 in Rational Quadratic Forms by Cassels (1978). The statement of the theorem is as follows:

Given $P$ a finite set of primes $p\neq \infty$ and for each $p\in P$ let
  $$\mathbf{c}_1^{(p)},\dots, \mathbf{c}_n^{(p)}$$ 
  be a basis for $\mathbb{Z}_p^n$ (as a lattice, i.e. the vectors form a basis of an $n$-dimensional vector space over $\mathbb{Q}_p$), with
  $$\det(\mathbf{c}_1^{(p)},\dots,\mathbf{c}_n^{(p)})=1.$$
  Then for any $\varepsilon>0$ there is a basis $\mathbf{c}_1,\dots,\mathbf{c}_n$ of $\mathbb{Z}^n$ (again as a lattice, i.e. the vectors form a basis of an $n$-dimensional vector space over $\mathbb{Q}$) with
  $$\det(\mathbf{c}_1,\dots,\mathbf{c}_n)=1$$ 
  such that 
  $$\Vert \mathbf{c}_j - \mathbf{c}_j^{(p)}\Vert_p < \varepsilon ~~~~~~(1\leq j\leq n,~~\text{  all  }~~p\in P). \tag{1}$$ 
  Here we have used the notation 
  $$\Vert \mathbf{b} \Vert_p = \max |b_j|_p,$$
  where $|\cdot|_p$ denotes the usual $p$-adic norm, i.e. 
  $$|b|_p = p^{-\operatorname{ord}_p(b)}.$$

The statement is proved through induction, where we use the hypothesis 

$\mathit{H_J}$ : there is a basis 
  $$\mathbf{c}_1,\dots,\mathbf{c}_{J-1},\mathbf{b}_J,\dots, \mathbf{b}_n \tag{2}$$ 
  of $\mathbb{Z}^n$ such that $(1)$ is true for all $j<J$. 

The part where I am stuck is when we suppose that $\mathit{H_J}$ has been proved, then we can express the $\mathbf{c}_J^{(p)}$ (for $p\in P$) in terms of the basis $(2)$ as 
$$\mathbf{c}_J^{(p)} = l_1^{(p)}\mathbf{c}_1 + \dots + l_{J-1}^{(p)}\mathbf{c}_{J-1} + m_J^{(p)} \mathbf{b}_J + \dots + m_n^{(p)}\mathbf{b}_n,$$
where
$$l_1^{(p)},\dots,l_{J-1}^{(p)},m_J^{(p)},\dots,m_n^{(p)}\in \mathbb{Z}_p.$$
The author now claims that an earlier theorem on lattice bases (Theorem 3.1. of Chapter 7, applied to the case $I=\mathbb{Z}_p$, $k=\mathbb{Q}_p$, $\Lambda=\mathbb{Z}_p^n$) tells us that 
$$\max_{J\leq j \leq n}|m^{(p)}_j|_p = 1.$$ 
However, I do not really see how the theorem implies this statement. If we apply the theorem with $\mathbf{e}_j=\mathbf{c}_j$ for $1\leq j<J$, $\mathbf{e}_j=\mathbf{b}_j$ for $J\leq j \leq n$ and $J=1$ (the $J$ in Theorem 3.1.). Then the theorem tells us that 
$$\max_{\substack{1\leq i \leq J-1 \\ J\leq j \leq n}} \{|l_i^{(p)}|_p, |m_j^{(p)}|_p \} = 1,$$
but I am not sure how this implies that actually one of the $m_j^{(p)}$ is a $p$-adic unit. 
I also considered applying the theorem with $J=J$ (i.e. the $J$ in Theorem 3.1. equals the $J$ from our induction hypothesis) to the vectors $\mathbf{c}_1^{(p)},\dots,\mathbf{c}_J^{p}$ and expressing the $\mathbf{c}_j^{(p)}$ in terms of the basis $(2)$ using the induction hypothesis (for $j<J$), but I also do not really see how to get the desired result out of the fact that one of the determinants of the $J\times J$ submatrices is now a $p$-adic unit. 
Any help or ideas as to how I can get to the desired claim would be greatly appreciated. Sorry for the long post, and thanks in advance!
 A: I think I managed to figure it out, please let me know if there are any mistakes. 
By our induction hypothesis we know that $(1)$ holds for all $j<J$; hence for $j<J$ we can write 
\begin{equation*}
    \mathbf{c}_j^{(p)} = \mathbf{c}_j + p^N (x_{j1}^{(p)}\mathbf{c}_1 + \dots + x_{j(J-1)}^{(p)}\mathbf{c}_{J-1} + x_{jJ}^{(p)}\mathbf{b}_J + \dots + x_{jn}^{(p)} \mathbf{b}_n)
\end{equation*}
with the $x_{ji}^{(p)}\in \mathbb{Z}_p$ and where we can pick $N\in \mathbb{Z}_{\geq 0}$ such that $p^{-N}< \varepsilon$.
Since we know that for every $p\in P$ the vectors $\mathbf{c}_1^{(p)},\dots, \mathbf{c}_J^{(p)}$ extend to form a basis for $\mathbb{Z}_p^n$, we see from Theorem 3.1. (the one I linked in my post) with $(2)$ as basis for $\mathbb{Z}_p^n$ that the set of determinants of the $J\times J$ submatrices of the $J\times n$ matrix 
\begin{equation}\label{jtimesncoeffmatrixeq}
    \begin{pmatrix}
    1 + p^N x_{11}^{(p)} & p^N x_{12}^{(p)} & \dots &  &  & \dots & p^N x_{1n}^{(p)} \\
    p^N x_{21}^{(p)} & 1 + p^N x_{22}^{(p)} & \dots &  &  & \dots & p^N x_{2n}^{(p)} \\
    \vdots & & \ddots & & & & \vdots \\
    p^N x_{(J-1)1}^{(p)} & \dots &  & 1 + p^N x_{(J-1)(J-1)}^{(p)} & p^N x_{(J-1)J}^{(p)} & \dots & p^N x_{(J-1)n}^{(p)}\\
    l_1^{(p)} & \dots &  & l_{J-1}^{(p)} & m_J^{(p)} &\dots & m_n^{(p)}
    \end{pmatrix}
\end{equation}
is coprime. Therefore, one of these determinants must be a $p$-adic unit. From the shape of the matrix and the fact that most of the entries are divisible by $p$, we can now deduce that
\begin{equation*}
\max_{J\leq j \leq n}|m_j|_p = 1.
\end{equation*} 
