
/* Main container */
.vc-container{
	text-align: center;
	height: 500px;
	margin-bottom: 50px;
	position: relative;
}

/* Tape elements */
.vc-tape-wrapper{
	-webkit-perspective: 800px;	
	-moz-perspective: 800px;
	-o-perspective: 800px;
	-ms-perspective: 800px;
	perspective: 800px;
}
.vc-tape{
	width: 586px;
	height: 379px;
	margin: 30px auto 0;
	position: relative;
	overflow: hidden;
	-webkit-transition: all .4s ease-in-out;	
	-moz-transition: all .4s ease-in-out;
	-o-transition: all .4s ease-in-out;
	-ms-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}
.vc-loader{
	position: absolute;
	width: 31px;
	height: 31px;
	bottom: 50px;
	left: 50%;
	margin: -15px 0 0 -15px;
	background: transparent url(../images/ajax-loader.gif) no-repeat center center;
	display: none;
}
.vc-tape-back{
	width: 100%;
	height: 100%;
	position: relative;
	background: transparent url(../images/cs_back.png) no-repeat center center;
}
.vc-tape-wheel{
	width: 125px;
	height: 125px;
	position: absolute;
	top: 110px;
	background: transparent;
	border-radius: 50%;
}
.vc-tape-wheel-left{
	left: 109px;
	box-shadow: 0 0 0 70px #000;
}
.vc-tape-wheel-right{
	right: 113px;
}
@-webkit-keyframes rotateLeft {
	0% { -webkit-transform: rotate(0deg) translateZ(-1px); }
	100% { -webkit-transform: rotate(-360deg) translateZ(-1px); }
}
@-webkit-keyframes rotateRight {
	0% { -webkit-transform: rotate(0deg) translateZ(-1px); }
	100% { -webkit-transform: rotate(360deg) translateZ(-1px); }
}
@-moz-keyframes rotateLeft {
	0% { -moz-transform: rotate(0deg) translateZ(-1px); }
	100% { -moz-transform: rotate(-360deg) translateZ(-1px); }
}
@-moz-keyframes rotateRight {
	0% { -moz-transform: rotate(0deg) translateZ(-1px); }
	100% { -moz-transform: rotate(360deg) translateZ(-1px); }
}
@-o-keyframes rotateLeft {
	0% { -o-transform: rotate(0deg) translateZ(-1px); }
	100% { -o-transform: rotate(-360deg) translateZ(-1px); }
}
@-o-keyframes rotateRight {
	0% { -o-transform: rotate(0deg) translateZ(-1px); }
	100% { -o-transform: rotate(360deg) translateZ(-1px); }
}
@-ms-keyframes rotateLeft {
	0% { -ms-transform: rotate(0deg) translateZ(-1px); }
	100% { -ms-transform: rotate(-360deg) translateZ(-1px); }
}
@-ms-keyframes rotateRight {
	0% { -ms-transform: rotate(0deg) translateZ(-1px); }
	100% { -ms-transform: rotate(360deg) translateZ(-1px); }
}
@keyframes rotateLeft {
	0% { transform: rotate(0deg) translateZ(-1px); }
	100% { transform: rotate(-360deg) translateZ(-1px); }
}
@keyframes rotateRight {
	0% { transform: rotate(0deg) translateZ(-1px); }
	100% { transform: rotate(360deg) translateZ(-1px); }
}
.vc-tape-wheel div{
	width: 100%;
	height: 100%;
	background: transparent url(../images/cs_wheel.png) no-repeat center center;
}
.vc-tape-front{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../images/cs_front.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.vc-tape-side-b{
	display: none;
	-webkit-transform: rotate3d(0, 1, 0, 180deg);
	-moz-transform: rotate3d(0, 1, 0, 180deg);
	-o-transform: rotate3d(0, 1, 0, 180deg);
	-ms-transform: rotate3d(0, 1, 0, 180deg);
	transform: rotate3d(0, 1, 0, 180deg);
}

.vc-tape-front span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	font-size: 20px;
}

/* Controls list */
ul.vc-controls{
	list-style: none;
	padding: 0;
	width: 440px;
	position: absolute;
	bottom: 18px;
	left: 50%;
	margin: 0 0 0 -170px;
	background: -moz-linear-gradient(top, rgba(170,170,170,0.35) 0%, rgba(255,255,255,0.44) 50%, rgba(255,255,255,0.53) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(170,170,170,0.35)), color-stop(50%,rgba(255,255,255,0.44)), color-stop(100%,rgba(255,255,255,0.53)));
	background: -webkit-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -o-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -ms-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: linear-gradient(to bottom, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#59aaaaaa', endColorstr='#87ffffff',GradientType=0 );
	border: 1px solid rgba(0,0,0,0.1);
	border-bottom-color: rgba(255,255,255,0.6);
	padding: 8px;
	height: 54px;
	box-shadow: 
		inset 0 1px 0px rgba(0,0,0,0.05),
		0 1px 0 rgba(255,255,255,0.8),
		0 -1px 0 rgba(255,255,255,0.4),
		inset 0 2px 19px rgba(0,0,0,0.05),
		0 2px 1px rgba(0,0,0,0.06);
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	border-radius: 12px;
}

/* Controls list items */
ul.vc-controls li {
	display: block;
	float: left;
	width: 80px;
    height: 50px;
	line-height: 55px;
	text-align: left;
    padding: 10px;
	margin: 0;
    cursor: pointer;
    background: #ddd url(../images/metal.jpg) no-repeat center top;
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.2), 
		inset 0 0 1px 2px rgba(255,255,255,0.9),
		inset 0 -6px 5px rgba(0,0,0,0.1),
		0 6px 7px rgba(0,0,0,0.3),
		0 4px 1px rgba(0,0,0,0.5);
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

ul.vc-controls li:first-child{
	border-radius: 8px 0 0 8px;
}

ul.vc-controls li:last-child{
	border-radius: 0px 8px 8px 0px;
}

ul.vc-controls li.vc-control-play{
	width: 120px;
}

/* Control icons */
ul.vc-controls li span:before{
	font-size: 16px;
	line-height: 50px;
	text-align: center;
	float: left;
	color: #444;
	font-family: 'playericons';
	text-shadow:  1px 1px 1px rgba(255,255,255,0.9);
	font-style: normal;
	font-weight: normal;
	text-transform: none;
	speak: none;
	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: 0.2em;
	text-align: center;
}

li.vc-control-pause span:before { content: '\50'; } 
li.vc-control-fforward span:before { content: '\23e9'; } 
li.vc-control-rewind span:before { content: '\23ea'; } 
li.vc-control-stop span:before { content: '\25aa'; } 
li.vc-control-play span:before { content: '\70'; } 
li.vc-control-volume-off span:before { content: 'ðŸ”‡'; } 
li.vc-control-volume-down span:before { content: 'ðŸ”‰'; } 
li.vc-control-volume-up span:before { content: 'ðŸ”Š'; } 

ul.vc-controls li:hover{
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.2), 
		inset 0 0 1px 2px rgba(255,255,255,0.9),
		inset 0 -10px 15px rgba(0,0,0,0.1),
		0 6px 7px rgba(0,0,0,0.3),
		0 4px 1px rgba(0,0,0,0.5);
}

/* Pressed (active) */
ul.vc-controls li.vc-control-active{
	height: 50px;
	margin-top: 2px;
	background-image: url(../images/metal_dark.jpg);
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.18), 
		inset 0 0 1px 2px rgba(255,255,255,0.5),
		inset 0 -6px 5px rgba(0,0,0,0.1),
		0 6px 7px rgba(0,0,0,0.3),
		0 2px 1px rgba(0,0,0,0.5);

}

/* Activated */
ul.vc-controls li.vc-control-pressed,
ul.vc-controls li.vc-control-active.vc-control-pressed{
	height: 50px;
	background-image: url(../images/metal_dark.jpg);
	margin-top: 4px;
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.2), 
		inset 0 0 5px 1px rgba(255,255,255,0.5),
		inset 0 -10px 15px rgba(0,0,0,0.2),
		0 7px 5px rgba(255,255,255,0.5);
}

/* 	
Background for the volume knob 
See knobKnob.css for the knob style
*/
.vc-volume-wrap{
	width: 100px;
	height: 100px;
	position: absolute;
	bottom: 0px;
	left: 50%;
	margin-left: -318px;
	background: -moz-linear-gradient(top, rgba(170,170,170,0.35) 0%, rgba(255,255,255,0.44) 50%, rgba(255,255,255,0.53) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(170,170,170,0.35)), color-stop(50%,rgba(255,255,255,0.44)), color-stop(100%,rgba(255,255,255,0.53)));
	background: -webkit-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -o-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -ms-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: linear-gradient(to bottom, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#59aaaaaa', endColorstr='#87ffffff',GradientType=0 );
	border: 1px solid rgba(0,0,0,0.1);
	border-radius: 50%;
	padding: 8px;
	box-shadow: 
		inset 0 1px 0px rgba(0,0,0,0.05),
		0 1px 0 rgba(255,255,255,0.6),
		0 -1px 0 rgba(255,255,255,0.4),
		inset 0 2px 19px rgba(0,0,0,0.05),
		0 2px 1px rgba(0,0,0,0.06);
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

.vc-volume-wrap:after{
	content: 'Volume';
	margin-top: 10px;
	display: block;
}

/* Text style for controls */
ul.vc-controls li,
.vc-volume-wrap:after{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #666;
	text-shadow: 0 1px 1px rgba(255,255,255,0.8);
}

@media screen and (max-width: 680px) {
	.vc-container {
		width: min(440px, calc(100vw - 20px));
		height: 440px;
		margin: 0 auto;
		overflow: visible;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	.vc-tape {
		width: var(--cassette-width, calc(100vw - 42px));
		height: auto;
		aspect-ratio: 586 / 379;
		margin: 18px auto 0;
		border-radius: calc(12px * var(--radio-scale, .65));
		overflow: hidden;
	}

	.vc-tape-back, .vc-tape-front { background-size: 100% 100%; }
	.vc-tape-back { overflow: hidden; }

	.vc-tape-wheel {
		width: 21.331%;
		height: auto;
		aspect-ratio: 1;
		top: 29.024%;
	}
	.vc-tape-wheel-left { left: 18.601%; }
	.vc-tape-wheel-right { right: 19.283%; }
	.vc-tape-wheel div { background-size: 100% 100%; background-position: center center; }

	.vc-tape-front span {
		top: 21.900%;
		left: 11.433%;
		font-size: calc(20px * var(--radio-scale, .65));
	}

	ul.vc-controls {
		width: calc(100% - 12px);
		max-width: calc(100vw - 28px);
		height: 58px;
		left: 50%;
		transform: translateX(-50%);
		bottom: 4px;
		margin: 0;
		display: flex !important;
		flex-wrap: nowrap;
		justify-content: center;
		gap: 4px;
		padding: 6px;
		border-radius: 12px;
		box-sizing: border-box;
	}

	ul.vc-controls li, ul.vc-controls li.vc-control-play {
		box-sizing: border-box;
		flex: 1 1 0;
		width: auto;
		min-width: 0;
		height: 44px;
		padding: 4px 2px;
		line-height: 44px;
		border-radius: 8px;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 9px;
		letter-spacing: 0;
		text-align: center;
		overflow: hidden;
	}
	ul.vc-controls li span:before { float: none; margin: 0 2px 0 0; }

	.vc-volume-wrap {
		transform: scale(var(--radio-scale, .65));
		transform-origin: top right;
		top: var(--volume-top, 274px);
		bottom: auto;
		left: auto;
		right: 14px;
		margin-left: 0;
	}
	.vc-volume-wrap:after {
		font-family: Arial, Helvetica, sans-serif;
		font-size: 11px;
		color: #555;
	}
}

@media screen and (max-width: 360px) {
	.vc-container { height: 418px; }
	ul.vc-controls li, ul.vc-controls li.vc-control-play { font-size: 8px; }
}
