html, body { margin: 0; padding: 1px 0; color: #444; font-size: 1em; font-family: sans-serif; background: #ddd; }

.target {
	position: relative;
	width: 100px;
	/*height: 50px;*/
	line-height: 50px;
	margin: 10px 5px;
	text-align: center;
	text-shadow: 1px 1px rgba(255,255,255,.5);
	border: 1px dashed rgba(255,255,255,.8);
	border-radius: 4px;
	background: inherit;
}
.target:after {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	width: 100%;
	height: 100%;
	border: 1px dashed #666;
	border-radius: 4px;
}
.target.movable { margin: 0 auto; cursor: move; }

.wrapper {
	width: 900px;
	margin: 120px auto;
	text-align: center;
}

button { padding: 5px; }

.controls { position: relative; }
.controls .places { position: relative; width: 500px; height: 30px; margin: -20px auto 0; }
.controls .places button { width: 90px; }
.controls .places .top, .controls .places .left, .controls .places .right, .controls .places .bottom { position: absolute; }
.controls .places .top { top: 0; width: 100%; }
.controls .places .bottom { top: 200px; width: 100%; }
.controls .places .left { top: 60px; left: 0; }
.controls .places .right { top: 60px; right: 0; text-align: right; }
.controls .places .vertical button { display: block; }