:root {
	--eyes-x: 0;
	--eyes-y: 0;
}
* {
	padding: 0;
	margin: 0;
	box-sizing: content-box;
	font-family: 'Istok Web', sans-serif;
}	
body {
	padding: 20px;
	background: #EEF3F4;
}
.title {
	padding-bottom: 20px;
	text-align: center;	
}
.instruction {
	padding: 20px 0 5px;
}
.egg {
	width: 300px;
	height: 430px;
	margin: 0 auto 50px;
	background: #FFF;
	border-radius: 50% / 60% 60% 40% 40%;
	box-shadow: -5px -35px 125px #444 inset, -5px 15px 40px rgba(68, 68, 68, .8);
	animation: swing 5s infinite;
	transform-origin: center bottom;
}
@keyframes swing {
	0% {
		transform: rotate(6deg);
	}
	50% {
		transform: rotate(-3deg);
	}
	100% {
		transform: rotate(6deg);
	}
}
.yellow {
	background: #ECC30B;
}
.yellow2 {
	background: #FF8800;
}	
.red {
	background: #FF0000;
}
.red2 {
	background: #BA0000;
}
.orange {
	background: #E94F08;
}
.green {
	background: #658D1B;
}
.green2 {
	background: #2A7A03;
}
.green3 {
	background: #076918;
}
.blue {
	background: #49C5E3;
}
.blue2 {
	background: #006BFF;
}
.blue3 {
	background: #001F54;
}
.pink {
	background: #EF2D56;
}
.pink2 {
	background: #A61C3C;
}
.white {
	background: #FFF;
}
.colour-palette {
	margin: 0 10px;
}
.colour {
	width: 20px;
	height: 20px;
	margin: 2px;
	border: 1px solid #444;
	cursor: pointer;
	list-style: none;
}
.colour-palette, 
.decorations,
.decoration {
	display: flex;
}
.decoration {
	margin: 0 10px;
	list-style: none;
	cursor: move;
}
.decorations-drop-area {
	width: 40%;
	height: 50px;
	margin: 0 auto;
	padding-top: 30px;
}
.eye {
	width: 40px;
	height: 45px;
	margin: 2px;	
	background: #FFF;
	border-radius: 50%;
	border: 2px solid #000;	
}
.eye-inner {
	width: 17px;
	height: 22px;
	background: #000;
	border-radius: 50%;	
	transform: translate(calc(var(--eyes-x) * 15px + 2px), calc(var(--eyes-y) * 20px + 2px));
}
.eyes-round .eye {
	height: 40px;
}
.eyes-round .eye-inner {
	height: 17px;
}
.source {
	padding-top: 25px;
	color: #CCC;
	font-size: 14px;
}