/*=== Custom scroll CSS ===*/
.scroll-wrap {
	display: block;
	position: relative;
	overflow: hidden;
	max-height: none;

	.scroll-inner {
		overflow: hidden;
	}
}
.customscroll-scrollbar {
	.box-sizing;
	.opacity(0);
	
	position: absolute;
	z-index: 10;
	visibility: hidden;
	
	.csstransitions & {
		.transition(~"opacity 300ms linear, visibility 0ms linear 300ms");
	}
	
	div {
		background: #474c50;
		border-radius: 7px;
		height: 100%;
	}
}
.customscroll-scrollbar-shown {
	.opacity(0.3);
	visibility: visible;
	
	.csstransitions & {
		.transition(~"opacity 300ms linear, visibility 0ms linear 0ms");
	}
	
	&:hover {
		.opacity(0.6);
	}
}

.customscroll-scrollbar-horizontal {
	height: 16px;
	margin-left: 2px;
	bottom: 2px;
	left: 0;
	
	div {
		height: 4px;
		margin: 10px 0px 2px 0px;
	}
}
.customscroll-scrollbar-vertical {
	width: 10px;
	margin-top: 2px;
	right: 2px;
	top: 0;
	padding: 6px 0px;
	
	html.rtl & {
		right: auto;
		left: 2px;
	}
	
	div {
		width: 4px;
		margin: 0px 2px 0px 6px;
		
		html.rtl & {
			margin-left: 2px;
			margin-right: 6px;
		}
	}
}
.scroll-inner {
	.box-sizing(content-box);
	
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	height: 100%;
	width: auto !important;
	max-height: inherit;
	position: relative;
	top: 0px;
	display: block;
}

/*=== END Custom scroll CSS ===*/
/*=== Custom checkbox/radio CSS ===*/
.custom_radio,
.custom_checkbox {
	display: inline-block;
	vertical-align: text-bottom;
	overflow: hidden;
	width: 14px;
	height: 15px;
	margin-right: 4px;
	
	.toolbar & {
		vertical-align: middle !important;
	}
	
	html.rtl & {
		margin-right: 0px;
		margin-left: 4px;
	}
	
	&.disabled,
	&.disabled {
		cursor: default;
	}
	
	input {
		.opacity(0);

		float: left;
		margin-left: -30px;
		margin-top: -30px;
	}

	.icon {
		display: inline-block;
		vertical-align: top;
		border: 1px solid #b4b5b6;
		border-radius: 2px;
		width: 12px !important;
		height: 12px !important;
		background: url('images/sprites.png?%VERSION%') no-repeat -1px -241px !important;
		
		.toolbar & {
			vertical-align: top !important;
		}
		
		.spritesX2();
	}
}

.custom_checkbox {
	
	&.checked .icon {
		background-position: -21px -241px !important;
		
		&.incomplete .icon {
			background-position: -21px -261px !important;
		}
		
		&.disabled .icon {
			background-position: -21px -261px !important;
		}
	}
	&.disabled .icon {
		background-position: -1px -261px !important;
	}
}

.custom_radio {
	
	.icon {
		border-radius: 50%;
		background-position: -41px -241px !important;
	}
	
	&.checked .icon {
		background-position: -61px -241px !important;
		
		&.incomplete .icon {
			background-position: -61px -261px !important;
		}
		&.disabled .icon {
			background-position: -61px -261px !important;
		}
	}
	
	&.disabled .icon {
		background-position: -41px -261px !important;
	}
}

.custom_switcher {
	display: inline-block;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 3px;
	font-size: 0px;
	
	.text {
		display: inline-block !important;
		padding: 5px 5px;
		font-size: 9pt;
		border-right: 1px solid #ccc;
	}
	
	label {
		
		&.checked {
			background: #6FA8DE;
			display: inline-block;
			color: #fff;
		}
		
		&:first-child .text {
			padding-left: 7px;

			html.rtl & {
				padding-right: 7px;
				border: 0px;
			}
		}
		
		&:last-child .text{
			padding-right: 7px;
			border: 0px;

			html.rtl & {
				padding-right: 5px;
				border-right: 1px solid #ccc;
			}
		}
	}
	
	input {
		display: none;
	}
}
/*=== END Custom checkbox/radio CSS ===*/
/*=== Dropdown CSS ===*/
.dropdown {
	.transition(opacity 300ms linear);
	.opacity(0);
	
	overflow: hidden;
	display: block;
	position: absolute;
	z-index: 1000;
	bottom: 0px;
	left: -10000px;
	cursor: default;
	font-size: 9pt;
    width: 100%;
	visibility: hidden;
	color: #626262;

	/*TODO need js
	el.filters[0].Apply();
		el1.style.visibility="hidden"; -> el1.style.visibility="visible";
    el.filters[0].Play();
	filter:progid:DXImageTransform.Microsoft.Fade(duration=5);*/
	
	.expand & {
		.opacity(1);

		left: 0px;
		visibility: visible;
		overflow: visible;
		
		html.rtl & {
			left: auto;
			right: 0px;
		}
	}
	
	.dropdown_helper {
		position: absolute;
	}
	
	.dropdown_content {
		overflow-x: hidden;
		overflow-y: auto;
		max-height: 300px;
		min-width: 100px;
		display: block;

		background: #FFFFFF;
		border: 1px solid #CBC8C0;
		border-radius: 4px 4px 4px 4px;
		box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.15);
		
		&.scroll-wrap {
			overflow: hidden;
			
			.customscroll-scrollbar-vertical {
				right: 2px !important;
			}
		}
		
		.item {
			display: block;
			padding: 8px 12px;
			margin: 0px;
			white-space: nowrap;
			cursor: pointer;
			border: 0px;
			box-shadow: none;
			border-radius: 0px;
			background: none;
			height: auto;
			
			&:hover {
				background: #f7f7f7;
			}
			
			&.disabled {
				color: #aaa;
				cursor: default;
				
				&:hover {
					background: none;
				}
			}
			
			&.selected {
				color: #333;
				background: #f0f0f0;
			}
		}
	}
	
	.dropdown_arrow {
		font-size: 0;
		display: block;
		width: 0px;
		height: 0px;
		margin: 0px 0px 0px 10px;
		position: relative;
		z-index: 1;
		border-bottom: 6px solid #CBC8C0;
		border-left: 6px solid transparent;
		border-right: 6px solid transparent;
		border-left-color: rgba(224, 224, 224, 0);
		border-right-color: rgba(224, 224, 224, 0);
		
		html.rtl & {
			margin: 0px 10px 0px 0px;
		}
		
		span {
			display: block;
			width: 0px;
			height: 0px;
			margin-left: -5px;
			position: relative;
			top: 2px;
			border-bottom: 5px solid #fff;
			border-left: 5px solid transparent;
			border-right: 5px solid transparent;
			border-left-color: rgba(224, 224, 224, 0);
			border-right-color: rgba(224, 224, 224, 0);
			
			html.rtl & {
				margin-left: 0px;
				margin-right: -5px;
			}
		}
	}
}
/*=== END Dropdown CSS ===*/

.dropdown .folders {
	
	.item,
	.item:hover {
		background: none;
		padding: 0px;
	}
	
	.folder {
		display: block;
		cursor: pointer;
		padding: 8px 12px 8px 0px;
		
		&:hover {
			background: #f7f7f7;
		}
		
		.title {
			padding-top: 6px;
			padding-bottom: 6px;
			padding-right: 12px;
			font-weight: normal;
			cursor: inherit;
		}
		
		&.disabled,
		&.unselectable {
			background: none;
			cursor: default;
			
			.title {
				color: #aaa;
			}
		}
	}
} 
/*=== Custom select CSS ===*/
.custom_select {
	position: relative;
	display: inline-block;
	
	.dropdown {
		z-index:500;
		position: absolute;
		min-width: 100%;
		left: -10000px;
		bottom: 0px;
		visibility: hidden;
		
		.arrow {
			font-size: 0;
			display: block;
			width: 0px;
			height: 0px;
			margin: 0px 0px -1px 10px;
			position: relative;
			border-bottom: 6px solid #CBC8C0;
			border-left: 6px solid transparent;
			border-right: 6px solid transparent;
			border-left-color: rgba(224, 224, 224, 0);
			border-right-color: rgba(224, 224, 224, 0);
			
			span {
				display: block;
				width: 0px;
				height: 0px;
				margin-left: -6px;
				position: relative;
				top: 2px;
				border-bottom: 6px solid #fff;
				border-left: 6px solid transparent;
				border-right: 6px solid transparent;
				border-left-color: rgba(224, 224, 224, 0);
				border-right-color: rgba(224, 224, 224, 0);
			}
		}
	}
	
	&.right .dropdown .arrow {
		float: right;
		margin: 0px 10px -1px 0px;
	}
	
	&.expand .dropdown {
		left: 0px;
		visibility: visible;
	}
	
	.dropdown_helper {
		position: absolute;
		left: 0px;
		top: 0px;
	}
	
	&.right .dropdown_helper {
		left: auto;
		right: 0px;
	}
	
	.dropdown_content {
		background: #FFFFFF;
		border: 1px solid #CBC8C0;
		border-radius: 4px 4px 4px 4px;
		display: inline-block;
		max-height: 200px;
		overflow-y: auto;
		padding: 10px;
		text-align: left;
		box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.15);
		
		html.rtl & {
			text-align: right;
		}
	}
	
	.item:last-child  {
		border-bottom: 0px;
	}
}

.languages {
	
	.custom_select {
		
		.dropdown_content {
			padding: 0px;
		}
		
		&.right .dropdown_arrow {
			margin-right: 23px;
			float: right;
		}
		
		.item  {
			display: block;
			white-space: nowrap;
			padding: 8px 12px;
			border-bottom: 1px solid #CBC8C0;
			cursor: pointer;
			color: #4d4d4d;
			
			&.selected  {
				background: #f0f0f0;
			}
			
			&:hover  {
				background: #fafafa;
			}
		}
		
		.control  {
			cursor: pointer;

			html.rtl & {
				float: left;
			}
			
			.icon {
				width: 10px;
				background: url("images/sprites.png?%VERSION%") no-repeat -320px -44px;
			}
		}
		
		&.expand .control .icon {
			background-position: -340px -44px;
		}
	}
	
	.icon {
		display: inline-block;
		vertical-align: middle;
		width: 16px;
		height: 11px;
		margin-right: 4px;
		background: url("images/sprites.png?%VERSION%") no-repeat 40px -400px;
		
		.spritesX2();
	}
	
	.name .text {
		display: none;
	}
}


.login_panel {
	
	.languages.demo {
		position: static;
		clear: both;
		background: #D7DCDF;
		border-radius: 4px;
		border: 1px solid #C7CCCF;
		text-align: left;
		padding: 10px 14px;
		margin-top: 20px;
		width: 540px;
		margin-left: -165px;
	}
	
	.languages.demo .title {
		font-size: 12pt;
		color: #464646;
		margin-bottom: 10px;
		text-align: center;
	}
	
	.languages.demo .item {
		display: inline-block;
		width: 49%;
		width: 24%;
		color: #555555;
	}
	
	.languages.demo .item_content {
		display: inline-block;
		padding: 3px 6px;
		cursor: pointer;
		border-radius: 3px;
	}
	
	.languages.demo .item_content:hover {
		background-color: #B3BAC2;
		color: #333333;
	}
	
	.languages.demo .selected .item_content {
		background: #6C859B;
		color: #fff;
	}
	
	.languages.demo .item .text  {
		display: inline-block;
		vertical-align: middle;
	}
}
.languages .English .icon { background-position: 0px -480px; }
.languages .Arabic .icon { background-position: -80px -520px; }
.languages .Bulgarian .icon { background-position: -40px -480px; }
.languages .Chinese-Simplified .icon { background-position: -80px -480px; }
.languages .Chinese-Traditional .icon { background-position: -80px -480px; }
.languages .Czech .icon { background-position: -120px -480px; }
.languages .Danish .icon { background-position: -160px -480px; }
.languages .Dutch .icon { background-position: -640px -480px; }
.languages .Estonian .icon { background-position: -200px -480px; }
.languages .Finnish .icon { background-position: -240px -480px; }
.languages .French .icon { background-position: -280px -480px; }
.languages .German .icon { background-position: -320px -480px; }
.languages .Greek .icon { background-position: -360px -480px; }
.languages .Hebrew .icon { background-position: -440px -480px; }
.languages .Hungarian .icon { background-position: -400px -480px; }
.languages .Italian .icon { background-position: -480px -480px; }
.languages .Japanese .icon { background-position: -520px -480px; }
.languages .Korean .icon { background-position: -120px -520px; }
.languages .Latvian .icon { background-position: -560px -480px; }
.languages .Lithuanian .icon { background-position: -600px -480px; }
.languages .Norwegian .icon { background-position: -680px -480px; }
.languages .Persian .icon { background-position: -360px -520px; }
.languages .Polish .icon { background-position: -720px -480px; }
.languages .Portuguese-Brazil .icon { background-position: -760px -480px; }
.languages .Romanian .icon { background-position: 0px -520px; }
.languages .Russian .icon { background-position: -40px -520px; }
.languages .Spanish .icon { background-position: -160px -520px; }
.languages .Swedish .icon { background-position: -200px -520px; }
.languages .Thai .icon { background-position: -240px -520px; }
.languages .Turkish .icon { background-position: -280px -520px; }
.languages .Ukrainian .icon { background-position: -320px -520px; }
.languages .Serbian .icon { background-position: -400px -520px; }
.languages .Portuguese-Portuguese .icon { background-position: -800px -480px; }
/*=== END Custom select CSS ===*/

/*=== Pagination CSS ===*/
.pagination {
	text-align: right;
	cursor: default;
	display: block;
	
	html.rtl & {
		text-align: left;
	}
	
	.item {
		font-size: 11pt;
		display: inline-block;
		vertical-align: middle;
		cursor: pointer;
		color: #aaa;
		width: 14px;
		height: 16px;
		background-image: url("images/sprites.png?%VERSION%");
		background-repeat: no-repeat;
		
		.spritesX2();
		
		&.current {
			cursor: default;
			color: #000;
		}
		
		&.first {
			background-position: -360px -160px;
			
			html.rtl & {
				background-position: -400px -160px;
			}
		}
		
		&.prev {
			background-position: -480px -160px;
			
			html.rtl & {
				background-position: -440px -160px;
			}
		}
		
		&.next {
			background-position: -440px -160px;
			
			html.rtl & {
				background-position: -480px -160px;
			}
		}

		&.last {
			background-position: -400px -160px;
			
			html.rtl & {
				background-position: -360px -160px;
			}
		}
	}
	
	.pages .item {
		padding: 0px 2px;
		width: auto;
		height: auto;
		background: none;
	}
}
/*=== END Pagination CSS ===*/
/*=== Buttons CSS ===*/
.buttons {
	.primaryButton() {
		background: #6FA8DE;
		border: 1px solid #5D97CD;
	}

	.secondaryButton() {
		background: #E3B856;
		border: 1px solid #BFAF46;
	}

	.stateButton() {
		background: #FFFFFF;
		border: 1px solid #6FA8DE;
		color: #4F88BE;
	}
	
    margin-top: 15px;
    text-align: right;
	
	html.rtl & {
		text-align: left;
	}
	
	.button {
		display: inline-block;
		font: bold 10pt Helvetica,Tahoma,Arial,sans-serif;
		padding: 3px 7px;
		cursor: pointer;

		border-radius: 4px 4px 4px 4px;
		color: #FFFFFF;
		text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
		
		.primaryButton();
		
		&.secondary {
			.secondaryButton();
		}
		
		&.state {
			text-shadow: none;
			cursor: default;
			
			.stateButton();
		}
	}
	
	.theme-buttons();
}
/*=== END Buttons CSS ===*/
/*=== Input CSS ===*/
.input {
	border: 1px solid #ccc;
	background: #fff;
	box-shadow: 0px 4px 3px -3px #E5E5E5 inset;
	
	&.focus,
	&:focus {
		box-shadow: 0px 4px 3px -3px #E5E5E5 inset, 0 0 2px 0 #1D67CD;
		border: 1px solid #fff;
	}
}
/*=== END Input CSS ===*/