html,body {
	border:0;
	margin:0;
	padding:0;	
	height:100%;
	overflow:hidden;
}
body {
	background-image:
		radial-gradient(transparent 40%, rgba(0,0,0,0.75)),
		url(orn.svg);
	background-size:
		100% 100%,
		150px 180px;
}
* {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#top,
#bottom {
	display:flex;
	justify-content:space-around;
	width:100%;
	text-align:center;
/*	box-shadow:inset 0 0 0 1px yellow;	*/
}
#top {
}
#bottom {
}

.position {
	height:100%;
	position:relative;
	opacity:1;
	visibility:visible;
	transition:opacity 400ms, visibility 0ms 0ms;
}
.position.transparent {
	opacity:0;
	visibility:hidden;
	transition:opacity 400ms, visibility 0ms 400ms;
}
.position.target::after {
}

.card {
	border-radius:25% 0 25% 0;
	line-height:100px;
	font-size:50px;
	font-weight:bold;
	text-align:center;
	position:absolute;
	cursor:pointer;
	cursor:grab;
	top:0px;
	left:0px;
	transition:left 200ms, top 200ms, box-shadow 200ms;
	box-shadow:
		inset 0 0 0 2px rgba(0,0,0,0.75),
		2px 2px 2px 0 rgba(0,0,0,0.5);
}
.card:not([top='back'])::after {
	position:absolute;
	display:block;
	right:0;
	top:0;
	content:attr(number);
	line-height:133%;
	font-size:35%;
	text-align:center;
	width:18%;
}
.card:not([top='back']):not([top="draw"])::before {
	position:absolute;
	display:block;
	left:0;
	right:0;
	bottom:0;
	top:0;
	content:attr(number);
	text-align:center;
/*	line-height:133%;
	font-size:30%;
	margin-right:1ex;
*/
}
.card[top="back"],
.card[top="draw"] {
	background-color:#004000 !important;
	cursor:default;
	background-image:url(back.svg) !important;
	background-size:cover;
}
.card.empty {
	opacity:0;
}
.card[color="1"] {
	background-color:white;
	background-image:url(color11.svg);
	background-size:cover;
	color:#640000;
}
.card[color="2"] {
	background-color:#640000;
	background-image:url(color22.svg);
	background-size:cover;
	color:white;
}
.card[color="3"] {
	background-color:white;
	background-image:url(color33.svg);
	background-size:cover;
	color:black;
}
.card[color="4"] {
	background-color:black;
	background-image:url(color44.svg);
	background-size:cover;
	color:white;
}
.position > .card {
	margin:10%;
	width:80%;
}
#bottom .card > .card {
	width:100%;
	margin-top:20%;
}
#top .card > .card {
	width:100%;
}
.card.drag {
	z-index:100;
}
.card.dragging {
	transition:box-shadow 200ms;
	z-index:100;
	cursor:grabbing;
	box-shadow:
		inset 0 0 0 2px rgba(0,0,0,0.75),
		20px 20px 2px 0 rgba(0,0,0,0.5);
}
.card.target {
	box-shadow:
		inset 0 0 0 2px rgba(0,0,0,0.75),
		0 0 5px 3px white;
}

#shadow {
	display:none;
	position:absolute;
	border-radius:25% 0 25% 0;
	top:0px;
	left:0px;
	box-shadow:0 0 5px 3px white;
}

#menu {
	display:none;
	position:absolute;
	background-color:#640000 !important;
	cursor:default;
	background-image:url(back.svg) !important;
	background-size:cover;
	box-shadow:
		inset 0 0 0 2px rgba(0,0,0,0.75),
		2px 2px 2px 0 rgba(0,0,0,0.5);
}
#menu.open {
	display:block;
	transition:width 400ms, height 400ms, min-height 400ms;
}