  /* ics calendar overrides */
/* https://icscalendar.com/ics-calendar-css-classes */

#icscalendar{
	display:block;
	overflow:hidden;
}
/* reposition filter */
#icscalendar ul.filter{
	display:none;
	
	text-align:center;
	margin:0 auto;
}
#icscalendar ul.filter li{
	text-align:center;
	float:none;
	display:inline-block;
}
	
/* current month title */
.ics-calendar h3.ics-calendar-label{
	text-align:center;
}
/* make multiday titles visible for mobile initially, otherwise titles wont show on mobile view */
.ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td:not(:first-child):not(.d_01) .multiday_last>:not(.descloc), .ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td:not(:first-child):not(.d_01) .multiday_middle>:not(.descloc) {
    color: inherit!important;
}

.ics-calendar p.ics-calendar-past-events-toggle,
.ics-calendar .ics-calendar-past-events-toggle{
	display:none !important;
	visibility: hidden !important;
	margin-bottom:0 !important;
}

/* month arrows (and today link) */
.ics-calendar .ics-calendar-arrow-nav>.prev,
.ics-calendar .ics-calendar-arrow-nav>.next ,
.ics-calendar .ics-calendar-arrow-nav>.today{
	cursor:pointer !important;
	/*font-size:90%;*/
}
/*  month/today nav block wrapper */
#icscalendar .ics-calendar .ics-calendar-arrow-nav{ 
	display:block;width:100%;
	padding:0 1em; /* left/right padding for mobile */
}
#icscalendar .ics-calendar-arrow-nav>.prev,.ics-calendar-arrow-nav>.next,
#icscalendar .ics-calendar .ics-calendar-arrow-nav>.today{
	float:left !important;
}
#icscalendar .ics-calendar-arrow-nav>.next{
	float:right !important;
	margin-right:0;
}
.ics-calendar-arrow-nav>.today{
	float:none !important;
	position:absolute;
	width:100px;text-align:center;
	left:0;right:0;left:calc(50% - 50px);
}
.ics-calendar .ics-calendar-arrow-nav>.inactive{
	cursor:default !important;
}
.ics-calendar .prev-icon,.ics-calendar .next-icon{
	display:none !important; /* hide arrows */
}
.ics-calendar .prev-text:before{
	content:"< ";
}
.ics-calendar .next-text:after{
	content:" >";
}

.ics-calendar .ics-calendar-month-grid{
    line-height:normal !important;
}
.ics-calendar li.event,
.ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td .multiday_first,
.ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td .multiday_last,
.ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td .multiday_middle {
	background:#00aadb;background-color:#00aadb; /* event bg color if not set */
	color:white;
	font-weight:normal!important;
	pointer-events: none !important;	/* completely remove hover events */
}
.ics-calendar .ics-calendar-month-grid .events .time,
.ics-calendar .events .time .show_on_hover {
    font-weight:bold !important;
	visibility:visible;
	font-size:100%;
}
.ics-calendar-month-grid td,
.ics-calendar-month-grid th{
    font-size:72%; /* font size of events */
	letter-spacing:0;
	line-height:1.5;
}
.ics-calendar-month-grid thead tr th {
    padding:0 0 0 0!important;padding:0.25em !important; /* day of the week padding */
}
.ics-calendar .ics-calendar-month-grid th, .ics-calendar.whitetext .ics-calendar-month-grid .today .day{
	/* day of the week titles */
    background:none !important;
	font-size:90% !important;
}

/* days not in this month */
.ics-calendar-month-grid .off{
    background:none !important;
}

.ics-calendar-month-grid tr td{	
	background:none !important;
}
.ics-calendar-month-grid tr td .day{
	background:none !important;	
}

.ics-calendar-month-grid .events .title, .ics-calendar-month-grid .events .time{
    /* show event time and title inline to save space */
	display:inline !important;
	font-size:100% !important;
}

/* saturday and sunday */
.ics-calendar-month-grid tr th:nth-child(6),
.ics-calendar-month-grid tr th:nth-child(7),
.ics-calendar-month-grid tr td:nth-child(6),
.ics-calendar-month-grid tr td:nth-child(7){
	background:#eee !important;
}
.ics-calendar-month-grid tr td:nth-child(6) .day,
.ics-calendar-month-grid tr td:nth-child(7) .day{
	background:#eee !important;
}

/* today */
#icscalendar .ics-calendar .ics-calendar-month-grid .today{
	background:#fcf8e3 !important;
}
.ics-calendar-month-grid .day .no_phone{
    color:#3b4140 !important;
}
/* color of date for today on grid - was too light on mobile */
#icscalendar .ics-calendar .ics-calendar-month-grid .today .day *{
	color:inherit !important;
}
.ics-calendar-arrow-nav a{
	margin-right:0 !important;
	margin-left:1em !important;
}
.ics-calendar-arrow-nav a.inactive,
.ics-calendar-arrow-nav a:first-child,
.ics-calendar-arrow-nav a.today{
	margin-left:0 !important;
}

/* this week title */
#icscalendar #view-week h3:first-child{
	margin:1em 0 0 0; 
}
.ics-calendar-select{
	display:none !important; /* hide this week drop doewn menu */
}

#icscalendar .layout-list{

}
#icscalendar .layout-list h4,#icscalendar .layout-list .event{
	
}



/* DESKTOP */
@media (min-width: 783px) {
	
	/* main wrappers */
	#icscalendar{
		padding:0.5em 0 0 0; /* top padding stops month label/header clipping on some sites */
		margin:0 2em 0 2em;
		/*border:1px solid red;*/
	}
	.ics-calendar{
		margin:1.5em 0 2em 0;
	}
	.ics-calendar-month-grid{
		margin:0 0;
	}	
	
	/* this week title */
	#icscalendar #view-week h3:first-child{
		margin:1em 0 -0.5em 0; 
	}	
	
	#icscalendar .layout-list h3.ics-calendar-label:first-child{
		margin-bottom:1em !important; /* create space below filter */
	}
	
	#icscalendar .ics-calendar .ics-calendar-arrow-nav{
		padding:0 0;
		display:inline;width:auto;
		position:relative;float:right;
		z-index:2;
	}
	#icscalendar .ics-calendar .ics-calendar-arrow-nav>.prev,
	#icscalendar .ics-calendar .ics-calendar-arrow-nav>.next{
		margin-right:2em;
	}
	#icscalendar .ics-calendar .ics-calendar-arrow-nav>.next{
		margin-right:0;
	}
	#icscalendar .ics-calendar .ics-calendar-arrow-nav>.today{
		
		position:relative;
		width:auto;text-align:left;
		left:auto;right:auto;
		
		margin-left:1em !important;
	}	
	
	#icscalendar .layout-month h3.ics-calendar-label{
		position:absolute !important;
		width:250px;
		/*top:-2em;*/
		left:0;right:0;left:calc(50% - 125px);
	}
	
	/* reposition filter */
	#icscalendar ul.filter{
		display:block;
		
		text-align:left;
		margin:0 0 2em 0;
		
		position:relative !important;
		width:250px;
		left:0;bottom:-4.6em;margin-top:-4.6em;
		z-index:2;		
	}
	#icscalendar ul.filter li{
		text-align:left;
		float:left;
		display:inline;
	}	
	
	/* hide multiday titles on desktop */
	.ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td:not(:first-child):not(.d_01) .multiday_last>:not(.descloc),
	.ics-calendar.combinemultiday:not([data-month-table-list-toggle=list]) td:not(:first-child):not(.d_01) .multiday_middle>:not(.descloc) {
		/*visibility:hidden;*/
	}	
}