:root {
	--rotate: 0.7;
	--start-size-h: 5em;
	--start-size-w: calc(var(--start-size-h) * var(--rotate));
	--small-size-h: calc(var(--start-size-h) * 1.2);
	--small-size-w: calc(var(--small-size-h) * var(--rotate));
	--medium-size-h: calc(var(--small-size-h) * 1.2);
	--medium-size-w: calc(var(--medium-size-h) * var(--rotate));
	--big-size-h: calc(var(--medium-size-h) * 1.2);
	--big-size-w: calc(var(--big-size-h) * var(--rotate));
	--end-size-h: calc(var(--big-size-h) * 1.2);
	--end-size-w: calc(var(--end-size-h) * var(--rotate));
	--tube-width: calc(var(--small-size-h) * 1.2);
}

main,
#small-ring,
#start {
	display: flex;
	align-items: center;
	justify-content: center;
}

main {
	background-color: #95c6ec;
	font-family: Arial;
	min-height: 30em;
	min-width: 20em;
	flex-direction: column;
	padding-top: 5em
}

#spyglass-wrap {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	transform: rotate(70deg);
}

#start {
	width: var(--start-size-w);
	height: var(--start-size-h);
	background-color: white
}

#start,
#small-tube::before,
#small-ring,
#medium-tube::before,
#medium-ring,
#big-tube::before,
#big-ring {
	border-radius: 50%;
}

#small-tube,
#medium-tube,
#big-tube {
	background-color: goldenrod;
	position: relative
}

#small-tube,
#medium-tube,
#big-tube {
	width: var(--tube-width)
}

#small-ring,
#medium-ring,
#big-ring,
#end,
#end::before,
#end::after {
	position: absolute;
	background-color: sienna;
}

#small-tube::before,
#medium-tube::before,
#big-tube::before,
#end::before,
#end::after {
	content: "";
	position: absolute;
	display: block;
}

#small-tube::before,
#medium-tube::before,
#big-tube::before {
	background-color: goldenrod
}

#small-tube,
#small-tube::before,
#small-ring {
	height: var(--small-size-h);
}

#small-tube::before,
#small-ring {
	width: var(--small-size-w);
}

#small-tube::before {
	left: calc(var(--small-size-w) / -2)
}

#small-ring {
	right: calc(var(--small-size-w) / -2)
}

#medium-tube,
#medium-tube::before,
#medium-ring {
	height: var(--medium-size-h)
}

#medium-tube::before,
#medium-ring {
	width: var(--medium-size-w);
}

#medium-tube::before {
	left: calc(var(--medium-size-w) / -2)
}

#medium-ring {
	right: calc(var(--medium-size-w) / -2)
}

#big-tube,
#big-tube::before,
#big-ring {
	height: var(--big-size-h)
}

#big-tube::before,
#big-ring {
	width: var(--big-size-w);
}

#big-ring {
	right: calc(var(--big-size-w) / -2)
}

#big-tube::before {
	left: calc(var(--big-size-w) / -2)
}

#end {
	--width: calc(var(--end-size-w) / 2);
	width: var(--width);
	height: var(--end-size-h);
	top: calc((var(--big-size-h) - var(--end-size-h)) / 2);
	z-index: -1;
	position: absolute;
	left: calc(var(--width) / -1.5);
}

#end::before {
	width: var(--end-size-w);
	height: var(--end-size-h);
	border-radius: 50%;
	left: calc(var(--end-size-w) / -2);
}

#end::after {
	width: var(--end-size-w);
	height: var(--end-size-h);
	border-radius: 50%;
	right: calc(var(--end-size-w) / -2);
}

#error-number {
	color: white;
    text-shadow: 2px 2px 2px blue, -2px 2px 2px green, 2px -2px 2px orange, -2px -2px 2px red;
	transform: rotate(-70deg) rotateX(45deg) rotateY(-20deg);
	font-size: 2.5em
}

#error-text {
	z-index: 5;
	font-size: 1.2em;
	text-align: center;
	font-weight: bold;
	text-shadow: 1px 1px white, 1px -1px white, -1px 1px white, -1px -1px white;
    color: darkred;
}