Conceptually the problem of drawing the stones is very similar to what has been done in this answer, which I am recycling here. This allows you to avoid overlaps.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{%
decorations.pathreplacing,%
decorations.pathmorphing%
}
\newcommand\irregularcircle[1]{% radius, irregularity
+(0:#1)
\foreach \a in {30,60,...,330}{
let \n1 = {(#1)+rand*(0.2*#1)} in
-- +(\a:\n1)
} -- cycle
}
%from https://tex.stackexchange.com/a/87518/121799
\def\xlist{4}
\def\ylist{4}
\newcommand{\fillrandomly}[7][]{
\pgfmathsetmacro\diameter{#6*2}
\foreach \i in {1,...,#7}{
\pgfmathsetmacro\x{0.5*(#4+#2+(2*rnd-1)*(#4-#2))}
\pgfmathsetmacro\y{0.5*(#5+#3+(2*rnd-1)*(#5-#3))}
\xdef\collision{0}
\foreach \element [count=\i] in \xlist{
\pgfmathtruncatemacro\j{\i-1}
\pgfmathsetmacro\checkdistance{ sqrt( ({\xlist}[\j]-(\x))^2 + ({\ylist}[\j]-(\y))^2 ) }
\ifdim\checkdistance pt<\diameter pt
\xdef\collision{1}
\breakforeach
\fi
}
\ifnum\collision=0
\xdef\xlist{\xlist,\x}
\xdef\ylist{\ylist,\y}
\draw[black!50,ultra thin,rounded corners=.5mm,
top color=brown!20,bottom color=brown!20!gray,
shading angle={(0.5+rand)*20}]
(\x,\y) \irregularcircle{0.21cm};
\fi
}
}
\begin{document}
\thispagestyle{empty}
\begin{tikzpicture}[
media/.style={font={\footnotesize\sffamily}},
wave/.style={
decorate,decoration={snake,post length=1.4mm,amplitude=2mm,
segment length=2mm},thick},
interface/.style={
% The border decoration is a path replacing decorator.
% For the interface style we want to draw the original path.
% The postaction option is therefore used to ensure that the
% border decoration is drawn *after* the original path.
postaction={draw,decorate,decoration={border,angle=-135,
amplitude=0.3cm,segment length=2mm}}
}
]
\begin{scope}
\draw [draw=none, fill=cyan!10, rounded corners=2mm] (-2,0) rectangle
(10,2);
\draw [interface, thick, black] (-2,0)--(10,0);
\draw[draw=none, fill=brown!10, rounded corners=1mm, opacity=0.5]
(-2,0)rectangle (10,-1);
\clip (-2,0) rectangle (10,-2);
\fillrandomly{-2+0.21}{-0.21}{10-0.21}{-1+0.21}{0.21}{37}
\end{scope}
\end{tikzpicture}
\end{document}

As for your second question: do you have a rough idea how the stones should look like? I made a proposal but it may be very different from what you're hoping to get.
It might be nicer to have the stones on the background.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{%
decorations.pathreplacing,%
decorations.pathmorphing
}
\newcommand\irregularcircle[1]{% radius, irregularity
+(0:#1)
\foreach \a in {30,60,...,330}{
let \n1 = {(#1)+rand*(0.2*#1)} in
-- +(\a:\n1)
} -- cycle
}
%from https://tex.stackexchange.com/a/87518/121799
\def\xlist{4}
\def\ylist{4}
\newcommand{\fillrandomly}[7][]{
\pgfmathsetmacro\diameter{#6*2}
\foreach \i in {1,...,#7}{
\pgfmathsetmacro\x{0.5*(#4+#2+(2*rnd-1)*(#4-#2))}
\pgfmathsetmacro\y{0.5*(#5+#3+(2*rnd-1)*(#5-#3))}
\xdef\collision{0}
\foreach \element [count=\i] in \xlist{
\pgfmathtruncatemacro\j{\i-1}
\pgfmathsetmacro\checkdistance{ sqrt( ({\xlist}[\j]-(\x))^2 + ({\ylist}[\j]-(\y))^2 ) }
\ifdim\checkdistance pt<\diameter pt
\xdef\collision{1}
\breakforeach
\fi
}
\ifnum\collision=0
\xdef\xlist{\xlist,\x}
\xdef\ylist{\ylist,\y}
\draw[black!50,ultra thin,rounded corners=.5mm,
top color=brown!20,bottom color=brown!20!gray,
shading angle={(0.5+rand)*20}]
(\x,\y) \irregularcircle{0.21cm};
\fi
}
}
\begin{document}
\thispagestyle{empty}
\begin{tikzpicture}[
media/.style={font={\footnotesize\sffamily}},
wave/.style={
decorate,decoration={snake,post length=1.4mm,amplitude=2mm,
segment length=2mm},thick},
interface/.style={
% The border decoration is a path replacing decorator.
% For the interface style we want to draw the original path.
% The postaction option is therefore used to ensure that the
% border decoration is drawn *after* the original path.
postaction={draw,decorate,decoration={border,angle=-135,
amplitude=0.3cm,segment length=2mm}}
}
]
\draw [draw=none, fill=cyan!10, rounded corners=2mm] (-2,0) rectangle
(10,2);
\begin{scope}
\clip (-2,0) rectangle (10,-2);
\draw[draw=none, fill=brown!10, rounded corners=1mm, opacity=0.5]
(-2,0)rectangle (10,-1);
\fillrandomly{-2+0.21}{-0.21}{10-0.21}{-1+0.21}{0.21}{37}
\draw [interface, thick, black] (-2,0)--(10,0);
\end{scope}
\end{tikzpicture}
\end{document}
