/*=== Calendar CSS ===*/
.CalendarLayout {
	position: relative;
}

/*=== Calendar manager CSS ===*/
.panel.calendar_manager {
	width: 20%;
	
	.middle_bar {
		.resize_compensation_bottom(200px);
	}
	
	.panel_top {
		.box-sizing;

		padding: 10px 17px 10px 16px;
		background: none;
		border: 0px;
		height: 40px;
	}
	
	.panel_center {
		position: relative;
	}
	
	.dropdowns {	
	.box-sizing;

		position: absolute;
		width: 100%;
		color: #fff;
		padding-right: 50px;
		
		html.rtl & {
			padding-left: 50px;
			padding-right: 0px;
		}
	
		.separator {
			background: #000;
			display: block;
			height: 1px;
			margin: 8px 17px;
			opacity: 0.1;
		}
		
		.dropdown {
			z-index: 99;
			
			.dropdown_helper {
				min-width: inherit;
			}
			
			.dropdown_content {
				border: 0px;
				border-radius: 0px 0px 4px 0px;
				
				html.rtl & {
					border-radius: 0px 0px 0px 4px;
				}
			}
			
			.dropdown_arrow {
				display: none;
			}
			
			.item {
				// do this styles realy need?
				//position: relative;
				//width: 100%;
				color: #fff;
				
				&:hover {
					.transparent_color_helper(#000000, 0.1);
				}
			}
		}
		
		.colors {
			padding: 8px 17px 16px;
			display: block;
			white-space: normal;
			font-size: 0;
			line-height: 100%;
			
			.item {
				display: inline-block;
				float: none;
				padding: 0px;
				width: 13px;
				height: 13px;
				margin: 0px 6px 6px 0px;
				border: 1px solid rgba(0, 0, 0, 0.2);
				
				html.rtl & {
					margin: 0px 0px 6px 6px;
				}
				
				&.color_pick.selected {
					background-image: url("images/sprites.png?%VERSION%");
					background-position: -279px -240px;
				}
			}
		}
	}
	
	.calendars {
		height: auto;
		
		.item {
			padding: 7px 17px 6px 16px;
			color: #fff;
			margin-bottom: 4px;
			max-height: 500px;
			overflow: visible;
			cursor: pointer;
			
			&.readonly {
				border: 1px dashed #ffffff;
				opacity: 0.7;
			}
			
			.custom_checkbox {
				float: left;
				margin-top: 1px;
				margin-right: 8px;
				
				.icon {
					border: 1px solid rgba(41, 44, 47, 0.35);
					box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);
				}
			}
			
			.title {
				overflow: hidden;
				margin: 0px;
				font-weight: bold;
				font-size: 10pt;
			}
			&.inactive .title {
				.opacity(0.5);
			}
			
			.icon.public {
				display: inline-block;
				width: 16px;
				height: 16px;
				float: right;
				margin-left: 6px;
				background: url("images/sprites.png?%VERSION%") no-repeat -720px -240px;
			}
			
			.control {
				float: right;
				display: inline-block;
				height: 16px;
				width: 16px;
				margin-left: 4px;
				cursor: pointer;
				background: url("images/sprites.png?%VERSION%") no-repeat -160px -240px;
				
				&:hover {
					background-position: -160px -260px;
				}
			}
		}
		
		.section_title .control {
			width: 16px;
			height: 16px;
			background: url("images/sprites.png?%VERSION%") no-repeat -320px -240px;
			cursor: pointer;
		}
	}
	
	.panel_bottom {
		border: 0px;
		background: #E3E1D9;
		border-radius: 0px;
		padding: 0px;
		height: 200px;
		width: 100%;
		float: left;
		
		.ui-widget-content {
			.box-sizing;

			background: transparent;
			border: 0 none;
			border-radius: 0;
			padding: 10px 16px;
			width: 100%;
			max-width: 360px;
			margin: 0px auto;
			
		}

		.ui-datepicker .ui-widget-header {
			background: 0px;
			border: 0 none;
			border-radius: 0;
		}
		
		.ui-datepicker .ui-state-default,
		.ui-datepicker .ui-widget-content .ui-state-default,
		.ui-datepicker .ui-widget-header .ui-state-default {
			background: 0px;
			border: 0 none;
		}
		
		.theme-small-calendar();
	}
}
/*=== END Calendar manager CSS ===*/

/*=== Calendar CSS ===*/
.panel.calendar {
	width: 80%;
	position: relative;
	
	.panel_content {
		margin-right: 0px;
	}
	
	.customscroll-scrollbar-vertical {
		margin-right: 2px;
	}

	.middle_bar.view_month {
		.resize_compensation_top(42px);
	}
	
	.toolbar .item {
		
		&.current {
			text-align: center;
		}
		
		.text {
			display: inline-block;
		}
		
		.helper {
			height: 0px;
			overflow: hidden;
			display: block;
			
			.text {
				margin-right: 6ex;
			}
			
			&.week .text {
				margin-right: 18ex;
			}
			
			&.day .text {
				margin-right: 10ex;
			}
		}
	}
	
	.date_select .item {
		
		.control {
			background: url("images/sprites.png?%VERSION%") no-repeat -440px -240px;
			display: inline-block;
			vertical-align: middle;
			width: 16px;
			height: 16px;
		}
		
		&.prev .control {
			background-position: -360px -240px;
			
			html.rtl & {
				background-position: -400px -240px;
			}
		}
		
		&.next .control {
			background-position: -400px -240px;
			
			html.rtl & {
				background-position: -360px -240px;
			}
		}
	}
	
	
	.panel_top {
		padding: 0px !important;
		
		.weekday-header {
			background-color: #F0F0F0;
			font-size: 0px;
			
			.weekday-header-item {
				border-left: 1px solid #ddd;
				color: #828282;
				font-weight: bold;
				font-size: 9pt;
				padding: 14px 0 12px;
				text-align: center;
				display: inline-block;
				width: 14.18%;
				
				&:last-child {
					width: 13%;
				}
			}
		}
	}
}



td.day_with_events a {
	font-weight: bold !important;
}
table.highlight_week tr.current_week {
	background-color: #d3d1ca;
}
table.highlight_day td.ui-datepicker-current-day {
	background-color: #d3d1ca;
}
td.ui-datepicker-today {
	background-color: #fff4cf !important;
}
table.ui-datepicker-calendar td a {
	text-align: center;
}

.colors .color_pick, .calendar_colors option {
	float: left;
	width: 12px;
	height: 12px;
	margin: 2px;
	border: solid 1px #bababa;
}
.colors .color_pick.selected {
	background-image: url("images/sprites.png?%VERSION%");
	background-position: -280px -240px;
}
.calendar .toolbar .item.selected {
	background-color: #e3e3e3;
}
.fc-event-vert .fc-event-bg {/* to avoid change the color of events in the weekly mode */
	width: 0;
	height: 0;
}

.fc-event-readonly {
	border-width: 1px !important;
	border-style: dashed !important;
	border-color: #fff !important;
	opacity: 0.7;
}

.fc-agenda-slots td div {
    height: 30px;
}
.fc-agenda .fc-agenda-axis {
	background: #fff;
	color: #626262;
	text-align: center;
}
.fc-event-inner {
	.box-sizing;
	
	padding: 6px 10px;
	overflow: hidden;
}
.fc-event-inner .fc-event-time {
	font-size: 9pt;
	overflow: hidden;
	display: block;
}
.fc-event-inner .fc-event-title {
	overflow: hidden;
	font-size: 9pt;
	display: block;
}
.fc-first .fc-widget-header {
	background: #f0f0f0;
	padding: 14px 0px 12px !important;
	color: #828282;
	border-top-width: 0 !important;
}
.fc div.fc-content {
	border-radius: 0px;
}

.fc-grid .fc-day-number {
	padding: 8px 8px 0px;
	color: #626262;
}
.fc-grid .fc-other-month .fc-day-number {
	color: #b6b6b6;
	opacity: 1;
}
.fc-agenda .fc-event {
	/*border: 1px solid #fff !important;*/
	border: 0px;
	box-shadow: inset 0px 0px 1px #7A7A7A;
}
.fc-event-vert.fc-event-end {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}
.fc-event-vert.fc-event-start {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

fc-view-month .fc-day-content div,
.fc-agenda-slots .fc-day-content div {
	height: auto !important;
}

.more-events-link {
	z-index: 100;
	position: absolute;
}
.more-events-list {
	z-index: 100;
	position: absolute;
	background-color: white;
	border: solid 1px grey;
	border-radius: 4px;
}
.more-events-item {
	margin: 4px;
	border: solid 1px;
	border-radius: 3px;
	color: white;
	cursor: pointer;
}
.more-events-item {
	width: auto;
	max-width: 200px;
}
/*.calendar .fc,
.calendar .fc .fc-content,
.calendar .fc .fc-content .fc-view-month {
	height: 100%;
}*/
/*.calendar .fc .fc-content .fc-view-month {
    overflow-x: hidden;
    overflow-y: auto;
}*/
.calendar .fc-view-month .fc-day-header {
	padding: 0px !important;
	font-size: 0px;
	visibility: hidden;
	border-bottom: 0px;
}
.calendar .fc-view-agendaWeek .scroll-inner,
.calendar .fc-view-agendaDay .scroll-inner {
	position: relative !important;
}


/*=== Calendar Popups CSS ===*/
.popup.calendar_popup {
	
	.mask {
		background: #fff;
	}
	&.visible .mask {
		opacity: 0.5;
		
		&.clear {
			opacity: 0;
			z-index: 1;
		}
	}
	
	.popup_panel {
		box-shadow: 0px 0px 11px #bbb;
		min-width: 440px;
		max-width: 440px;
	}
	
	.title {
		padding: 9px 20px 0px;
		width: 100%;
		height: 27px;
		border-radius: 4px 4px 0px 0px;
		color: #fff;
		margin: -20px 0px 16px -20px;
		
		html.rtl & {
			margin: -20px -20px 16px 0px;
		}
	}
	
	.close {
		display: inline-block;
		height: 12px;
		margin: -7px -7px 0px 0px;
		width: 12px;
		background: url("images/sprites.png?%VERSION%") no-repeat -200px -240px;
	}
	
	.buttons {
		margin: 16px 0px 0px;
		padding-top: 20px;
		border-top: 1px solid #e2e2e2;
		
		.button {
			float: left;
			margin-right: 6px;
			
			html.rtl & {
				float: right;
				margin-right: 0px;
				margin-left: 6px;
			}
		}
		
		.colors {
			display: inline-block;
			margin-top: 4px;
			
			.item {
				display: inline-block;
			}
		}
	}
}


.popup.calendar_create,
.popup.calendar_event {
	
	.input {
		box-shadow: none;
		border-color: #fff;
		
		&:hover,
		&:focus {
			border-color: #ccc;
		}
	}
	
	.row.name {
		.placeholder,
		.input {
			font-size: 15pt;
			font-weight: bold;
		}
		
		.placeholder {
			position: relative;
			z-index: 1;
			left: 3px;
			top: 5px;
		}
	}
	
	.row.description,
	.row.location,
	.row.add_attender {
		.placeholder,
		.input {
			font-size: 10pt;
		}
		
		.placeholder {
			left: 3px;
			top: 5px;
			
			html.rtl & {
				left: auto;
				right: 3px;
			}
		}
	}
}


.popup.calendar_getlink {
	
	.dav_access,
	.web_access {
		margin-bottom: 16px;
	}
	
	.dav_access {
		padding-bottom: 14px;
		border-bottom: 1px solid #e2e2e2;
		
		.download {
			display: inline-block;
			width: 18px;
			height: 18px;
			float: right;
		/*	margin: 2px -28px 0px 0px;*/
			background: url("images/sprites.png?%VERSION%") no-repeat -240px -120px;
		}
	}
	
	.web_access {
		
		.row.web_access_switch {
			text-align: center;
			margin-bottom: 10px;
		}
		label {
			vertical-align: middle;
		}
	}
}

.popup.calendar_share {
	
	.input {
		margin-right: 7px;
		
		html.rtl & {
			margin-right: 0px;
			margin-left: 7px;
		}
	}
	
	.checkbox {
		float: left;
		margin-top: 1px;
		margin-right: 8px;

		.icon {
			border: 1px solid rgba(41, 44, 47, 0.35);
			box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);
		}
	}	
	
	.shares_list {
		max-height: 200px;
	}
	
	.share_item {
		margin-bottom: 10px;

		.control {
			display: inline-block;
			margin: 3px 10px 0px 0px;
			float: right;
			width: 20px;
			height: 20px;
			cursor: pointer;
			background: url("images/sprites.png?%VERSION%") no-repeat -160px -120px;

			html.rtl & {
				float: left;
				margin: 3px 0px 0px 10px;
			}

			&.disabled {
				background-position: -160px -140px;
			}

			&.remove {
				background-position: -200px -120px;
				margin-top: 4px;
			}
		}
	}
	
	.row {
		display: inline-block;
	}
	
	.input {
		width: 180px;
	}
	
	select.input {
		width: 200px;
	}
	
	.label {
		width: 200px;
	}
	
	.placeholder {
		font-size: 11pt;
		top: 4px;
	}
	
	.text {
		display: inline-block;
		border-radius: 0px;
		border: 0px;
		box-shadow: none;
		margin-right: 20px;
		
		html.rtl & {
			margin-right: 0px;
			margin-left: 20px;
		}
	}
}

.popup.calendar_event .recivedAnim,
.popup.calendar_share .recivedAnim {
	.animation(highlight 0.5s linear);
}

.popup.calendar_event {
	
	.title {
		display: inline-block;
		border-radius: 2px;
		width: auto;
		float: right;
		margin: -22px 28px 0px 0px;
		max-width: 120px;
		
		html.rtl & {
			float: left;
			margin: -22px 0px 0px 28px;
		}
		
		&.calendar_selector {
			cursor: pointer;
			position: relative;
			
			.item {
				color: #fff;
				
				&:hover {
					box-shadow: inset 0px 0px 0px 30px rgba(255,255,255, 0.1);
				}
			}
		}
		
		.current {
			display: block;
			white-space: nowrap;
			padding-right: 10px;
		}
	}
		
	.close {
		background-position: -240px -240px;
	}
		
	.buttons {
		text-align: left;

		html.rtl & {
			text-align: right;
		}

		.button {
			float: none;
		}
	}
	
	.toolbar {
		background: none;
		filter: none;
		border: 0px;
		padding: 0px;
		margin: 0px;
		float: right;
		
		html.rtl & {
			float: left;
		}
		
		.content {
			padding: 0px;
			
			.item {
				border: 0px;
				box-shadow: none;
				background: none;
				
				.icon {
					width: 22px;
					height: 20px;
				}
				
				&.readonly {
					cursor: default;
				}
				
				&.repeat .icon {
					background-position: -280px -120px;
				}
				
				&.repeat.selected .icon,
				&.repeat:hover .icon {
					background-position: -280px -140px;
				}
				
				&.alarm .icon {
					background-position: -320px -120px;
				}
				
			}
		}
		
	}
	
}

.popup.calendar_event .toolbar .content .alarm.selected .icon,
.popup.calendar_event .editable .toolbar .content .alarm:hover .icon {
	background-position: -320px -140px;
}
.popup.calendar_event .toolbar .content .guests .icon {
	background-position: -360px -120px;
}
.popup.calendar_event .toolbar .content .guests.selected .icon,
.popup.calendar_event .editable .toolbar .content .guests:hover .icon {
	background-position: -360px -140px;
}
.popup.calendar_event .toolbar .content .guests .arrow {
	width: 0px;
	height: 0px;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-right: 6px solid #F7F7F7;
	background: none;
	margin-right: -6px;
	position: relative;
	right: -20px;
	visibility: hidden;
}
.popup.calendar_event .toolbar .content .guests.selected .arrow {
	visibility: visible;
}

.popup.calendar_event .scrollable_field {
	border: 1px solid #fff;
	border-radius: 4px 4px 4px 4px;
}
.popup.calendar_event .editable .scrollable_field:hover {
	border-color: #ccc;
}
.popup.calendar_event .scrollable_field .input {
	border: 0px;
	border-radius: 0px;
	width: 100%;
}
.popup.calendar_event .scrollable_field span.input {
	display: block;
}

.popup.calendar_event .name .scrollable_field {
	max-height: 110px;
}
.popup.calendar_event .description .scrollable_field {
	max-height: 150px;
}
.popup.calendar_event .location .scrollable_field {
	max-height: 74px;
}

.popup.calendar_event {
	
	.subforms {
		height: 0px;
		position: relative;
		
		.dates_form {
			z-index: 2;
		}
		
		.alarm_form {
			z-index: 1;
		}
		
		.alarm_form,
		.dates_form {
			position: absolute;
			bottom: 0px;
			right: 0px;
			color: #828282;
			font-size: 9pt;
			
			html.rtl & {
				right: auto;
				left: 0px;
			}
			
			.form_content {
				border-radius: 4px;
				min-width: 200px;
				padding: 12px;
				background: #f7f7f7;
				clear: both;
			}
			
			.form_arrow {
				border-top: 6px solid #f7f7f7;
				border-bottom: 0px solid #f7f7f7;
				border-left: 6px solid transparent;
				border-right: 6px solid transparent;
				display: block;
				font-size: 0;
				width: 0;
				height: 0;
				margin-right: 53px;
				float: right;
			}
			
			.custom_selector{
				display: inline-block;
				position: relative;
				vertical-align: middle;
			}
		}
		
		.alarm_form .item {
			display: block;
		}
		
		.alarm_form .remove {
			float: right;
		}
	}
	
	.alarms_helper div {
		height: 15px;
	}
}



.popup.calendar_event .subforms .dates_form {
	bottom: 25px;
	right: auto;
	top: auto;
	left: -22px;
}
.popup.calendar_event .subforms .dates_form .form_content {
	min-width: 420px;
	background: #fff4cf;
}
.popup.calendar_event .subforms .dates_form .date {
	width: 100px;
	margin-right: 0px;
	border: 1px solid #CCCCCC;
	padding-right: 23px;
	position: relative;
	z-index: 3000;
	cursor: pointer;
	width: 145px;
	vertical-align: middle;
}
html.rtl .popup.calendar_event .subforms .dates_form .date {
	margin-left: 0px;
	padding-right: 6px;
}
.popup.calendar_event .subforms .dates_form .time {
	width: 50px;
	border: 1px solid #CCCCCC;
	vertical-align: middle;
	margin-right: 13px;
}
.popup.calendar_event .subforms .dates_form .ui-datepicker-trigger {
	display: inline-block;
    margin: 0 5px 0 -21px;
    vertical-align: middle;
	position: relative;
    z-index: 3001;
	cursor: pointer;
}
html.rtl .popup.calendar_event .subforms .dates_form .ui-datepicker-trigger {
	margin: 0 -21px 0 5px;
}
.popup.calendar_event .subforms .dates_form .allday {
	margin-top: 10px;
}
.popup.calendar_event .subforms .dates_form .form_arrow {
	float: none;
	margin: 0px 0px 0px 95px;
	border-top: 6px solid #fff4cf;
}
.popup.calendar_event .subforms .repeat_panel .input {
	border: 1px solid #ccc;
}

.popup.calendar_event .popup_panel {
	padding: 0px;
	background: #f7f7f7;

	-webkit-transition: all 500ms ease 0s;
	-moz-transition: all 500ms ease 0s;
	transition: all 500ms ease 0s;
}
.popup.calendar_event .popup_panel.offset {
	/*margin-top: 150px;*/
}
.popup.calendar_event .panel_wrap {
	background: #fff;
	border-radius: 4px;
}
.popup.calendar_event .main_panel {
	.box-sizing();
	
	padding: 20px;
	min-width: 100%;
	float: left;
}
.popup.calendar_event .show_side_panel {
	padding-right: 240px;
	margin-right: -240px;
}

.popup.calendar_event .side_panel {
	float: right;
	width: 200px;
	margin-right: -240px;
	color: #929292;
	padding: 20px;
	visibility: hidden;
	opacity: 0;
}
.popup.calendar_event .show_side_panel .side_panel {
	visibility: visible;
	opacity: 1;

	.transition (opacity 300ms ease 300ms);
}
.popup.calendar_event .side_panel .arrow {
/*	border-left: 6px solid #F7F7F7;
	border-top: 6px solid #fff;
	border-bottom: 6px solid #fff;

    display: block;
    float: left;
    font-size: 0;
    height: 0;
    margin: 200px 0px 0-6px;
    width: 0;*/
}
.popup.calendar_event .side_panel .attender {
	margin-bottom: 6px;
}
.popup.calendar_event .side_panel .attender .link {
	float: right;
	margin-left: 10px;
	display: inline-block;
	vertical-align: middle;
	width: 16px;
	height: 16px;
	background: url("images/sprites.png?%VERSION%") no-repeat -680px -240px;
}
html.rtl .popup.calendar_event .side_panel .attender .link {
	float: left;
	margin-left: 0px;
	margin-right: 10px;
}
.popup.calendar_event .side_panel .attender .name {
	display: block;
	overflow: hidden;
	white-space: nowrap;
}
.popup.calendar_event .side_panel .attender .name .text {
	display: inline-block;
	cursor: default;
}
.popup.calendar_event .side_panel .attender .icon {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	height: 12px;
	background: url("images/sprites.png?%VERSION%") no-repeat 0px 0px;
}
.popup.calendar_event .side_panel .attender.pending .icon {
	background-position: -520px -240px;
}
.popup.calendar_event .side_panel .attender.accepted .icon {
	background-position: -480px -240px;
}
.popup.calendar_event .side_panel .attender.declined .icon {
	background-position: -600px -240px;
}
.popup.calendar_event .side_panel .attender.declined .text {
	color: #d0d0d0;
}
.popup.calendar_event .side_panel .attender.tentative .icon {
	background-position: -560px -240px;
}
.popup.calendar_event .side_panel .add_attender {
	margin-top: 20px;
}
.popup.calendar_event .side_panel .add_attender .input {
	border: 1px solid #CCCCCC;
	width: 170px;
	margin-right: 10px;
}
html.rtl .popup.calendar_event .side_panel .add_attender .input {
	margin-right: 0px;
	margin-left: 10px;
}
.popup.calendar_event .side_panel .add_attender .link {
	display: inline-block;
	float: right;
	width: 16px;
	height: 16px;
	margin-top: 3px;
	background: url("images/sprites.png?%VERSION%") no-repeat -640px -240px;
}
html.rtl .popup.calendar_event .side_panel .add_attender .link {
	float: left;
}
.popup.calendar_event .side_panel .button {
	font-size: 9pt;
    padding: 3px 5px 2px;
	margin: 0px;
}
/*--- END Calendar Popups CSS ---*/
/*=== END Calendar CSS ===*/



.calendar_event .label {
	width: inherit;
}
.calendar_event .input {
	width: inherit;
}
.fc-show-weekends .fc-sat,
.fc-show-weekends .fc-sun {
	background: rgb(240, 240, 240);
}
.fc-non-working-time{
	background: rgba(240, 240, 240, 0.5) !important;
}

.calendar_event .description span.input,
.calendar_event .location span.input {
	white-space: pre-wrap;
}