/*
 * MAIN CONTAINERS
 */

#wrapper {
	position: relative;
	display: none;
	z-index: 0;
	min-width: 320px;
}

#templates {
	display: none;
}





/*
 * PRELOADER
 */

#preload {
	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	background: #fff;
	text-align: center;
	vertical-align: middle;
	z-index: 100000;
}

#preload span {
	position: absolute;
	left: 0px;
	right: 0px;
	text-align: center;
	font-size: 14px;
	color: #aaa;

	-webkit-animation: loading-icon-colour 2s infinite alternate; /* Safari 4+ */
	-moz-animation: loading-icon-colour 2s infinite alternate; /* Fx 5+ */
	-o-animation: loading-icon-colour 2s infinite alternate; /* Opera 12+ */
	animation: loading-icon-colour 2s infinite alternate; /* IE 10+, Fx 29+ */
}





/*
 * BOTTOM LOADING
 */

#loading_overlay {
	position: fixed;
	display: none;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: 100001;
}

#loading {
	position: fixed;
	display: none;
	color: #aaa;
	left: 50%;
	bottom: 0px;
	z-index: 100002;
	margin-left: -100px;
	padding-bottom: 20px;
	width: 200px;
	font-size: 14px;
	text-align: center;
	text-shadow: 0px 0px 15px #fff;
}

#loading span.icon {
	display: block;

	-webkit-animation: loading-icon-colour 2s infinite alternate; /* Safari 4+ */
	-moz-animation: loading-icon-colour 2s infinite alternate; /* Fx 5+ */
	-o-animation: loading-icon-colour 2s infinite alternate; /* Opera 12+ */
	animation: loading-icon-colour 2s infinite alternate; /* IE 10+, Fx 29+ */
}

.layout-xs #loading {
	padding-bottom: 10px;
	font-size: 14px;
}





/*
 * SUCCESS and ERROR messages
 */

#message_overlay {
	position: fixed;
	display: none;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	background: rgba(0, 0, 0, 0.5);
	z-index: 99998;
}

#message {
	position: fixed;
	z-index: 99999;
	display: none;
	cursor: pointer;
	background: #444;
	margin-left: -200px;
	width: 400px;
	padding: 20px;

	font-size: 16px;
	color: #FFF;

	left: 50%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	max-height: 100%; /* required! */
}

#message .title {
	display: block;
	font-size: 1.2em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #FFF;
}

#message .contents {
	display: block;
	padding: 5px 0px 0px;
	font-size: 0.8em;
}

#message ul,
#message ol {
	margin-left: 17px;
	margin-bottom: 0px;
	padding: 0px;
}

#message.success { background-color: #27AE60; }
#message.error { background-color: #C0392B; }

#message.success .title { color: #FFF; }
#message.error .title { color: #FFF; }

.layout-xs #message {
	margin-left: -140px;
	width: 280px;
	font-size: 14px;
}

.layout-xs #message .title {
	padding: 15px 40px 15px 15px;
}

.layout-xs #message .contents {
	margin: -10px 15px 15px;
}