#fps {
	font-size: 50px; position: absolute; top: 5px; left: 5px; z-index: 100000; font-family: monospace;
}

/*
#animationTimingsDisplay {
	position: absolute;
	bottom: 0;
	opacity: 0.5;
	pointer-events: none;
}

#animationTimingsLegend {
	position: absolute;
	bottom: 0;
	pointer-events: none;
	width: 1280px;
	height: 216px;
	overflow: hidden;
	white-space: normal;
}

#animationTimingsLegend .item {
	display: inline-block;
	vertical-align: top;
	padding-left: 10px;
	font-size: 25px;
}

#animationTimingsLegend .item::before {
	content: '█';
	display: inline-block;
	padding-right: 5px;
}*/



@keyframes clickPulse {
	0% {
		-webkit-transform: none;
		transform: none;
	}
	10% {
		-webkit-transform: scale(0.90, 0.90);
		transform: scale(0.90, 0.90);
	}
	55% {
		-webkit-transform: scale(1.25, 1.25);
		transform: scale(1.25, 1.25);
	}
	100% {
		-webkit-transform: none;
		transform: none;
	}
}

@keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes loadingStripes {
	0% {
		background-position: 0px 0px;
	}
	100% {
		background-position: 160px 0px;
	}
}

@keyframes delay {
	0% {
		outline-color: #000;
	}
	100% {
		outline-color: #FFF;
	}
}


* {
	margin: 0;
	padding: 0;
}

html, body {
	width: 1280px;
	height: 720px !important;
	overflow: hidden;
	margin: 0;
	font-family: 'Open Sans';
	position: relative;
}

.fade {
	transition: opacity 0.3s linear;
	display: block !important;
}

.fade.ng-hide-remove,
.fade.ng-hide-add.ng-hide-add-active {
	opacity: 0;
	display: block !important;
}

.fade.ng-hide-add,
.fade.ng-hide-remove.ng-hide-remove-active {
	opacity: 1;
	display: block !important;
}

.delayHide.ng-hide-add {
	animation: 0.3s delay;
}


.delayHide.ng-hide-remove {
	animation: 0s delay;
}



.login {
	position: relative;
}

.loginBg {
	position: absolute;
	z-index: 1;
	top: -10px;
    left: -10px;
    right: -10px;
	bottom: -10px;
	background-image: url('/images/splash.jpg');
	background-size: cover;
	background-position: center center;
}

.login .row {
	position: relative;
	z-index: 3;
}

.login .signinForm {
	width: 400px;
	padding: 25px;
	background: rgba(255, 255, 255, 0.7);
	margin: auto;
	margin-top: 40px;
}

.loginContent {
	float: left;
	position: relative;
	width: 100%;
	z-index: 3;
}

.login .logoContainer {
	padding-right: 40px;
	overflow: hidden;
	text-align: center;
}

.login .logo {
	width: 100%;
}

.login label {
	display: block;
	font-size: 1rem;
}

.login input {
	display: block;
	font-size: 1rem;
	margin: auto;
	width: 394px;
	margin-top: 10px;
	margin-bottom: 20px;
}

.login .signupMessage {
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	font-size: 0.8rem;
	color: white;
	margin-top: 50px;
	text-align: center;
	z-index: 2;
}

.mainApplication {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	height: 100%;
}



.workspace {
	height: 100%;
	overflow: hidden;
}

.workspace.expanded {
}

/*.focused {
	outline: 2px dashed white;
}*/

nav.main {
	float: left;
	width: 10%;
	height: 100%;
	background: linear-gradient(to bottom, #3F4042, #4F4C4C 35%, #3F4042);
}

nav.main::before {
	content: ' ';
	display: block;
	height: 6%;
}

nav.main .module {
	position: relative;
	padding: 12px 0;
}

nav.main .module .slideBackground {
	position: absolute;

	top: 0;
	left: -100%;

	height: 100%;
	width: 100%;
}

nav.main .module.checked .slideBackground {
	left: 0;
}

nav.main .module .iconContainer {
	height: 75px;
	width: 75px;
	margin: auto;
	border-style: solid;
	border-width: 2px;
	border-radius: 55px;
	overflow: hidden;
	position: relative;
	box-shadow: 2px 2px 8px black;
}

nav.main .module.checked .iconContainer {
	/*-webkit-animation: clickPulse 0.5s ease 0s 1;*/
	box-shadow: none;
}

nav.main .module .iconContainer .icon {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;

	border-radius: 80px;

	background-color: #FFFFFF;
	background-size: contain;
	background-position: center center;
}

nav.main .module .iconContainer .icon.active {
	z-index: 0;

	background-color: transparent;
	-webkit-filter: grayscale(100%) brightness(100);
}

nav.main .module .iconContainer .icon.inactive {
	z-index: 1;


	opacity: 0;
}

nav.main .module .iconContainer.focused .icon.inactive,
nav.main .module.checked .iconContainer .icon.inactive,
nav.main .module.tizenhovered .iconContainer .icon.inactive {
	opacity: 1;
}

nav.main .module .unread {
	position: absolute;
	right: 20px;
	top: 20px;
	width: 36px;
	height: 36px;
	border-radius: 30px;
	line-height: 36px;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	color: white;
	border: 2px solid white;
	z-index: 10;
}


#content {
	float: left;
	width: 80%;
	height: 100%;
	/*background: black;*/
	position: relative;
	overflow: hidden;
}

#content .fullscreenMode{
	float: left;
	width: 100%;
	height: 100%;
	/*background: black;*/
	position: relative;
	overflow: hidden;
}

#content .heartlogo {
	width: 50px;
	margin: 10px;
}

#content .moduleContent {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;

	-webkit-transform: translateX(-100%) /*translateZ(0)*/;
	transform: translateX(-100%) /*translateZ(0)*/;

	color: white;
}

#content .moduleContent.shown {
	-webkit-transform: translateX(0%) /*translateZ(0)*/;
	transform: translateX(0%) /*translateZ(0)*/;
	z-index: 1000;
}

#content .moduleContent.hiddenHome {
}

#content .moduleContent .moduleController,
#content .moduleContent .moduleContainer {
	height: 100%;
}

#content .filterMenu {
	display: block;
	width: 150px;
	height: 100%;
	float: left;
}

#content .filterMenu .arrow {
	height: 5%;
}

#content .filterMenu .arrow .center {
	display: block;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

#content .filterMenu .arrow .center img {
	display: block;
	margin: auto;
}

#content .filterMenu .infiniteMenuContainer {
	overflow: hidden;
	height: 90%;
}

#content .filterMenu .item {
	/*border: 2px solid black;*/
	box-shadow: 2px 2px 8px black;
	width: 110px;
	height: 110px;
	border-radius: 80px;
	background: white;
	color: black;
	text-align: center;
	margin: 10px auto;
	-webkit-margin-collapse: separate;
	position: relative;
	overflow: hidden;
}

#content .filterMenu .item.disabled {
	background: #BBBBBB;
}

#content .filterMenu .item .textContainer {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#content .filterMenu .item .text {
	display: block;
	font-size: 0.7rem;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	margin: 0 10px;
}

#content .filterMenu .item .icon {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	background-repeat: no-repeat;
}

#content .page {
	position: relative;
	width: auto;
	height: 100%;
	overflow: hidden;
}

#content .page .submodule,
#content .page .submoduleController {
	height: 100%;
}

#content tiles-view,
#content accordion-view,
#content pages-view {
	position: relative;
	left: 50%;
	background: #EEEEEE;
	opacity: 0;
}

#content .shown tiles-view,
#content .shown accordion-view,
#content .shown pages-view {
	left: 0%;
	opacity: 1;
}

#content tiles-view .tile,
#content accordion-view .panel,
#content pages-view .pagesViewPage {
	border-color: #121316;
}

.fullScreenMessage {
	position: relative;
	display: block;
	background: #EEEEEE;
	overflow: hidden;
	height: 100%;
}

.fullScreenMessage .content {
	position: absolute;

	top: 50%;
	left: 50%;

	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);

	color: #444444;

	font-size: 1.2rem;

	text-align: center;
}

.spinner {
	display: block;

	border-right-width: 8px;
	border-right-style: solid;

	border-radius: 80px;
	width: 160px;
	height: 160px;

	-webkit-transform-origin: center center;
	transform-origin: center center;

	-webkit-animation: spinner 0.6s linear 0s infinite;
}


#sidebar {
	float: left;
	width: 10%;
	height: 100%;
	background: linear-gradient(to bottom, #3F4042, #4F4C4C 35%, #3F4042);
}

#sidebar .hScrollArrows {
	height: 100%;
	padding-bottom: 170px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#sidebar .sidebarButton {
	padding: 50px 15px;
	overflow: hidden;
}

#sidebar .hScrollArrows .sidebarButton.arrow {
	padding: 0;
	opacity: 0;
}

#sidebar .hScrollArrows .sidebarButton.arrow.visible {
	opacity: 1;
}

#sidebar .sidebarButton .icon {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	margin: auto;
}

#sidebar .sidebarButton.home .icon {
	background-image: url(/images/home.svg);
	width: 100px;
	height: 70px;
}

#sidebar .sidebarButton.fullscreen .icon {
	background-image: url(/images/fullscreen.svg);
	width: 100px;
	height: 70px;
}

#sidebar .hScrollArrows .sidebarButton.arrow {
	position: relative;
	height: 50%;
}

#sidebar .sidebarButton.arrow .icon {
	width: 28px;
	height: 57px;
}

#sidebar .hScrollArrows .sidebarButton.arrow .icon {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#sidebar .sidebarButton.arrow.left .icon {
	background-image: url(/images/leftArrow.png);
}

#sidebar .sidebarButton.arrow.right .icon {
	background-image: url(/images/rightArrow.png);
}

#newsfeed {
	position: absolute;
	background: #404448;
	bottom: 0;
	height: 20%;
	width: 100%;
	overflow: hidden;
	-webkit-transform: translateY(100%) /*translateZ(0)*/;
	transform: translateY(100%) /*translateZ(0)*/;
	z-index: 80;
}

#newsfeed.expanded {
	-webkit-transform: translateY(0%) /*translateZ(0)*/;
	transform: translateY(0%) /*translateZ(0)*/;
}

#newsfeed.hiddenByPopup {
	display: none;
}

#popups {
	position: absolute;
	background: #404448;
	bottom: 0;
	height: 20%;
	width: 100%;
	overflow: hidden;
	z-index: 100;
	-webkit-transform: translateY(100%) /*translateZ(0)*/;
	transform: translateY(100%) /*translateZ(0)*/;
}

#popups.expanded {
	-webkit-transform: translateY(0%) /*translateZ(0)*/;
	transform: translateY(0%) /*translateZ(0)*/;
}

#popups .popupContainer {

}

.fullScreen {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10000;
}

.videoPage {
	background: black;
}


.videoPage .title {
	color: #333333;
	font-size: 0.8rem;
    line-height: 76px;
    margin-left: 10px;
    color: #666666;
    font-weight: bold;
}

.videoPage .button {
	position: relative;
	overflow: hidden;
	border-radius: 15px;
}

.videoPage .button.back {
	position: absolute;
	top: 10px;
	right: 10px;
    z-index: 1;
}

.videoPage .button .background {
	position: absolute;

	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.videoPage .button .inner {
	position: relative;

	border: 8px solid rgba(255, 255, 255, 0.3);
	border-radius: 15px;

    height: 40px;
    width: 100px;
}

.videoPage .button .inner .text {
	color: white;

	font-size: 0.6rem;

	text-align: center;

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
}

.videoPage jw-video .controls {
	margin-top: 40px;
}

.videoPage .photo-slide-show{
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
}

.videoCallControls {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0.6;
}

.videoCallControls nav.video {
	background: none;
}

.videoCallControls nav.video .module .iconContainer .icon {
	background: none;
}

.videoCallControls #sidebar {
	float: right;
	background: none;
}