@import url(https://fonts.googleapis.com/css?family=Roboto);

/* -----------  animation keyframes ----------- */

@keyframes dialog-open {
	0% { opacity: 0; -webkit-transform: scale3d(0, 0, 1); transform: scale3d(0, 0, 1); }
	100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
}

@-webkit-keyframes dialog-open {
	0% { opacity: 0; -webkit-transform: scale3d(0, 0, 1); }
	100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); }
}

@keyframes dialog-close {
	0% { opacity: 1; }
	100% { opacity: 0; -webkit-transform: scale3d(0.5, 0.5, 1); transform: scale3d(0.5, 0.5, 1);}
}

@-webkit-keyframes dialog-close {
	0% { opacity: 1; }
	100% { opacity: 0; -webkit-transform: scale3d(0.5, 0.5, 1); transform: scale3d(0.5, 0.5, 1);}
}

@keyframes inputHighlighter {
	from { background:#5264AE; }
  	to 	{ width:0; background:transparent; }
}

@-webkit-keyframes inputHighlighter {
	from { background:#5264AE; }
 	to 	{ width:0; background:transparent; }
}

@-moz-keyframes inputHighlighter {
	from { background:#5264AE; }
  	to 	{ width:0; background:transparent; }
}


/* -----------  Global Elements ----------- */

* {
    box-sizing: border-box;
}

html {
  font-family: 'Roboto', sans-serif;
}

body {
	/*font-family:Helvetica,arial,sans-serif;*/
	font-size: 12px;
	font-weight: 300;
	margin:0px;
}

a {
	text-decoration: none;
}

section {
	height:auto;
	margin-left:auto;
	margin-right:auto;
	background-color:rgb(240,240,240);
}

footer {

	clear: both;
	height:48px;
	margin-left:auto;
	margin-right:auto;
	padding-bottom:0px;
	background-color:rgb(0,128,0);
}

.selectable {
	cursor: pointer;
}

*, *:before, *:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}

/* -----------  App Bar ----------- */

.appBar {
	position: fixed;
	left:0px;
	top:0px;
	right:0px;
	height:48px;
	z-index: 10;
}

.appBar .title {
}

.appBar .leftItems {
	position:absolute;
	left:10px;
	top:0px;
	height:100%;
}

.appBar .rightItems {
	position:absolute;
	right:10px;
	top:0px;
	height:100%;
	width:40px;
}

/* -----------  Button Group ----------- */

.buttonGroup .button {
  	float: left;
  	font-size: 20px;
  	padding: 10px 24px;
  	color: white;
}

.buttonGroup .button.active {
  	background-color: #3e8e41;
}

.buttonGroup .button:first-child {
  border-radius: 4px 0px 0px 4px;
}

.buttonGroup .button:last-child {
  border-radius: 0px 4px 4px 0px;
}

/* Clear floats (clearfix hack) */
.buttonGroup:after {
  content: "";
  clear: both;
  display: table;
}

/* Add a background color on hover */
.buttonGroup .button:hover {

}

/* ----------- Card Class ----------- */

.card {
	position:absolute;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 1px 4px rgba(0,0,0,0.26);
}

.card .header {
	position:relative;
	width:100%;
	font-size: 18px;
	font-weight: bold;
}

.card .subHead {
	position:relative;
	margin-top: 8px;
	font-size: 16px;
	font-weight: normal;
	color:rgb(128,128,128);
}

.card .supportingText {
	position:relative;
	margin-top: 8px;
	font-size: 14px;
	padding-bottom: 5px;
	color:rgb(128,128,128);
}

.card .buttonContainer {
	position:relative;
	left:0px;
	right:0px;
	bottom:0px;
}

/* ----------- Card View Class ----------- */
.CardView {
	position:absolute;
	/*padding-top:8px;
	padding-left:8px;*/
	border-radius: 4px;
	background-color:rgb(255,255,255);
    /*box-shadow: 0px 1px 4px rgba(0,0,0,0.26);*/
    box-shadow: 0 1px 2px 0 rgba(0,0,30,.15),0 2px 8px 1px rgba(0,0,30,.08)
}

/* -----------  Account Card ----------- */

.card.account {
	position:relative;
	width:300px;
	height:100px;
	margin: auto;
	font-size:14px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 4px 8px rgba(0,0,0,0.26);
}

.card.account .name {
	position:absolute;
	top:5px;
	left:5px; 
	right:5px;
	font-size: 24px;
	font-weight: bold;
	padding-bottom: 5px;
	border-bottom: 1px solid rgb(240,240,240);
}

.card.account .title {
	position:absolute;
	top:2px;
	left:5px;
	right:5px;
	font-size:16px;
	font-weight: bold;
}

.card.account .statusHeader {
	position:absolute;
	top:40px;
	left:5px;
	font-size: 20px;
	padding-top: 5px;
}

.card.account .status {
	position:absolute;
	top:40px;
	left:70px; 
	font-size: 20px;
	font-weight: bold;
	padding-top: 5px;
	color:green;
}

.card.account .lastUpdateHeader {
	position:absolute;
	top:70px;
	left:5px;
	font-size:12px;
	color:rgb(192,192,192);
	padding-top: 5px;
}

.card.account .lastUpdate {
	position:absolute;
	top:70px;
	left:80px;
	font-size:12px; 
	color:rgb(192,192,192);
	padding-top: 5px;
}

/* -----------  Checkbox ----------- */

.checkbox {
  display: block;
  position: absolute;
  padding-left: 35px;
  cursor: pointer;
  color:rgb(128,128,128);
  font-size: 16px;
  padding-top: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: rgb(220,220,220);
}

/* On mouse-over, add a grey background color */
.checkbox:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
/*.checkbox input:checked ~ .checkmark {
  background-color: #2196F3;
}*/

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.checkbox input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.checkbox .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* -----------  Customer Card ----------- */

/*.card.customer {
	position:relative;
	width:300px;
	height:100px;
	margin: auto;
	font-size:14px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 4px 8px rgba(0,0,0,0.26);
}

.card.customer .name {
	position:relative;
	top:5px;
	left:5px; 
	right:5px;
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 5px;
	border-bottom: 1px solid rgb(240,240,240);
}

.card.customer .status {
	margin:5px;
	font-size: 14px;
	color:green;
}

.card.customer .status .header{
	float:left;
	padding-right: 5px;
	font-weight: bold;
	color:black;
}

.card.customer .lastUpdate {
	margin:5px;
	font-size:12px; 
	color:rgb(192,192,192);
}

.card.customer .lastUpdate .header {
	float:left;
	padding-right: 5px;
	color:rgb(192,192,192);
}
*/
/* -----------  Device Card ----------- */

.deviceCard {
	position:relative;
	width:300px;
	height:100px;
	margin: auto;
	font-size:14px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 4px 8px rgba(0,0,0,0.26);
}

.deviceCard .name {
	position:relative;
	top:5px;
	left:5px; 
	right:5px;
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 5px;
	border-bottom: 1px solid rgb(240,240,240);
}

.deviceCard .status {
	margin:5px;
	font-size: 14px;
	color:green;
}

.deviceCard .status .header{
	float:left;
	padding-right: 5px;
	font-weight: bold;
	color:black;
}

.deviceCard .lastUpdate {
	margin:5px;
	font-size:12px; 
	color:rgb(192,192,192);
}

.deviceCard .lastUpdate .header {
	float:left;
	padding-right: 5px;
	color:rgb(192,192,192);
}

/* -----------  Example Card ----------- */

.card.example {
	position:relative;
	width:300px;
	height:100px;
	margin: auto;
	font-size:14px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 4px 8px rgba(0,0,0,0.26);
}

.card.example .title {
	position:absolute;
	top:2px;
	left:5px;
	right:5px;
	font-size:18px;
	font-weight: bold;
	border-bottom: 1px solid rgb(240,240,240);
	margin-bottom: 3px;
}

.card.example .description {
	position:absolute;
	top:30px;
	left:5px;
	font-size:16px;
}

/* -----------  GraphView Card ----------- */

.card.graph {
    box-sizing: unset;
}

.card.graph .graphNav {
	height:40px;
	padding: 5px;
	text-align: center;
}

.card.graph .graphNav .seriesItem {
	display: inline-block;
	background-color: rgb(192,192,192);
	color:white;
	padding:10px;
  	border-right: 1px solid rgb(255,255,255);
}

.card.graph .graphNav .seriesItem.active{
	background-color: rgb(38, 166, 154);
}

.card.graph .graphNav .seriesItem:first-child {
  border-radius: 4px 0px 0px 4px;
}

.card.graph .graphNav .seriesItem:last-child {
  border-right: none; /* Prevent double borders */
  border-radius: 0px 4px 4px 0px;
  border-right: none;
}

.card.graph .graphNav .seriesItem:hover {
  background-color: rgb(128,128,128);
}

.card.graph .graphContainer {

}

.card.graph .dygraph-legend {
	padding: 4px;
	border: 1px solid rgb(240,240,240);
	border-radius: 4px;
	box-shadow: 0px 1px 4px rgba(0,0,0,0.26);
	pointer-events: none;
}

.dygraph-legend {
	width:170px !important;
  }

.card.graph .dygraph-xlabel {
	font-size: 16px;
}

.card.graph .legend {

}

.card.graph .unit {
	margin-right: 5px;
}

/* -----------  Dashboard Card ----------- */

.card.dashboard {
	cursor: pointer;
}

.card.dashboard .title {
	position:absolute;
	top:2px;
	left:5px;
	right:5px;
	font-size:24px;
	font-weight: bold;
	cursor: inherit;
}

.card.dashboard  .statusHeader {
	position:absolute;
	bottom:30px;
	left:5px;
}

.card.dashboard  .status {
	position:absolute;
	bottom:30px;
	left:50px; 
	font-weight: bold;
	color:green;
}

.card.dashboard  .lastUpdateHeader {
	position:absolute;
	bottom:5px;
	left:5px;
	font-size:12px;
	color:rgb(192,192,192);
}

.card.dashboard  .lastUpdate {
	position:absolute;
	bottom:5px;
	left:80px;
	font-size:12px; 
	color:rgb(192,192,192);
}

/* ----------- Menu Class ----------- */

.dropDownMenu {
	position:absolute;
	width:100px;
	height:300px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 1px 4px rgba(0,0,0,0.26);
    overflow: hidden;
}

.dropDownMenu .menuItem {
	padding:8px;
	color:rgb(0,0,0);
	font-size: 20px;
  	cursor: pointer;
}

.dropDownMenu .menuItem:hover {
	background-color: rgb(240,240,240);
}

/* ----------- Status Card ----------- */

.statusCard {
	width:300px;
	height:120px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 1px 4px rgba(0,0,0,0.26);
}

.statusCard .title {
	width:100%;
	text-align: center;
	line-height: 36px;
	margin:auto;
	font-size:20px;
	font-weight: bold;
	color:white;
	background-color: rgb(38, 166, 154);
	border-radius: 4px 4px 0px 0px;
}

.statusCard .value {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin-top: 10px;
	color:rgb(0,0,0);

}

.statusCard .progress {	
	width: 90%;
	height:4px;
    margin: auto;
    margin-top: 10px;
    background-color: rgb(220,220,220);
    border-radius: 2px;
}

.statusCard .progressVal {
	width:0%;
	height:4px;
	background-color: rgb(38, 166, 154);
	border-radius: 2px;
}

.statusCard .minMaxVals {
	width: 90%;
    margin: auto;
    margin-top: 5px;
}

.statusCard .minValue {
	float:left;
}

.statusCard .maxValue {
	float:right;
}

/* ----------- Map Class ----------- */

.map {
	width:100%;
	height:auto;
}

.map:after {
  content: "";
  display: table;
  clear: both;
}


/* ----------- Radio Button ----------- */

.radioButton {
  position: absolute;
  padding-top:2px;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 18px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default radio button */
.radioButton input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

/* Create a custom radio button */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 26px;
  width: 26px;
  background-color: rgb(220,220,220);
  border-radius: 50%;
}

/* On mouse-over, add a grey background color */
/*.radioButton:hover input ~ .checkmark {
  background-color: #ccc;
}*/

/* When the radio button is checked, add a blue background */
.radioButton input:checked ~ .checkmark {
  background-color: #2196F3;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.radioButton input:checked ~ .checkmark:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.radioButton .checkmark:after {
 	top: 9px;
	left: 9px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: white;
}

/* -----------  Slide Card ----------- */

.slide {
	position:relative; 
	display: inline-block; 
	width: 60px; 
	height: 34px;	
}

.slide input {
	opacity: 0;
	width: 0;
	height: 0;
}


/* -----------  Stream Card ----------- */

.card.stream .title {
	position:absolute;
	top:2px;
	left:5px;
	right:5px;
	font-size:16px;
	font-weight: bold;
	border-bottom: 1px solid rgb(240,240,240);
}

.card.stream  .statusHeader {
	position:absolute;
	top:30px;
	left:5px;
}

.card.stream  .status {
	position:absolute;
	top:30px;
	left:80px; 
	font-weight: bold;
	color:green;
}

.card.stream  .membersHeader {
	position:absolute;
	top:50px;
	left:5px;
}

.card.stream  .members {
	position:absolute;
	top:50px;
	left:80px; 
}

.card.stream  .lastUpdateHeader {
	position:absolute;
	bottom:5px;
	left:5px;
	font-size:12px;
	color:rgb(192,192,192);
}

.card.stream  .lastUpdate {
	position:absolute;
	bottom:5px;
	left:80px;
	font-size:12px; 
	color:rgb(192,192,192);
}

/* ----------- Dialog Class ----------- */

.dialog {
	position:relative;
	padding:10px;
	font-size:14px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 8px 8px 8px rgba(0,0,0,0.26);
    z-index: 20;
  	box-sizing: border-box;
}

.dialog .title {
	position:relative;
	font-size: 20px;
	font-weight: bold;
}

.dialog .supportingText {
	position:relative;
	top:10px;
	font-size:16px;
	font-weight:normal;
	color:rgb(128,128,128);
}

.dialog .actions {
	position: absolute;
	left:0px;
	bottom:0px;
	width:100%;
	padding: 10px;
}

.dialog .actionItem {
	float:right;
	font-size: 16px;
	font-weight: bold;
	margin-left:20px;
	cursor: pointer;
}


/* ----------- Dialog View Class ----------- */

.dialogView {
	position:relative;
	padding:10px;
	font-size:14px;
	border-radius: 4px;
	background-color:rgb(255,255,255);
    box-shadow: 8px 8px 8px rgba(0,0,0,0.26);
    z-index: 20;
  	box-sizing: border-box;
}

.dialogView .actions {
	position: absolute;
	left:0px;
	bottom:0px;
	width:100%;
	padding: 10px;
}

.dialogView .actionItem {
	float:right;
	font-size: 16px;
	font-weight: bold;
	margin-left:20px;
	cursor: pointer;
}

/* ----------- Grid View ----------- */

.GridView {
	position: relative;
	width:100%;
}

.row {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}

.row .col {
	float: left;
	margin-left: auto;
    left: auto;
    right: auto;
}

/* -----------  Action Button Class ----------- */

.actionButton {
	position: absolute;
	width:36px;
	height:36px;
	border-radius: 18px;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.26);
  	cursor: pointer;
}

.actionButton .label {
	line-height: 36px;
	text-align: center;
}

.actionButton .mini {
	width:24px;
	height:24px;
	border-radius: 12px;
}

.actionButton.account {
	width:24px;
	height:24px;
	background-image: url("./icons/account.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.actionButton.add {
	background-image: url("./icons/add.svg");
	background-repeat: no-repeat;
	background-size: 50% 50%;
	background-position: center;
}

.actionButton.back {
	background-image: url("./icons/back-white.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.actionButton.clear {
	background-image: url("./icons/clear.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.actionButton.filter {
	background-image: url("./icons/filter.svg");
	background-repeat: no-repeat;
	background-size: 50% 50%;
	background-position: center;
}

.actionButton.help {
	background-image: url("./icons/help.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.actionButton.menu {
	background-image: url("./icons/menu.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.actionButton.search {
	background-image: url("./icons/search.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

/* -----------  Icon Button Class ----------- */

.iconButton {
	position: absolute;
	width:36px;
	height:36px;
  	cursor: pointer;
	-webkit-mask-size: cover;
	background: rgb(0,0,0);
}

.iconButton .mini {
	width:24px;
	height:24px;
	border-radius: 12px;
}

.iconButton.add {
	-webkit-mask: url("../../icons/add.svg");
}

.iconButton.addCircle {
	-webkit-mask: url("../../icons/addCircle.svg");
}

.iconButton.back {
	-webkit-mask: url("../../icons/back.svg");
}

.iconButton.dashboard {
	-webkit-mask: url("../../icons/dashboard.svg");
}

.iconButton.filter {
	-webkit-mask: url("../../icons/filter.svg");
}

.iconButton.help {
	-webkit-mask: url("../../icons/help.svg");
}

.iconButton.menu {
	-webkit-mask: url("../../icons/menu.svg");
}

.iconButton.more {
	-webkit-mask: url("../../icons/more_vert.svg");
}

/* ----------- Search Bar ----------- */

.searchBar {
	position: fixed;
	left:0px;
	top:48px;
	right:0px;
	height:48px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 2px 4px rgba(0,0,0,0.26);
    z-index: 15;
}

.searchBar .searchWrapper {
	float:left;
	position: relative;
	width:90%;
	font-size:20px;
}

.searchBar .clearButton {
	border:1px solid transparent;
	background-color: transparent;
	display: inline-block;
	cursor: pointer;
}

.searchBar .clearButton:after {
	content: "X";
	display: block;
	width: 16px;
	height: 16px;
	position: absolute;
	background-color: rgb(192,192,192);
	z-index:1;
	right: 0px;
	top:14px;
	padding: 2px;
	border-radius: 50%;
	text-align: center;
	color: white;
	font-weight: bold;
	font-size: 14px;
	cursor: pointer;
}
/*
.searchBar .clearButton {
	float:right;
	width:20px;
	height:20px;
	margin-top:14px;
	border-radius: 10px;
	background-color: rgb(192,192,192);
	background-image: url("/icons/clear.svg");
	background-repeat: no-repeat;
	background-position: center center;
    box-shadow: 0px 1px 3px rgba(0,0,0,0.26);
}
*/
.searchBar .rightItems {
	position:absolute;
	right:10px;
	height:100%;
}

.searchBar .searchField {
	float:left;
	width:100%;
	height:42px;
	margin-top: 3px;
	margin-left:10px;
	padding:0px;
	border:none;
	font-size:20px;
	background-color: rgb(240,240,240);
    border-radius: 4px;
    padding-left: 10px;
   	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.searchBar .searchField:focus {
	outline: none;
    box-shadow: 0px 2px 6px rgba(0,0,0,0.26);
}

/* ----------- Shadow ----------- */

.shadow {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	background: rgba(55, 58, 71, 0.5);	
	visibility:hidden;
	opacity: 0;
	-webkit-transition: opacity 1s, visibility 2s;
	transition: opacity 1.5s, visibility 1.5s;
	z-index:30;
}

.shadow.open {
	opacity: 1.0;
	visibility:visible;
}

/* ----------- Side Navigation ----------- */

.sideNav {
	position:absolute;
	width:300px;
	height:100%;
	top:0px;
	left:-300px;
	background-color:rgb(255,255,255);
    -webkit-transition: left 0.5s;
    box-shadow: 0px 5px 16px rgba(0,0,0,0.26);
	z-index:100;
}

.sideNav a {
	color:rgb(0,0,0);
}

.sideNav.open {	
	left:0px;
}

.sideNav .header {
	height:56px;
	font-size:24px;
	font-weight: bold;
	text-align:center;
	line-height:56px;
	background-color:rgb(255,255,255);
	border-bottom: 1px solid rgb(196,196,196);
}

.sideNav .footer {
	position:absolute;
	width:100%;
	height:50px;
	left:0px;
	bottom:0px;
}

.sideNav .menuItem {
	height:50px;
	font-size:20px;
	line-height:50px;
	padding-left:20px;
	color:rgb(96,96,96);
	cursor:pointer;
}

.sideNav .menuItem:hover {
	background-color: rgb(240,240,240);
}

.sideNav .menuItem.active {
	color:white;
	background-color: rgb(72,187,87);
    box-shadow: 0px 2px 4px rgba(0,0,0,0.26);
}

.sideNav .menuItem.dashboard {
	padding-left: 40px;
	background-image: url("../icons/ic_dashboard_black_36px.svg");
	background-position: left center;
	background-repeat: no-repeat;
    background-size: 36px 36px;
}

.sideNav .menuItem.accounts {
	padding-left: 40px;
	background-image: url("../icons/ic_account_balance_black_36px.svg");
	background-position: left center;
	background-repeat: no-repeat;
    background-size: 36px 36px;
}

.sideNav .divider {
	height:1px;
	width:100%;
	margin:auto;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	border-bottom: 1px solid rgb(220,220,220);
}

/* ----------- Side Sheet ----------- */

.sideSheet {
	position:fixed;
	width:0px;
	height:100%;
	top:0px;
	right:0px;
	background-color:rgb(255,255,255);
    box-shadow: 0px 5px 16px rgba(0,0,0,0.26);
	z-index:100;
	overflow-x: hidden;
	transition: 0.5s;
}

.sideSheet a {
	color:rgb(0,0,0);
}

.sideSheet.open {
	width:300px;
}

.sideSheet .header {
	height:56px;
	font-size:24px;
	font-weight: bold;
	text-align:center;
	line-height:56px;
	background-color:rgb(255,255,255);
	border-bottom: 1px solid rgb(196,196,196);
}

.sideSheet .footer {
	position:absolute;
	width:100%;
	height:50px;
	left:0px;
	bottom:0px;
}

.sideSheet .menuItem {
	height:50px;
	font-size:20px;
	line-height:50px;
	padding-left:20px;
	color:rgb(96,96,96);
	cursor:pointer;
}

.sideSheet .menuItem:hover {
	background-color: rgb(240,240,240);
}

.sideSheet .menuItem.active {
	color:white;
	background-color: rgb(72,187,87);
    box-shadow: 0px 2px 4px rgba(0,0,0,0.26);
}

.sideSheet .menuItem.dashboard {
	padding-left: 40px;
	background-image: url("../icons/ic_dashboard_black_36px.svg");
	background-position: left center;
	background-repeat: no-repeat;
    background-size: 36px 36px;
}

.sideSheet .menuItem.accounts {
	padding-left: 40px;
	background-image: url("../icons/ic_account_balance_black_36px.svg");
	background-position: left center;
	background-repeat: no-repeat;
    background-size: 36px 36px;
}

.sideSheet .divider {
	height:1px;
	width:100%;
	margin:auto;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	border-bottom: 1px solid rgb(220,220,220);
}

/* ----------- Contained Button Class----------- */

.containedButton {
	position: absolute;
	padding: 10px;
	border-radius: 4px;
	font-size: 16px;
	overflow: hidden;
	text-align: center;
	cursor:pointer;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.26);
}

.containedButton:focus {
  background-color: #27ae60;
}

.containedButton:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 0;
  padding-top: 0;
  border-radius: 100%;
  background-color: rgba(200,200,200,0.5);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.containedButton:active:before {
  width: 120%;
  padding-top: 120%;
  transition: width .5s ease-out, padding-top .5s ease-out;
}

/* -----------  tool bar ----------- */

.toolBar {
	position:relative;
	width:100%;
	height:64px;
	padding-left:24px;
	padding-right:24px;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.26);
}

.toolBar > .navIcon {
	float:left;
	height:24px;
	margin-top:20px;
	margin-bottom:20px;
}

.toolBar > .title {
	float:left;
	padding-left:56px;
	font-size:24px;
	font-weight:normal;
	line-height:64px;
	color:rgb(255,255,255);
}

.toolBar > .actionIcon {
	float:right;
	margin-top:20px;
}

.toolBar > .menuIcon {
	float:right;
	margin-top:20px;
}

/* -----------  Tab Bar ----------- */

.tabBar {
	position: fixed;
	left:0px;
	top:48px;
	right:0px;
	height:48px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style-type: none;
	-webkit-padding-start: 0;
  	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
	background-color:rgb(255,255,255);
}

.tabBar .tabItem {
	position: relative;
	width: 150px;
	height:48px;
	line-height: 48px;
	font-size:20px;
	color: #607D8B;
	overflow: hidden;
	text-align: center;
	cursor: pointer;
	user-select: none;
}

.tabBar .indicator {
  width: 150px;
  height: 3px;
  background-color: #2196F3;
  position: absolute;
  margin-top: 45px;
  margin-left:0;
  -webkit-transition: margin 0.5s ease;
  transition: margin 0.5s ease;
  z-index: 300;
}

.tabBar .tabItem .cercle {
  width: 0px;
  height: 0px;
  position: absolute;
}

.tabBar .tabItem .light .cercle {background-color: white}
.tabBar .tabItem.dark .cercle {
	background-color:black;
}

.tabBar .tabItem .cercle.anim {
  opacity: 0.2;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
  -webkit-animation: touch 1.2s ease-out;
          animation: touch 1.2s ease-out;
}

@-webkit-keyframes touch {
  100% { 
    width: 600px;
    height: 600px;
    border-radius: 600px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    margin: -300px;
  }
}

@keyframes touch {
  100% { 
    width: 600px;
    height: 600px;
    border-radius: 600px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    margin: -300px;
  }
}

/* -----------  View Class----------- */

.View {
	position: absolute;
}

.View.open{
	visibility: visible;
}

/* -----------  TabView Class----------- */

.tabView {
	position: absolute;
	height:100%;
	width:100%;
}

.tabView.open{
	visibility: visible;
}

/* -----------  Content section ----------- */

.content {
	padding-top:20px;
}

/* -----------  bottom navigation ----------- */

.bottomNav {
	position:absolute;
	width:100%;
	height:90px;
	bottom:-60px;
	left:0px;
	background-color:rgb(255,255,255);
    -webkit-transition: bottom 0.5s;
    box-shadow: 0px 5px 16px rgba(0,0,0,0.26);
	z-index:20;
}

.bottomNav.open {	
	bottom:0px;
}

.bottomNav .header {
	height:56px;
	font-size:24px;
	padding-left:10px;
	margin-top:0px;
	text-align:center;
	line-height:56px;
	background-color:rgb(255,255,255);
	box-shadow:none;
	border-bottom: 1px solid rgb(196,196,196);
}

/* -----------  Grid Class ----------- */

.grid {
	width:100%;
	height:auto;
}

.grid:after {
  content: "";
  display: table;
  clear: both;
}

.grid-pad {
  padding: 10px 0px 0px 20px;
}

.grid-pad > [class*='col-']:last-of-type {
  padding-right: 20px;
}

[class*='col-'] {
  float: left;
}

.col-1-2 {
  width: 50%;
}
.col-1-4 {
  width: 25%;
}
.col-1-8 {
  width: 12.5%;
}

.col-1-3 {
  width: 33.33%;
}

.col-2-3 {
  width: 66.66%;
}

section.actions {
	margin-top:40px;
	height:64px;
	width:85%;
    margin-left:auto; 
    margin-right:auto;
	line-height:64px;
	border-collapse: collapse;
	background-color:rgb(255,255,255);
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.25); 
}

section.actions div {
	float:right;
    font-size: 16px;
	height:48px;
	padding-right:30px;
	color:rgb(74,144,226);
}

section.actions .delete {
	color:rgb(196,196,196);
}

section.actions .delete.active {
	color:rgb(74,144,226);
}

/* -----------  data table ----------- */

.dataTable {
	position:absolute;
	border-collapse: collapse;
	border-radius: 4px;
	background-color:rgb(255,255,255);
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.25); 
}

.dataTable th{
/*    font-size: 18px;*/
	/*height:48px;*/
}

.dataTable tfoot td{
	font-size:14px;
	text-align:right;
	color:rgba(0,0,0,.4);
}

.dataTable tfoot span{
	padding-right:30px;
}

.dataTable tr{
/*	height:48px;*/
/*	background-color:rgb(255,255,255);
*/}

.dataTable tr.select{
	height:48px;
	background-color:rgb(220,220,220);
}

.dataTable tr.selectable:hover {
	background-color:rgb(240,240,240);
}

.dataTable th:first-child, .dataTable td:first-child {
	padding-left:24px;
}

.dataTable th:last-child, .dataTable td:last-child {
	padding-left:24px;
}

.message {
	width:90%;
	height:32px;
	margin-top:1px;
	margin-left:auto;
	margin-right:auto;
	background-color:rgb(96,96,96);
}

.scrollViewHeader {
	width:95%;
	font-size:32px;
	margin-top:20px;
	margin-left:auto;
	margin-right:auto;
	color:rgb(74,144,226);	
}

.scrollView {
	width:95%;
	height:200px;
	margin-top:10px;
	margin-left:auto;
	margin-right:auto;
    overflow-x: scroll;
    white-space: nowrap;
}

.scrollView div {
	display:inline;
}

.touch {
  -webkit-overflow-scrolling: touch;
}

/* -----------  dialog  ----------- */

/*
.dialog {
	position:absolute;
	background-color:rgb(255,255,255);
    box-shadow: 0px 2px 5px rgb(0,0,0,.26);
	border-radius:4px;
	visibility:hidden;
	opacity: 0;
	z-index:20;
	overflow:hidden;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: forward;
	animation-fill-mode: forward;
	-webkit-animation-timing-function: cubic-bezier(0.6,0,0.4,1);
	animation-timing-function: cubic-bezier(0.6,0,0.4,1);
}

.dialog.open {	
	opacity: 1.0;
	visibility:visible;
	-webkit-animation-name: dialog-open;
	animation-name: dialog-open;
}

.dialog.close, .dialog.cancel {
	visibility:visible;
	-webkit-animation-name: dialog-close;
	animation-name: dialog-close;
	-webkit-animation-fill-mode: forward;
	animation-fill-mode: forward;
	-webkit-animation-timing-function: cubic-bezier(0.6,0,0.4,1);
	animation-timing-function: cubic-bezier(0.6,0,0.4,1);
}

.dialog.doubleSided .sides {
	position: relative;
	width:100%;
	height:100%;
	transition: 0.6s;
	transform-style: preserve-3d;
}

.dialog.doubleSided.rotate .sides {
	transform: rotateY(180deg);
}

.dialog .front, .dialog .back {
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height:100%;
	backface-visibility: hidden;
}

.dialog .front {
//	z-index: 2;
	transform: rotateY(0deg);
}

.dialog .back {
	transform: rotateY(180deg);
}

.dialog .title {
	float:left;
	width:100%;
	height:52px;
	padding-left:24px;
	border-top-left-radius:4px;
	border-top-right-radius:4px;
	font-size:24px;
	font-weight:normal;
	line-height:52px;
	color:rgb(255,255,255);
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.25);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.dialog .content {
	padding-top:70px;
	padding-left:24px;
	padding-right:24px;
	padding-bottom:24px;
	color:rgb(0,0,0);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.dialog .content table {
	margin-top:20px;
	border-collapse: collapse;
	border-spacing: 0px;
}

.dialog .content table tr td { 
	padding: 8px; 
	border: none;
	font-size:24px;
	font-weight:normal;
}

.dialog .actions {
	position:absolute;
	width:100%;
	bottom:0px;
	height:52px;
	padding:8px;
	border-top: 1px solid rgb(220,220,220);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.dialog .actions .button {
	float:right;
	font-size:20px;
	font-weight:normal;
	padding:8px;
	color:rgb(74,144,226);
	cursor: pointer;
}

*/
/* -----------  flat button ----------- */

.flat-Button {
	position: relative;
	display: block;
	/* margin: 20px auto; */
	overflow: hidden;
	border-width: 0;
	outline: none;
	border-radius: 2px;
	height:36px;
	max-width:80px;
	padding-left:8px;
	padding-right:8px;
	border-radius:4px;
	text-align: center;
	font-size:24px;
	line-height:36px;
	cursor: pointer;
}

.flat-Button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 0;
  padding-top: 0;
  border-radius: 100%;
  background-color: rgba(200,200,200,0.5);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.flat-Button:active:before {
  width: 120%;
  padding-top: 120%;
  transition: width .5s ease-out, padding-top .5s ease-out;
}

/* -----------  Action Button Class ----------- */

.action-button {
	position:relative;
	height:56px;
	width:56px;
	border-radius:28px;
	border: none;
	cursor: pointer;
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.26);
}

.action-button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 0;
  padding-top: 0;
  border-radius: 100%;
  background-color: rgba(200,200,200,0.5);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.action-button:active:before {
  width: 100%;
  padding-top: 100%;
  transition: width .1s ease-out, padding-top .1s ease-out;
}

.action-button-small {
	height:48px;
	width:48px;
	border-radius:24px;
	cursor: pointer;
  	border: none;
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.26);
}

.action-button-small:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 0;
  padding-top: 0;
  border-radius: 100%;
  background-color: rgba(200,200,200,0.5);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.action-button-small:active:before {
  width: 100%;
  padding-top: 100%;
  transition: width .1s ease-out, padding-top .1s ease-out;
}

.action-button.add {
	height:56px;
	width:56px;
	border-radius:28px;
	cursor: pointer;
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.26);
	background-image: url("../images/icons/ic_add_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button.done {
	height:56px;
	width:56px;
	border-radius:28px;
	cursor: pointer;
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.26);
	background-image: url("../icons/ic_done_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button.replay {
	background-image: url("../icons/ic_replay_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button.search {
	height:56px;
	width:56px;
	border-radius:28px;
	cursor: pointer;
	box-shadow: 0px 2px 4px 0 rgba(0, 0, 0, 0.26);
	background-image: url("../icons/ic_search_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button.settings {
	background-image: url("../icons/ic_settings_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button.devices {
	background-image: url("../icons/ic_devices_other_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button.connect {
	background-image: url("../icons/ic_cast_connected_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button-small.add {
	background-image: url("../icons/ic_add_white_24px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button-small.search {
	background-image: url("../icons/ic_search_white_36px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

.action-button-small.delete {
	background-image: url("../icons/ic_delete_white_36px.svg");
	background-position: center center;
	background-repeat: no-repeat;
    background-size: 32px 32px;
}

/* -----------  Contained Button ----------- */

.ContainedButton {
	position: absolute;
	border: none;
	cursor: pointer;
	min-width: 64px;
	height:36px;
	line-height:36px;
	padding-left: 8px;
	padding-right: 8px;
	border-radius: 4px;
	font-size:18px;
	text-align: center;
  	box-shadow: 0px 2px 4px rgba(0,0,0,.26);
}

/* -----------  Outlined Button ----------- */

.OutlinedButton {
	position: absolute;
	cursor: pointer;
	min-width: 64px;
	height:36px;
	line-height:36px;
	padding-left: 8px;
	padding-right: 8px;
	font-size:18px;
	text-align: center;
	border-radius: 4px;
	border-style:solid;
	border-width:1px;
}

/* -----------  Text Button ----------- */

.TextButton {
	position: absolute;
	height:40px;
	padding: 4px;
	box-sizing: border-box;
	border-radius: 4px;
	cursor: pointer;
	border: none;
	background-color: Transparent;
    background-repeat:no-repeat;
    overflow: hidden;
    outline:none;
}

.TextButton .label {
	float: right;
	line-height: 40px;
	padding-right: 5px;
	font-size:inherit;
	text-align: center;
	color:inherit;
}

.TextButton .icon {
	float:left;
	width:36px;
	height:36px;
    margin-right: 4px;
}

.TextButton.menu {
	width:32px;
	height:32px;
	background-image: url("./icons/menu.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.TextButton .icon.more {
	background-image: url("./icons/more_vert.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.TextButton.help {
	width:16px;
	height:16px;
	margin-top: 10px;
	background-image: url("./icons/help.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

/* -----------  Label Field ----------- */

.labelField {
	position:relative; 
	margin-bottom:20px; 
	font-size:18px;
}

/* -----------  Date Field Class ----------- */

.dateField input 
{
	display:block;
	background-color: inherit;
	width:100%;
	font-family: inherit;
  	font-size:16px;
	padding:10px 10px 10px 0px;
  	border:none;
  	border-bottom: 1px solid rgb(196,196,196);
	outline:none;
}

.dateField .help {
	position:absolute;
	width:100%; 
	pointer-events:none;
	opacity:0.5;
}

.dateField .error {
	position:absolute;
	width:100%; 
	pointer-events:none;
	opacity:0.5;
	color:rgb(192,192,192);
}

.dateField input:focus ~ label, .dateField input:valid ~ label     
{
  top:-10px;
  font-size:12px;
  color:rgb(74,144,226);
}

.dateField label {
 	color:#999; 
 	font-size:16px;
 	font-weight:normal;
 	position:absolute;
 	pointer-events:none;
 	top:10px;
	transition:0.2s ease all; 
	-moz-transition:0.2s ease all; 
	-webkit-transition:0.2s ease all;
}

/* -----------  Date Time Field Class ----------- */

.dateTimeField input 
{
	position:absolute;
	display:block;
	background-color: inherit;
	width:100%;
	font-family: inherit;
  	font-size:16px;
	padding:10px 10px 10px 0px;
  	border:none;
  	border-bottom: 1px solid rgb(196,196,196);
	outline:none;
}

.dateTimeField .help {
	position:absolute;
	width:100%; 
	pointer-events:none;
	top:40px;
}

.dateTimeField .error {
	position:absolute;
	width:100%; 
	pointer-events:none;
	opacity:0.5;
	color:rgb(192,192,192);
}

.dateTimeField input:focus ~ label, .dateTimeField input:valid ~ label     
{
  top:-10px;
  font-size:12px;
  color:rgb(74,144,226);
}

.dateTimeField label {
 	color:#999; 
 	font-size:16px;
 	font-weight:normal;
 	position:absolute;
 	pointer-events:none;
 	top:10px;
	transition:0.2s ease all; 
	-moz-transition:0.2s ease all; 
	-webkit-transition:0.2s ease all;
}


/* -----------  Text Field Class ----------- */

.textField input 
{
	display:block;
	background-color: inherit;
	width:100%;
	font-family: inherit;
  	font-size:18px;
	padding:10px 10px 10px 5px;
  	border:none;
  	border-bottom: 1px solid rgb(196,196,196);
	outline:none;
}

.textField .help {
	position:absolute;
	width:100%; 
	left:0px;
	pointer-events:none;
}

.textField input:focus ~ label, .textField input:valid ~ label     
{
  top:-16px;
  font-size:14px;
  color:rgb(74,144,226);
}

.textField label {
 	color:#999; 
 	font-size:18px;
 	font-weight:normal;
 	position:absolute;
 	pointer-events:none;
 	top:10px;
	transition:0.2s ease all; 
	-moz-transition:0.2s ease all; 
	-webkit-transition:0.2s ease all;
}

/* -----------  text area ----------- */

.textArea textarea
{
	display:block;
	background-color: inherit;
	width:100%;
	font-family: inherit;
  	font-size:18px;
	padding:10px 10px 10px 5px;
  	border:none;
  	border-bottom: 1px solid rgb(196,196,196);
	outline:none;
	resize: none;
  	background: transparent;
}

.textArea label {
 	color:#999; 
 	font-size:18px;
 	font-weight:normal;
 	position:absolute;
 	pointer-events:none;
 	top:10px;
	transition:0.2s ease all; 
	-moz-transition:0.2s ease all; 
	-webkit-transition:0.2s ease all;
}

.textArea .help {
	position:absolute;
	width:100%; 
	left:0px;
	pointer-events:none;
	opacity:0.5;
}

.textArea textarea:focus ~ label {
	position: absolute;
  	display: block;
  	top:-16px;
  	font-size:14px;
  	color:rgb(74,144,226);
}

.textArea textarea:valid ~ label {
	position: absolute;
  	display: block;
  	top:-16px;
  	font-size:14px;
  	color:rgb(74,144,226);
}

/*.textArea:focus ~ .highlight {
  animation:inputHighlighter 0.3s ease;
}*/

/* -----------  switch class----------- */

.switch {
  position: absolute;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider {
  background-color: #2196F3;
}

input:focus + .slider {
  box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}

/* -----------  switch field----------- */

.onOffSwitch {
    position: relative; width: 90px;
    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
}
.onOffSwitch-checkbox {
    display: none;
}
.onOffSwitch-label {
    display: block; overflow: hidden; cursor: pointer;
    border: 2px solid #999999; border-radius: 20px;
}
.onOffSwitch-inner {
    display: block; width: 200%; margin-left: -100%;
    transition: margin 0.3s ease-in 0s;
}
.onOffSwitch-inner:before, .onOffSwitch-inner:after {
    display: block; float: left; width: 50%; height: 30px; padding: 0; line-height: 30px;
    font-size: 14px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: bold;
    box-sizing: border-box;
}
.onOffSwitch-inner:before {
    content: "ON";
    padding-left: 10px;
    background-color: #00BCD4; color: #FFFFFF;
}
.onOffSwitch-inner:after {
    content: "OFF";
    padding-right: 10px;
    background-color: #EEEEEE; color: #999999;
    text-align: right;
}
.onOffSwitch-switch {
    display: block; width: 22px; margin: 6px;
    background: #FFFFFF;
    position: absolute; top: 0; bottom: 0;
    right: 56px;
    border: 2px solid #ffffff; border-radius: 20px;
  	box-shadow: 0px 2px 4px rgba(0,0,0,.26);
    transition: all 0.3s ease-in 0s; 
}
.onOffSwitch-checkbox:checked + .onOffSwitch-label .onOffSwitch-inner {
    margin-left: 0;
}
.onOffSwitch-checkbox:checked + .onOffSwitch-label .onOffSwitch-switch {
    right: 0px; 
}

/* -----------  MARK: Snackbar ----------- */

.snackBar {
	position:absolute;
	bottom:40px;
	left:-600px;
	height:48px;
	line-height: 48px;
	padding-left:10px;
	padding-right: 10px;
	font-size: 18px;
	background-color: rgb(82,86,89);
	color:rgb(255,255,255);
	box-shadow: 0px 2px 4px rgba(0,0,0,.26);
	border-radius: 4px;
  	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
 	transition: left 0.7s, transform 0.7s;
}

.snackBar .label {
	float:left;
	padding-right: 10px;
	font-size: 14px;
	font-weight: normal;
}

.snackBar .action {
	float: left;
	font-size: 16px;
	font-weight: normal
}

.snackBar.show {
	left:20px;
}

/* -----------  Drop Down Class ----------- */

.dropDown {
	position:absolute;
}

.dropDown .title {
	font-family: inherit;
	background-color: transparent;
	padding: 4px 0;
	font-size: inherit;
	border-bottom: 1px solid rgba(0,0,0, 0.12);
}

.dropDown .title::after {
	content:"";
	float: right;
	margin-top: 10px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #2f2f2f;
}

.dropDown .label {
	height:12px;
	line-height: 12px;
	font-family: inherit;
	background-color: transparent;
	padding: 4px 0;
	font-size: inherit;
	color: rgba(0,0,0, 0.5);
}

.dropDown .options {
	position: absolute;
	width:100%;
	left:0px;
	border-radius: 2px;
	visibility: hidden;
	background-color: rgb(255,255,255);
	box-shadow: 0px 2px 8px rgba(0,0,0,.26);
}

.dropDown .options.show {
	visibility: visible;
}

.dropDown .options .item {
	height:36px;
	line-height: 36px;
	padding-left: 5px;
	color:rgb(0,0,0);
	font-size: inherit;
}

.dropDown .options .item:hover {
	background-color: rgb(240,240,240);
}

/* -----------  Date Picker Class ----------- */

.datePicker {
	position:absolute;
	border-bottom:1px solid rgb(192,192,192);
}

.dataPicker .cal {
	width:100%;
}

.datePicker .label {
	width:300px;
	color: rgb(128,128,128);
	font-size: 20px;
}

.datePicker .editIcon {
	position: absolute;
    right: 10px;
    top: 0px;
    height: 24px;
    width: 24px;
    color:rgb(192,192,192);
    visibility: hidden;
	background-image: url("./icons/edit.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.datePicker .editIcon.show {
	visibility: visible;
}

.datePicker .entry {
	position: absolute;
	width:300px;
	height:280px;
	left:0px;
	border-radius: 4px;
	visibility: hidden;
	background-color: rgb(255,255,255);
  	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	box-shadow: 0px 2px 16px rgba(0,0,0,.26);
}

.datePicker .entry .dayHeader {
	font-size: 14px;
	color:rgb(192,192,192);
}

.datePicker .entry .days {
	font-size: 16px;
	color:#00A6D6;
}

.datePicker .entry.show {
	visibility: visible;
	z-index: 100;
}

.datePicker .entry .header {
	width:100%;
	height:80px;
	background-color: #00A6D6;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}

.datePicker .entry .header .title {
	position:absolute;
	width:100%;
	top:10px;
	left:10px;
	font-size:16px;
	text-align: center;
}

.datePicker .entry .header .date {
	position:absolute;
	width:100%;
	top:40px;
	font-size:22px;
	font-weight: bold;
	text-align: center;
}

.datePicker .entry .ok {
	position:absolute;
	bottom:10px;
	right:70px;
	color:#00A6D6;
	font-size:14px;	
	font-weight: bold;
}

.datePicker .entry .cancel {
	position:absolute;
	bottom:10px;
	right:10px;
	color:#00A6D6;
	font-size:14px;
	font-weight: bold;
}

.datePicker .entry .yearMonth {
	position:absolute;
	top:90px;
	left:10px;
	right:10px;
	color:rgb(128,128,128);
	font-size:16px;
	text-align: center;
}

.datePicker .entry .prev {
	position:absolute;
	top:90px;
	left:10px;
	color:#00A6D6;
	font-size:16px;
}

.datePicker .entry .next {
	position:absolute;
	top:90px;
	right:10px;
	color:#00A6D6;
	font-size:16px;
}

.datePicker .entry .cal {
	position: absolute;
	width:100%;
	top:115px;
	font-size: 16px;
	color:rgb(128,128,128);
}

.datePicker .entry .cal td {
	text-align: center;
}

.datePicker .entry .input {
	position: absolute;
	width:90%;
	height:40px;
	top:80px;
	left:10px;
	right:10px;
	margin:auto;
  	border:none;
  	border-bottom: 1px solid #00A6D6;
	outline:none;
	font-size: 20px;
	background-color:rgb(240,240,240);
}

/* -----------  Linear Progress Indicator Class ----------- */

/* Standard syntax */
@keyframes example {
  from {left: -25%;}
  to {left: 110%;}
}

.linearProgress {
	position: absolute;
	width:100%;
	height:4px;
	background-color: rgb(192,192,192);
	visibility: hidden;
	z-index: 100;
}

.linearProgress.show {
	visibility: visible;
}

.linearProgress .slider {
	position:absolute;
	width:200px;
	height:4px;
	left:-200px;
}

.linearProgress .slider.translate {
	-webkit-animation-name: example; /* Safari 4.0 - 8.0 */
	-webkit-animation-duration: 2s; /* Safari 4.0 - 8.0 */
	animation-name: example;
	animation-duration: 2s;
	animation-iteration-count: infinite;
  	animation-direction: alternate;
	animation-timing-function: linear;
}


/* -----------  color pallette ----------- */

.lightBlue-500 {background-color:#03A9F4;}
.lightBlue-900 {background-color:#01579B;}

.purple-500 {background-color:#9C27B0;}
.purple-700 {background-color:#7B1FA2;}
.purple-a200 {background-color:#EA80FC;}

.indigo-700 {background-color:#303F9F;}
.indigo-500 {background-color:#3F51B5;}

.cyan-500 {background-color:#00BCD4;}

.grey-100 {background-color:#F5F5F5;}
.grey-400 {background-color:#BDBDBD;}
.grey-500 {background-color:#9E9E9E;}

.white {background-color:#FFFFFF;}


/* -----------  text color palette----------- */

.text-white {color:#FFFFFF;}
.text-black {color:#000000;}

.text-grey-100 {color:#F5F5F5;}
.text-grey-400 {color:#BDBDBD;}
.text-grey-500 {color:#9E9E9E;}

.text-lightBlue-500 {color:#03A9F4;}
.text-lightBlue-900 {color:#01579B;}

.text-cyan-500 {color:#00BCD4;}

