.calendar-toolbar {
	margin-bottom: 15px;
}
.tab th,
.tab td {
	padding: 0;
	text-align: center;
}

.static_string_table {
  line-height: 34px;
}
#calendar_settings_td,
#calendar_settings_td *,
#calendar_filter_td,
.cln_settings {
	text-align: left;
}
#calendar_settings th {
	white-space: normal;
}
.calendar_static_menu img {
	vertical-align: middle;
}
.cln_settings {
	z-index: 110;
}
.cln_popup {
	position: absolute;
	width: 580px;
	z-index: 100;
	top:0px;
	transform: none;
}

#cln_popup_view_controls_td,
#cln_popup_edit_controls_td {
	margin-bottom: 0;
	-webkit-border-radius: 0 0 3px 3px;
	   -moz-border-radius: 0 0 3px 3px;
	        border-radius: 0 0 3px 3px;
}

.cln_settings h3 {
	margin-bottom: 3px;
}

.popup-calendar-event-show-description {
    max-height: 230px;
    overflow-y: auto;
}

.popup-calendar-event-show-description a{
    word-wrap: break-word;
}

.calendars_popup_item img {
	top: 3px;
	position: relative;
}
.calendars_popup_item ul {
	position: absolute;
	top: 0;
	right: 3px;
	margin: 0;
	list-style: none;
}
.calendars_popup_item ul li {
	float: left;
}

.modal .calendar-sort {
    max-width: 50%;
}

.modal .calendar-sort-label {
    padding-top: 2px;
    font-weight: normal;
    margin-right: 5px;
}

.individual-calendar {
    .filter_checkbox {
        margin-top: 7px;
    }
}

.calendar-list {
	margin-bottom: 10px;
}

.selected_part {
	background-color: #aaa;
}

.timeline_hour {
	border-top: 1px solid #ccc;
	height: 15px;
}
.timeline_halfhour {
	border-top: 1px dashed #ddd;
	height: 15px;
}
.timeline_hour:hover, .timeline_halfhour:hover {
	background: #eee;
}
.cln_hidden_div {
	position: absolute;
	display: none;
}
.string_event_div_multicount {
	border: 1px solid white;
	background-color: #ccc;
}
.string_event_div {
	cursor: pointer;
	overflow: hidden;
	position: absolute;
	top: 0px;
	left: 0px;
	display: none;
	z-index: 10;
	font-size: 12px;
	padding: 0 0 2px !important;
}
.days_event_div {
	cursor: pointer;
	top: 0px;
	left: 0px;
	display: none;
	border: 1px solid #fff;
	overflow: hidden;
	background-color: #ccc;
	position: absolute;
	z-index: 10;
	font-size: 12px;
	line-height: 16px;
}

.hidden_events{
	position: absolute;
	z-index: 20;
}
.over {
	height: 100px;
	width: 100%;
}
table.tab {
	table-layout: fixed;
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #F2F4F8;
	margin: 0;
}
table.tab td {
	overflow: hidden;
	border-bottom: 1px solid #E5E8EB;
	color: #4E4C4C;
	border-right: 1px solid #E5E8EB;
	background: white;
	padding: 0;
}

table.tab td.today {
	background: #FFFFE0;
}
#days_view_body {
	vertical-align: top;
	text-align: center;
	font-size: 12px;
}
table.tab tr {
	overflow: hidden;
}
table.tab th {
	background: #F2F4F8;
	text-align: center; padding: 0; height: 20px;
	border-bottom: 1px solid #E5E8EB;
	color: #2A4D94;
	height: 25px;
}
td.cln_time_td {
	background: #FAFAFA;
	text-align: center; padding: 0; height: 20px;
}
table.table_no_border {
	width: 100%;
	height: 100%;
	border-collapse: collapse;
	border: 0;
}
table.table_no_border td {
	border: 0;
	border-collapse: collapse;
}
.cln_work_div {
	height: 300px;
	overflow: auto;
	overflow-x: hidden;
	position: relative;
}

.cln_dayly_work_div {
	height: 300px;
	position: relative;
}

.cln_fullday_work_div, .droppables {
	position: relative;
	border: solid #F2F4F8;
	border-width: 4px 4px 0 4px;
	background: #F2F4F8;
}

.cln_work_div, .cln_dayly_work_div {
	border: 0;
}

table.calendar_static_string {
	font-size: 11pt;
	width: 100%;
	border-collapse: collapse;
	border: none;
	font-size: 12px;
}
table.calendar_static_string h3 {
	font-size: 14px;
}
table.calendar_static_string td {
	text-align: center;
	padding: 2px 5px 2px 5px;
	white-space:nowrap;
	height: 22px;
}
table.calendar_static_string td.calendar_static_menu {
	padding: 0 20px 0 0;
	vertical-align: bottom;
}
.month_usual_td {
	background-color: #fff;
}
.month_selected_td {
	background-color: #febcda;
}
#month_view_body .month_cell {
	background: #fff;
}
.month_cell td {
	text-align: center;
	vertical-align: bottom;
	font-size: 11px;
}
td.cln_day_num {
	text-align: right;
	vertical-align: top;
}
a.cln_day_num {
	display: block;
	font-family: "Trebuchet MS";
	position: relative; z-index: 10;
	font-size: 16px;
	font-weight: bold;
	line-height: 16px;
	zoom:1;
	padding: 0 5px 1px 5px;
	border: solid #E5E8EB;
	border-width: 0 0 1px 1px;
	background: white;
	color: #3E5080;
	margin: 0;
	float: right;
}
a.cln_day_num:hover {
	background: #F2F4F8;
	text-decoration: none;
}
#month_view_body .d-none a {
	display: none;
}
table.tab .cln_today {
	background: #FFFFE0;
}
select.admin_only option.edit_only{
	display: none;
}
.cln_deleted_user td {
	text-decoration: line-through;
	background-color: #ffdada;
}
#right_box .plain_text_block {
	padding: 0;
}
#right_box .plain_text_block .header {
	margin: 0;
}
#right_box .form_submit {
	margin: 5px 5px;
	text-align: left!important;
}
.rounded {
	padding: 2px;
	line-height: 10px;
}
.rounded:before{
	content:url(/images/default/menu/lt2x2.png);
	background: url(/images/default/menu/rt2x2.png) no-repeat 100% 0;
	height: 2px;
	display: block;
	margin: -2px -2px 2px -2px;
}
.rounded:after{
	content:url(/images/default/menu/lb2x2.png);
	background: url(/images/default/menu/rb2x2.png) no-repeat 100% 0;
	height: 2px;
	display: block;
	margin: 2px -2px -2px -2px;
}
.rounded{
	zoom:1;
	behavior:expression(!this.isInserted==true ? this.isInserted=(this.innerHTML = '<span style="background: url(/images/default/menu/rt2x2.png) no-repeat 100% 0;height: 2px;display: block;margin: -2px -2px 2px -2px; font-size: 0;"><img src="/images/default/menu/lt2x2.png" alt="" /></span>' + this.innerHTML + '<span style="background: url(/images/default/menu/rb2x2.png) no-repeat 100% 0;height: 2px; display: block;margin: 2px -2px -2px -2px; font-size: 0;"><img src="/images/default/menu/lb2x2.png" alt="" /></span>') : '');
}
.calendarColours {
	width: 463px;
	list-style: none;
	padding: 0;
}
.calendarColours li{
	margin: 0 1px 1px 0;
	float: left;
}
#CalendarColours label {
	width: auto;
	float: none;
	display: block;
	padding: 0;
}
.calendarColours li input {
	margin: 10px;
}

.custom_color label {
	width: auto;
}

.custom_color .btn {
	margin: 0;
}

.CalAgendaEdit {
	float: left;
}
.CalAgendaDel {
	float: right;
}
#CalHome .CalAgendaDel,
#CalHome .CalAgendaEdit {
	float: none;
}
.time_obj table {
	margin-bottom: 0.5em;
}
.time_obj .week table, .time_obj td {
	font-weight:normal;
	border-collapse:collapse;
}
.time_obj .week td {
	text-align: center;
	padding: 1px !important;
	margin: 0px;
	border: 1px solid silver;
}
.time_obj select {
	margin-left: 0.5em !important;
	border: solid 1px #555;
}
#calendars_array {
	color: #fff;
}


/* calendar admin */
.system-calendars {
	margin-bottom: 10px;
}
.admin-calendar-link a {
	color: #fff;
	position: relative;
}

.admin-calendar-link a:hover {
	color: #fff;
	opacity: 0.8;
}

.admin-calendar-link input[type='checkbox'] {
	position: absolute;
	z-index: 2;
	margin: 13px 0 0 12px;
}

.admin-calendar-link input[type='checkbox'] + a {
	margin-left: 36px;
}

.admin-select-all-check {
    padding: 0.5rem 2.05rem;
}


// Styles the calendar month view number when inactive
.fc-day-number {
    display: block;
    width: 1.4rem;
    height: 1.4rem;
    text-align: center;
    border-radius: 10rem;
    border: none;
    margin: 0.25rem;
    text-decoration: none;
}

// Styles the calendar month view number when active
.fc-today .fc-day-number {
background: var(--theme-primary-color);
color: var(--theme-primary-color-contrast);
}

// Override styling of table parent container
.fc-scroller {
  	overflow-x: auto !important;
}

.fc-list-item-title {
	white-space: nowrap;
}

// Allows events of less than 30 minutes to be visible in day and week view
.fc-time-grid-event {
	min-height: 21.5px;
}

// Custom calendar code to allow ellipsis on badges
.badge-calendar {
    display: table;
    table-layout: fixed;
    width: 100%;
}

// Adds text ellipsis to calendar labels which are over 100px wide
.text-ellipsis {
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

// Allows a fixed width icon wrapper so the calendar badges are aligned properly
.custom-calendar-alignment {
    width: 24px;
}


// Centres user picker pop up window in viewport at tablet size and below
@media only screen and (max-width: 1020px) {
.popup_window.user-picker-popup_window {
    left: 0 !important;
    right: 0 !important;
    margin: -50px auto 0;
 }
}
