html, body {
	font-family: "Calibri","Open Sans","Courier Sans",sans-serif;
	margin: 0px;
	padding: 0px;
	background-color: #9DD5F2;
	overflow: hidden;
	height: 100%;
	width: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
 	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/*Standard Borders*/
.bt{
	border-top: 1px solid #D8D8D8;
}

.br{
	border-right: 1px solid #D8D8D8;
}

.bb{
	border-bottom: 1px solid #D8D8D8;
}

.bl{
	border-left: 1px solid #D8D8D8;
}

.sb{
	border: 1px solid #D8D8D8;
}

.rb{
	border-radius: 3px;
}

.ib{
	border-radius: 3px;
	border: 2px solid #FFFFFF;
}

.nb{
	border: 0;
}

.sis{
	box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.2) inset;
}

.sos{
	box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
}

/*Background colors*/
.b0{
	background-color: #FFF;
}

.b1{
	background-color: #F0F0F0;
}

.b2{
	background-color: #E5E5E5;
}

.b3{
	background-color: #E0F2FA;
}

.b4{
	background-color: #FAEAE0;
}

.binfo{
	background-color: #F8F8C0;
}

.bselected{
	background-color: #F8F8A0;
}

.b10{
	background-color: #12B1DA;
}

.b11{
	background-color: #FF860E;
}

.b12{
	background-color: #3DF00D;
}

.b13{
	background-color: #860EFF;
}

.b14{
	background-color: #FFFF0E;
}

.b15{
	background-color: #FF0E0F
}

.b-online {
	background-color: #95cb84;
}
.b-away {
	background-color: #ffac3d;
}
.b-offline {
	background-color: #e46d62;
}
.b-reachable {
	background-color: #12b1da;
}
.b-undefined {
	border: 1px solid #808080;
	background-color: #808080;
}
.b-information{
	background-color: rgb(120, 197, 231);
}

/*Colors*/
.c1{
	color: #12B1DA;
}

.c2{
	color: #FF860E;
}

.c3{
	color: #12B112;
}

/*Other default classes*/
.fill{
	width: 100%;
	height: 100%;
}

.dp{
	padding: 0.8rem;
}

.acc{
	vertical-align: center;
	text-align: center;
}

.cp{
	cursor: pointer;
}

.nopad{
	padding: 0px;
}

.pad{
	padding: 10px;
}

.speaking{
	outline: 2px solid orange;
}

.speeking::after{
	content: " ";
	background-color: rgba(255,100,100,0.2);
	width: 100%;
	height: 100%;
	z-index: 2;
}

.flexbox{
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
}

.flex_container{
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex{
	position: relative;
	display: block;
	-ms-flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
}

#mask{
	position: absolute;
	top: 0px;
	left: 0px;
	width:100%;
	height:100%;
	background: rgba(255,255,255,0.7);
}


div, table, input, textarea, aside, video, span, iframe{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

p {
	text-align: justify;
	text-justify: newspaper;
}

video {
	background-color: #EEEEEE;
}

#user_list {
	background-color: #FFFFFF;
	width: 200px;
	height: 280px;
	padding: 10px;
}

#user_list input{
	padding: 0px 0px 10px 0px;
	width: 200px;
	height: 20px;
}

#sidebar{
	width:150px; height:100%; position:absolute; padding:10px;
	background-color: black;
}

#main{
	position: fixed;
	left: 0px;
	top: 0px;
	/*border-style: solid;
	border-width: 4px;
	border-color: #BBBBBB;
	border-radius: 15px;*/
}

#logo{
	position: fixed;
	left: 15px;
	bottom: 15px;
	max-width: 180px;
	max-height: 50px;
}

#connectionState{
	position: fixed;
	/*max-heigth: 60px;*/
	/*max-width: 60px;*/
	right: 10px;
	bottom: 10px;
	display: block;
}

#loading{
	color: white;
	background-image:url('./image/loading.png');
	background-repeat:no-repeat;
	background-position:center;
	z-index: 100;
	position: fixed;
	left: 0px;
	top: 0px;
	height: 100%;
	width: 100%;
	background-color: black;
	min-height: 10em;
	display: table-cell;
    	vertical-align: middle;
    	text-align: center;
}

#workspace{
    position: fixed;
    top: .8rem;
    left: 80px;
    right: 80px;
    bottom: 4rem;
}

#center{
	position: absolute;
	top: 50%;
	left: 50%;
}

#popupWindow{
	text-align: justify;
	position: relative;
	background: #FFFFFF;
	box-shadow: 0px 0px 2px 0px #003142;
	top: -20em;
	left: -50%;
	padding: 50px;
}

#bucket{
	display: none;
}

.flexbox{
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
}

.widget{
	cursor: pointer;
	position: absolute;
	padding: 0.8em;
	/*width: 900px;
	height: 600px;*/

	-webkit-transform-origin: 0% 0%;
	-moz-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-o-transform-origin: 0% 0%;
	transform: 0%;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);

	transition-property: transform,top,left,opacity;
	transition-duration: 0.5s;
	transition-timing-function: ease-in-out;

	background-color: white;
	border-radius: .8rem;

	border: 1px solid #D5D5D5;
	box-shadow: 0 0 5px #777;
	border-bottom: 0;
}

.widget > h1{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	font-size: 3.2rem;
   	margin: 0;
     	height: 4.8rem;
     	line-height: 4.8rem;
	text-align: center;
	color: #FFF;
	background-color: #006C95;
	display: block;
	border-radius: 0 0 .8rem .8rem;
}

.widget > .content{
   	position: absolute;
	padding: 0px;
	top: .8em;
	left: .8em;
	right: .8em;
	bottom: 4.8rem;

	/*background-color: #41CBEF;*/
	background-width: 100%;
	background-height: 100%;
	background-size: cover;
	/*border-style: solid;
	border-width: 10px;
	border-color: #12B1DA;*/
	border-radius: .8rem .8rem 0 0;

	box-shadow: 0 0 .4rem #777 inset;
}

.widget .content .appframe{
	width: 100%;
	height: calc(100% + 10px);
	border: 0;
	position: absolute;
	top: 0px;
	left: 0px;
}

.widget .content > .shield{
	width: 100%;
	height: calc( 100% + 20px );
	border: 0;
	position: absolute;
	top: 0px;
	left: 0px;
	bottom: 0px;
	right: 0px;
	z-index: 99;
}

button{
  position: relative;
  cursor: pointer;
  padding: 5px;
  font-size: 1.6rem;
  width: 80px;
  height: 80px;
  line-height: 100%;
  display: table-cell;
  vertical-align: middle;
  border-style: outset;
  border-width: 3px;
  border-color: #CCCCCC;
  border-radius: 3px;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.33, rgb(222,222,222)), color-stop(0.67, rgb(255,255,255)));
  background-image: -moz-linear-gradient(center bottom, rgb(255,255,255) 33%, rgb(222,222,222) 67% );
  background-image: -o-linear-gradient(top,  rgb(255,255,255) 33%,rgb(222,222,222) 67% ); /* Opera 11.10+ */
  background-image: -ms-linear-gradient(top,  rgb(255,255,255) 33%,rgb(222,222,222) 67% ); /* IE10+ */
  background-image: linear-gradient(to bottom, rgb(255,255,255) 33%,rgb(222,222,222) 67% ); /* W3C */
}

.widget button.positive{
	border-color: #AAEEAA;
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.33, rgb(100,200,100)), color-stop(0.67, rgb(180,255,180)));
	background-image: -moz-linear-gradient(center bottom, rgb(100,200,100) 33%, rgb(180,255,180) 67% );
}

.widget button.neutral{
	border-color: #AAAAEE;
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.33, rgb(130,130,255)), color-stop(0.67, rgb(180,180,230)));
	background-image: -moz-linear-gradient(center bottom, rgb(100,100,200) 33%, rgb(180,180,255) 67% );
}

.widget button.negative{
	border-color: #EEAAAA;
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.33, rgb(255,130,130)), color-stop(0.67, rgb(230,180,180)));
	background-image: -moz-linear-gradient(center bottom, rgb(200,100,100) 33%, rgb(255,180,180) 67% );
}

.widget button img{
  vertical-align: middle;
  width: 100%;
  /*height: 100%;*/
}

.widget input{
	padding: 5px 0px 5px 5px;
	font-size: inherit;
	border-style: inset;
	border-width: 3px;
	border-color: #CCC;
}

.widget input :disabled{
  /*width:95px;*/
  padding: 5px 0px 5px 5px;
  /*font-size: 40px;*/
  border-style: solid;
  border-width: 5px;
  border-color: #CCCCCC;
  background-color: #E4E4E4;
}

.widget textarea{
	padding: 0px;
	margin: 0px;
	padding:4px 4px;
	font-size: inherit;
	font-family: inherit;
	/*background:#E4E4E4 repeat-x 0 0;*/
        border:5px #cdcdcd solid;
}

.widget td{
  text-align: center;
  vertical-align: middle;
}

.widget .widgetname{
	opacity: 1;
	/*transition: opacity .1s linear;
	-webkit-transition: opacity .1s linear;
	-moz-transition: opacity .1s linear;
	-o-transition: opacity .1s linear;
	-ms-transition: opacity .1s linear;*/
}

.widget > .background{
	overflow: hidden;
   	position: absolute;
   	z-index: 0;
	background: rgb(200, 250, 250);
	top: 0px;
	left: 0px;
	width: 900px;
	height: 600px;
}

.widget .scrollcontent{
	overflow: auto;
	position: relative;
	/*background: rgb(200, 250, 250);*/
	top: -80px;
	left:0px;
	padding: 0px;
	width: 900px;
	height: 600px;
}

input {
	padding: 0px;
	margin: 0px;
	padding:4px 4px;
	font-size: inherit;
        border:1px #cdcdcd solid;
}

select {
	padding: 0px;
	margin: 0px;
	padding:4px 4px;
	font: inherit;
        border:1px #cdcdcd solid;
}

#iconmenu{
    text-align: center;
    position: fixed;
    padding: .4rem .8rem .4rem .4rem;
    left: 0px;
    bottom: 75px;
    width: 75px;
    background-color: #FFF;
    border-radius: 0 .8rem .8rem 0;
    box-shadow: 0 0 5px #777;
    z-index: 95;
}

#iconmenu button{
  padding: 5px;
  margin: 4px 0 4px 0;
  width: 60px;
  height: 60px;
}

#messageShield {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 90;
	background-color: rgba(255,255,255,0.3);
}

#message {
	position: absolute;
	min-width: 300px;
	max-width: 600px;
}

#message.messagebox {
	font-size: 22px;
	padding: 20px 50px 120px 50px;
	border: 5px solid #FF860E;
	outline: 5px solid white;
}

#message.messagebox h1 {
	font-size: 120%;
}

#message.messagebox .buttonbox{
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 20px;
	left: 0px;
	right: 0px;
}

#message.messagebox .buttonbox button{
	font-size: 22px;
	margin: 0px 20px;
	position: relative;
	width: 100px;
	height: 100px;
	bottom: auto;
	left: auto;
}

/* MiButton and subclasses */

.overlay{
	position: absolute;
	top: 5%;
	left: 5%;
	bottom: 5%;
	right: 5%;
	width: 90%;
	height: 90%;
}

.overlay_s{
	position: absolute;
	top: 10%;
	left: 10%;
	bottom: 10%;
	right: 10%;
	width: 80%;
	height: 80%;
}

.miNoSelect{
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.miInline{
	display: inline-block;
}

.miButton
{
	position: relative;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	color: #333;
	background-color: #FFF;
	border: 1px solid #dcdcdc;
	border: 1px solid rgba(0,0,0,0.1);
	border-radius: 0.2em;
	cursor: pointer;
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	/*margin-right: 1.2em;*/
	height: 2.5rem;
	line-height: 2.5em;
	min-width: 5em;
	outline: 0px;
	padding: 0 0.7em;
	display: inline-block;
	vertical-align: middle;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.miButton:not(.disabled):before{
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	background-image: -webkit-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.1));
	background-image: -moz-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.1));
	background-image: -ms-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.1));
	background-image: -o-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.1));
	background-image: linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.1));
}

.miButton:not(.disabled):hover
{
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	color: #111;
	border: 1px solid #c6c6c6;
	/*outline: 0px;*/
}

.miButton:not(.disabled):hover:before{
	background-image: -webkit-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.05));
	background-image: -moz-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.05));
	background-image: -ms-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.05));
	background-image: -o-linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.05));
	background-image: linear-gradient(top,rgba(0,0,0,0.01),rgba(100,100,100,0.05));
}

.miButton:not(.disabled):active
{
  color: #111;
  border: 1px solid #c6c6c6;
  box-shadow: inset 0.1rem 0.1em 0.1em 0.2em rgba(0,0,0,0.1);
}

.miButton:not(.disabled):active:before{
	background-image: -webkit-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: -moz-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: -ms-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: -o-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
}

.miButton.active{
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	color: #111;
	border: 1px solid #c6c6c6;
	/*outline: 0px;*/
 	box-shadow: inset 0.1rem 0.1em 0.1em 0.2em rgba(0,0,0,0.1);
}

.miButton.active:before{
	background-image: -webkit-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: -moz-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: -ms-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: -o-linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
	background-image: linear-gradient(top,rgba(0,0,0,0.03),rgba(100,100,100,0.15));
}

.miButton.selected{
  color: #111;
  border: 1px solid #c6c6c6;
  box-shadow: inset 0.1rem 0.1em 0.1em 0.2em rgba(0,0,0,0.1);
  outline: 1px solid #12b1da;
}

.miButton.selected:after{
	background-image: -webkit-linear-gradient(bottom,rgba(0,0,0,0.03),rgba(100,100,100,0.20));
	background-image: -moz-linear-gradient(bottom,rgba(0,0,0,0.03),rgba(100,100,100,0.20));
	background-image: -ms-linear-gradient(bottom,rgba(0,0,0,0.03),rgba(100,100,100,0.20));
	background-image: -o-linear-gradient(bottom,rgba(0,0,0,0.03),rgba(100,100,100,0.20));
	background-image: linear-gradient(bottom,rgba(0,0,0,0.03),rgba(100,100,100,0.20));
}

.miButton.collapseLeft{
	border-radius: 0 0.2em 0.2em 0;
	border-left: 0;
	min-width: 1em;
}

.miButton.collapseRight{
	border-radius: 0.2em 0 0 0.2em;
	margin-right: 0;
	min-width: 1em;
}

.miButton.collapseBoth{
	border-radius: 0;
	border-left: 0;
	margin-right: 0;
	margin-left: 0;
	min-width: 1em;
}

.miButton.disabled{
	background-image: none;
	cursor: initial;
	opacity: 0.6;
}

.miButton.round, .round{
	border-radius: 50%;
}

.miButton.small, .small{
	margin: 0px;
	width: 1.6rem;
	min-width: 1rem;
	padding: 0;
	height: 1.6rem;
	font-size: 0.7rem;
	line-height: 1.6rem;
}

.miButton.positive{
	background: #82C06E;
}

.miButton.negative{
	background: #E3695F;
}

.miButton.information{
	background: #B0D8E2;
}

.miButton .preimg{
	vertical-align: middle;
	height: calc( 100% - .4rem );
	margin: .2rem .4rem .2rem -.3rem;
	float: left;
}


#footer {
	color: #999999;
	position: fixed;
	width: 100%;
	text-align: center;
	bottom: 20px;
	left: 0px;
	right: 0px;
}

/* CSQ ContactSquare view */

.contactsview{
	position: relative;
	padding-top: 5em;
}

.contactsview .searchbar{
	position: absolute;
	top: 0.8em;
	right: 0.8em;
}

.contactview.csq{
	position: relative;
	display: inline-block;
	margin: 10px 0px 0px 10px;
	width: 7rem;
	height: 7rem;
	background-color: #F0F0F0;
	background-size: cover;
	background-position: center center;
	z-index: 1;
}

.contactview.csq:after{
	content: ' ';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(128,128,128,.7);
	transition: background-color 0.4s, box-shadow 0.4s;
	z-index: 2;
}

.contactview.csq:hover:after{
	background-color: rgba(255,255,255,.1);
	box-shadow: 0px 0px 5px 2px #63b04a;
}

.contactview.csq.active:after{
	background-color: rgba(255,255,255,.1);
	box-shadow: 0px 0px 5px 2px #63b04a;
}

.contactview.csq.active:hover:after{
	/*background-color: rgba(0,0,0,.7);*/
	box-shadow: 0px 0px 5px 2px #dc4437;
}

.contactview .csq_n{
	color: #404040;
	background-color: rgba(255,255,255,0.8);
	display: block;
	position: absolute;
	padding: 5px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	z-index: 3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.contactview .csq_n{

}

.contactview .csq_n img{
	width: 15px;
}

.modal_overlay{
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	width: 100%;
	height: 100%;
	z-index: 90;
	background-color: rgba(18, 177, 218, 0.3);
	text-align: center;
}

.modal_overlay > .modal_body{
	background-color: #F5F5F5;
	border: 1px solid #D5D5D5;
	border-radius: 3px;
	max-width: 100%;
	display: inline-block;

	position: relative;
	top: 50%;
	transform: translateY(-50%);
}