/* ==========================================================================
   Margins
   ========================================================================== */
.no-margin { margin: 0 !important; }

.mt-0 { margin-top: 0 !important; }
.mt-5 { margin-top: 5px !important; }
.mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px !important; }

.mb-0 { margin-bottom: 0 !important; }
.mb-5 { margin-bottom: 5px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px !important; }

.mr-0 { margin-right: 0 !important; }
.ml-0 { margin-left: 0 !important; }

/* ==========================================================================
   Paddings
   ========================================================================== */
.no-padding { padding: 0 !important; }

.pt-0 { padding-top: 0 !important; }
.pt-5 { padding-top: 5px !important; }
.pt-10 { padding-top: 10px !important; }
.pt-15 { padding-top: 15px !important; }
.pt-20 { padding-top: 20px !important; }

.pb-0 { padding-bottom: 0 !important; }
.pb-5 { padding-bottom: 5px !important; }
.pb-10 { padding-bottom: 10px !important; }
.pb-15 { padding-bottom: 15px !important; }
.pb-20 { padding-bottom: 20px !important; }

.pr-0 { padding-right: 0 !important; }
.pl-0 { padding-left: 0 !important; }

/* ==========================================================================
   Text Colors
   ========================================================================== */
.text-primary {color: #3d556f !important; }
.text-info { color: #49a3df !important; }
.text-success { color: #179b77 !important; }
.text-warning { color: #e88c39 !important; }
.text-danger { color: #c0392b !important; }
.text-default { color: #555555 !important; }

/* ==========================================================================
   Header Blocks
   ========================================================================== */
.tzBlocks { color: #555555; }
	.tzBlocks .blockCont { text-align: center; }
	.tzBlocks .txtCont {
		display: block;
		font-size: 35px;
		font-weight: 300;
		line-height: 25px;
		text-shadow: 0px 3px 3px rgba(0, 0, 0, .2);
	}
	.tzBlocks hr {
		background: #ddb2aa none repeat scroll 0 0;
		border: 0 none;
		display: inline-table;
		height: 2px;
		margin: 10px 0 15px;
		padding: 0;
		width: 160px;
	}
	.tzBlocks .titleCont {
		display: block;
		font-size: 18px;
		font-weight: 300;
		text-transform: uppercase;
		text-shadow: 0px 3px 3px rgba(0, 0, 0, .2);
	}
		.tzBlocks .titleCont a { color: #555555; font-weight: 300; }
		.tzBlocks .titleCont a:hover { color: #444444; }

@media (max-width:992px) {
	.tzBlocks .blockCont { margin-bottom: 20px; }
}

/* ==========================================================================
   Avatars
   ========================================================================== */
.avatarImage {
    margin: 0 15px 10px 0;
    max-height: 80px;
    max-width: 80px;
    padding: 0 5px 5px;
}

/* ==========================================================================
   Alert Message Boxes
   ========================================================================== */
.alertMsg {
    padding: 10px 30px 10px 60px;
    position: relative;
	font-size: 16px;
	line-height: 30px;
	margin: 20px 0;
}
	.alertMsg.small {
		font-size: 14px;
		line-height: 1.5;
	}
    .alertMsg a {
        display: block;
        position: absolute;
        top: 2px;
        right: 10px;
        color: #fff;
        text-decoration: none;
        font-size: 14pt;
        opacity: 0.4;
    }
		.alertMsg a:hover { opacity: 0.8; }

.alertMsg .msgIcon {
    font-size: 25px !important;
    color: #ffffff;
    position: absolute;
    top: 9px;
    left: 15px;
}

.alertMsg.default {
	border-left: 5px solid #cccccc;
	background-image: linear-gradient(#f2f2f2, #e5e5e5);
	color: #555555;
}
	.alertMsg.default .msgIcon { color: #555555; }
	.alertMsg.default a { color: #555555; }

.alertMsg.primary {
	border-left: 4px solid #222f3e;
	background-image: linear-gradient(#3d556f, #34485f);
	color: #ffffff;
}
.alertMsg.info {
	border-left: 4px solid #217dbb;
	background-image: linear-gradient(#49a3df, #3398db);
	color: #ffffff;
}
.alertMsg.success {
	border-left: 4px solid #0d5844;
	background-image: linear-gradient(#179b77, #148566);
	color: #ffffff;
}
.alertMsg.warning {
	border-left: 4px solid #be6616;
	background-image: linear-gradient(#e88c39, #e57f22);
	color: #ffffff;
}
.alertMsg.danger {
	border-left: 4px solid #81261d;
	background-image: linear-gradient(#c0392b, #ab3326);
	color: #ffffff;
}

/* ==========================================================================
   Site Notices
   ========================================================================== */
.notice-item {
  background-color: #f9f9f9;
  margin: 0 5px 10px;
  padding: 10px 15px;
}

@media (min-width: 768px) {
  .notice {
    display: -moz-box;
    display: -webkit-flex;
    display: flex;
    width: 100%;
  }

  .notice-item {
    -moz-box-flex: 1;
    -webkit-flex: auto;
    flex: auto;
    width: 1px;
  }
}
@media (min-width: 992px) {
  .notices {
    display: -moz-box;
    display: -webkit-flex;
    display: flex;
    width: 100%;
  }

  .notice {
    -moz-box-flex: 1;
    -webkit-flex: auto;
    flex: auto;
    width: 1px;
  }
}

.notice-date { line-height: 1.2; }

/* ==========================================================================
   Info Lists
   ========================================================================== */
.info-item {
    border-bottom: 1px solid #f0f0f0;
    padding: 0 0 10px;
}
	.info-item:first-of-type { padding-top: 0; }
	.info-item:last-of-type {
		border-bottom: 0 none;
	}

.info-item h4 {
    border: 0 none;
    margin-bottom: 0;
    padding-bottom: 0;
    text-transform: none;
}
	.info-item h4 a { color: #c0392b; }
		.info-item h4 a:hover { color: #444444; }
	.info-item h4 span {
		color: #999999;
		font-size: 70%;
		padding-top: 4px;
	}

.info-item p {
    font-size: 14px;
    margin: 0;
}
.info-item p.infoLabels {
    color: #777777;
    font-size: 14px;
}

/* ==========================================================================
   Private Messages
   ========================================================================== */
.msgLink { cursor: pointer; }
.msg-status { line-height: 12px; }

.msg-title {
    border-bottom: 1px solid #eeeeee;
    font-size: 16px;
	font-weight: 400;
    padding-bottom: 5px;
}
	.msg-title small { line-height: 1; }

.msgOptions {
	border-bottom: 1px solid #eeeeee;
	padding-bottom: 10px;
}

.msgUnread { font-weight: 700; }
	.msgUnread a { font-weight: 700; }

.msgTitle { font-weight: 700; }

.linkMsg {
	color: #444444;
	font-weight: 400;
}

/* ==========================================================================
   Time Blocks
   ========================================================================== */
#card-lists {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#card-lists .card {
	float: left;
	width: 24.5%;
	background: #fcfcfc;
	border: 1px solid #eeeeee;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 4px;
	margin-left: .5%;
	overflow: hidden;
}
	#card-lists .card.admin { background: #f6f1ee; border: 1px solid #e6c2bd; }
	#card-lists .card:first-child { margin-left: 0; }
	#card-lists .card:nth-child(4n+1) { margin-left: 0; }

@media (max-width: 768px) {
	#card-lists .card { width: 49.5%; }
	#card-lists .card:nth-child(2n+1) { margin-left: 0; }
}

@media (max-width: 480px) {
	#card-lists .card {
		width: 100%;
		margin-left: 0;
	}
}

ul.time-detail {
	list-style: none;
	padding: 0;
	width: 100%;
	margin: 0;
}

.time-detail li {
	padding: 10px 5px;
	line-height: 1.25;
	transition: ease .4s all;
	text-align: center;
}
	.time-detail li:hover { background: #f0f0f0; }
	.card.admin .time-detail li:hover { background: #ffffff; }
	.time-detail li a {
		text-decoration: none;
		color: #555555;
		width: 100%;
		height: 100%;
		display: block;
	}

.time-week {
	font-weight: 400;
	font-size: 20px;
	color: #c0392b;
	border-bottom: 1px solid #ecd3cf;
	margin: 0 0 5px;
	padding-bottom: 4px;
	line-height: 1;
}

.time-dates {
	font-size: 16px;
	font-weight: 300;
	color: #777777;
}

.time-hours {
	font-size: 14px;
	font-weight: 300;
	color: #888888;
}

@media (max-width: 480px) {
	.time-hours { display: none; }
}

/* ==========================================================================
   Weather/Date Time Widget
   ========================================================================== */
@font-face {
    font-family: 'weather';
    src: url('fonts/artill_clean_icons-webfont.eot');
    src: url('fonts/artill_clean_icons-webfont.woff') format('woff'),
         url('fonts/artill_clean_icons-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

#weather {
    width: 100%;
    margin: 5px 0 10px;
    text-align: center;
}
    #weather i {
        color: #c0392b;
        font-family: weather;
        font-size: 90px;
        font-weight: normal;
        font-style: normal;
        line-height: 0;
    }
    .icon-0:before { content: ":"; }
    .icon-1:before { content: "p"; }
    .icon-2:before { content: "S"; }
    .icon-3:before { content: "Q"; }
    .icon-4:before { content: "S"; }
    .icon-5:before { content: "W"; }
    .icon-6:before { content: "W"; }
    .icon-7:before { content: "W"; }
    .icon-8:before { content: "W"; }
    .icon-9:before { content: "I"; }
    .icon-10:before { content: "W"; }
    .icon-11:before { content: "I"; }
    .icon-12:before { content: "I"; }
    .icon-13:before { content: "I"; }
    .icon-14:before { content: "I"; }
    .icon-15:before { content: "W"; }
    .icon-16:before { content: "I"; }
    .icon-17:before { content: "W"; }
    .icon-18:before { content: "U"; }
    .icon-19:before { content: "Z"; }
    .icon-20:before { content: "Z"; }
    .icon-21:before { content: "Z"; }
    .icon-22:before { content: "Z"; }
    .icon-23:before { content: "Z"; }
    .icon-24:before { content: "E"; }
    .icon-25:before { content: "E"; }
    .icon-26:before { content: "3"; }
    .icon-27:before { content: "a"; }
    .icon-28:before { content: "A"; }
    .icon-29:before { content: "a"; }
    .icon-30:before { content: "A"; }
    .icon-31:before { content: "6"; }
    .icon-32:before { content: "1"; }
    .icon-33:before { content: "6"; }
    .icon-34:before { content: "1"; }
    .icon-35:before { content: "W"; }
    .icon-36:before { content: "1"; }
    .icon-37:before { content: "S"; }
    .icon-38:before { content: "S"; }
    .icon-39:before { content: "S"; }
    .icon-40:before { content: "M"; }
    .icon-41:before { content: "W"; }
    .icon-42:before { content: "I"; }
    .icon-43:before { content: "W"; }
    .icon-44:before { content: "a"; }
    .icon-45:before { content: "S"; }
    .icon-46:before { content: "U"; }
    .icon-47:before { content: "S"; }

#weather h2 {
    margin: 0 0 10px;
    color: #555555;
	font-family: "Open Sans", sans-serif;
    font-size: 55px;
    font-weight: 300;
    text-align: center;
    text-shadow: 0px 3px 3px rgba(0, 0, 0, .2);
}

#weather ul {
    margin: 0;
    padding: 0;
}
    #weather li {
        display: inline-block;
        color: #555555;
        font-size: 15px;
    }
    #weather li.currently { margin-left: 20px; }

.weather-widget { text-align: center; }
	.weather-widget hr {
		background: #ddb2aa none repeat scroll 0 0;
		border: 0 none;
		display: inline-table;
		height: 2px;
		margin: 10px 0 15px;
		padding: 0;
		width: 100%;
	}

.dateTime {
	align-items: center;
    width: 275px;
	justify-content: center;
    margin: 10px auto 0;
    text-align: center;
    color: #555555;
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
    .dateTime .day {
        font-size: 55px;
        line-height: 60px;
        text-shadow: 0px 3px 3px rgba(0, 0, 0, .2);
        text-align: center;
    }
    .dateTime .monthYear {
        line-height: 28px;
        padding-left: 20px;
		color: #c0392b;
    }
        .dateTime .monthYear span {
            font-weight: 400;
			color: #555555;
            margin-right: 10px;
            font-size: 25px;
            text-shadow: 0px 3px 3px rgba(0, 0, 0, .2);
        }

/* ==========================================================================
   Simple Calendar
   ========================================================================== */
.simpleCalendar { width: 100%; }

.simpleCalendar .simpleCalendar-header {
	display: block;
	line-height: 25px;
	margin-bottom: 5px;
	text-align: center;
	position: relative;
}
	.simpleCalendar .simpleCalendar-header span {
		font-size: 20px;
		font-weight: 400;
		color: #555555;
	}
	.simpleCalendar .simpleCalendar-header .prev-month { float: left; }
	.simpleCalendar .simpleCalendar-header .next-month { float: right; }

.simpleCalendar-month {
	position: relative;
	z-index: 0;
	overflow: hidden;
}

.simpleCalendar table {
	width: 100%;
	table-layout: fixed;
}
	.simpleCalendar th {
		text-align: center;
		font-weight: 400;
		font-size: 13px;
	}
	.simpleCalendar td { text-align: center; }
	.simpleCalendar td:hover {
		background: #f0f0f0 !important;
		color: #555555;
	}
	.simpleCalendar td.month-prev, .simpleCalendar td.month-next { background: #e3e0dc; }
	.simpleCalendar td.selected {
		background: #d5d0c8;
		color: #555555;
	}
	.simpleCalendar td.today { font-weight: 400; }

.simpleCalendar .table > tbody > tr > th { border-top: 0; }
.simpleCalendar .table > tbody > tr > td { padding: 3px !important; font-size: 14px; }

.btn-calendar {
	border-color: transparent;
	background: transparent;
	font-size: 12px;
	color: #999999;
}
	.btn-calendar:hover { background: transparent; }
	.btn-calendar:active {
		-webkit-box-shadow: none;
		box-shadow: none;
		border: 0;
		color: #444444;
	}

/* ==========================================================================
   fullCalendar Overwrites
   ========================================================================== */
#calendar { margin-top: 20px; }

.fc-event {
	border: 1px solid #c0392b;
	background-color: #c0392b;
}

.fc-toolbar {
    margin-bottom: 0.5em;
    text-align: center;
}
.fc-toolbar h2 {
    font-size: 24px;
    line-height: 1.6;
}
.fc-unthemed .fc-today {
    background: #f9f8f7 none repeat scroll 0 0;
}

.fc-basic-view .fc-week-number {
    background: #fcfbfa none repeat scroll 0 0;
    text-align: center;
}

.fc button {
    text-transform: capitalize;
}

.fc-state-default, .fc-state-new {
    background-color: #f2f2f2;
    background-image: linear-gradient(#f2f2f2, #e5e5e5);
    background-repeat: repeat-x;
    border-color: transparent;
    box-shadow: none;
    color: #555555;
    text-shadow: none;
}
	.fc-state-hover {
		background-position: 0;
		background: linear-gradient(#e5e5e5, #d8d8d8);
		color: #333333;
		text-decoration: none;
		transition: background-position 0.1s linear 0s;
	}
.fc-state-new {
    box-sizing: border-box;
	color: #555555;
    cursor: pointer;
	font-weight: 300;
	text-decoration: none;
	text-shadow: none;
    padding: 0.15em 0.6em 0.25em;
    white-space: nowrap;
}
	.fc-state-new:hover {
		background-position: 0;
		background: linear-gradient(#e5e5e5, #d8d8d8);
		color: #333333;
		text-decoration: none;
		transition: background-position 0.1s linear 0s;
	}
	.fc-state-new:active {
		text-decoration: none;
	}

.fc th {
	background: #fcfbfa none repeat scroll 0 0;
    font-weight: 400;
    text-align: center;
}

.fc-event .fc-content { cursor: pointer; }

#script-warning { display: none; }

#loading {
	width: 110px;
	display: none;
	margin: 20px auto;
}
	span.loader {
		display: inline-block;
		height: 20px;
		width: 20px;
		background: #e9e6e1;
		margin-right: 2px;
	}
	#loading span.loader:nth-child(1) {
	  -webkit-animation: rotateX 2s 0.1s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
			  animation: rotateX 2s 0.1s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
	}
	#loading span.loader:nth-child(2) {
	  -webkit-animation: rotateX 2s 0.2s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
			  animation: rotateX 2s 0.2s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
	}
	#loading span.loader:nth-child(3) {
	  -webkit-animation: rotateX 2s 0.3s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
			  animation: rotateX 2s 0.3s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
	}
	#loading span.loader:nth-child(4) {
	  -webkit-animation: rotateX 2s 0.4s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
			  animation: rotateX 2s 0.4s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
	}
	#loading span.loader:nth-child(5) {
	  -webkit-animation: rotateX 2s 0.5s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
			  animation: rotateX 2s 0.5s infinite cubic-bezier(0.65, 0.03, 0.735, 0.045);
	}

@-webkit-keyframes rotateX {
  0% {
    -webkit-transform: rotateX(0deg);
            transform: rotateX(0deg);
  }
  50% {
    -webkit-transform: rotateX(90deg) scale(0.5, 0.5);
            transform: rotateX(90deg) scale(0.5, 0.5);
    background: #c0392b;
  }
  100% {
    -webkit-transform: rotateX(0deg);
            transform: rotateX(0deg);
  }
}
@keyframes rotateX {
  0% {
    -webkit-transform: rotateX(0deg);
            transform: rotateX(0deg);
  }
  50% {
    -webkit-transform: rotateX(90deg) scale(0.5, 0.5);
            transform: rotateX(90deg) scale(0.5, 0.5);
    background: #c0392b;
  }
  100% {
    -webkit-transform: rotateX(0deg);
            transform: rotateX(0deg);
  }
}

input[type="radio"] { display: none; }
    input[type="radio"] + label {
        -webkit-transition: all 300ms ease;
        transition: all 300ms ease;
        font-size: 16px;
        font-weight: 300;
        cursor: pointer;
        background-color: #efefef;
        color: #dcdcdc;
        padding: 4px 8px;
		width: 30px;
        display: inline-block;
    }
		input[type="radio"] + label { background-color: #a0ce4e; }

			/* Custom Colors for Tasked */
			input[type="radio"] + label.primary { background-color: #34485f; }
			input[type="radio"] + label.primary2 { background-color: #556c83; }
			input[type="radio"] + label.info { background-color: #3398db; }
			input[type="radio"] + label.info2 { background-color: #68acdc; }
			input[type="radio"] + label.success { background-color: #148566; }
			input[type="radio"] + label.success2 { background-color: #4ba78c; }
			input[type="radio"] + label.warning { background-color: #ca7428; }
			input[type="radio"] + label.warning2 { background-color: #e57f22; }
			input[type="radio"] + label.warning3 { background-color: #f66331; }
			input[type="radio"] + label.danger { background-color: #ab3326; }
			input[type="radio"] + label.danger2 { background-color: #b9584e; }
			input[type="radio"] + label.danger3 { background-color: #f43e3c; }

			input[type="radio"]:checked + label {
				-webkit-transition: all 300ms ease;
				transition: all 300ms ease;
				color: #ffffff;
				border: 1px solid transparent;
			}

        input[type="radio"] + label i { color: transparent; }
        input[type="radio"]:checked + label i {
            -webkit-animation: check 1s;
            animation: check 1s;
            color: #ffffff;
        }

/* ==========================================================================
   Profile
   ========================================================================== */
.profile-img {
    border: 5px solid #f0f0f0;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
    display: block;
    height: 80px;
    margin-left: auto;
    margin-right: auto;
}

.profile-text {
	margin-top: -3.5em;
	padding: 5em 1.5em 1.5em 1.5em;
	background: white;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	text-align: center;
	margin-bottom: 20px;
}

.profile-name {
	margin-right: -1em;
	margin-bottom: .75em;
	margin-left: -1em;
	border-bottom: 1px solid #ddb2aa;
	padding-bottom: .75em;
	font-size: 1.5em;
	text-transform: uppercase;
}

.profile-title {
	font-size: 16px;
	color: #777777;
}

/* ==========================================================================
   Sign In
   ========================================================================== */
.signin {
	margin-top: 5%;
}
	.signin p { margin-top: 10px; }

.signin-form { margin-top: 20px; }
	.signin-form .form-group .form-control:focus { background-color: #f0f0f0; }