/* global elements */
body {
	font-family: Arial, sans-serif;
	background-color: #E6E9EC;
	color: #47646E;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #CCC;
	margin: 7pt 0;
	padding: 0;
	margin-bottom: 20pt;
}

h2 {
	text-align: left;
	margin-left: 6pt;
	margin-bottom: 10pt;
	margin-top: 0pt;
}

h2 + p {
    text-align: justify;
    margin-left: 6pt;
}

div.configblock > img, div.configblock > button {
    margin-left: 6pt;
	margin-top: 6pt;
}

.h2centered {
	margin-left: 0;
	text-align: center;
}

h2 .material-icons {
	position: relative;
	top: 3pt;
}

.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.inputfile + label {
	display: inline-block;
}

/*********************************************************************************************************/

/* Material Design Icons */

@font-face {
	font-family: 'Material Icons';
	font-style: normal;
	font-weight: 400;
	src: url(/font/MaterialIcons-Regular.eot); /* For IE6-8 */
	src: local('Material Icons'), local('MaterialIcons-Regular'), url(/font/MaterialIcons-Regular.woff2) format('woff2'), url(/font/MaterialIcons-Regular.woff) format('woff'), url(/font/MaterialIcons-Regular.ttf) format('truetype');
}

.material-icons {
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 19pt; /* Preferred icon size */
	display: inline-block;
	width: 1em;
	height: 1em;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;
	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;
	/* Support for IE. */
	font-feature-settings: 'liga';
}

/*********************************************************************************************************/

/* title bar */
.titlebar {
}

.titlebarline {
	display: block;
	height: 0pt;
	border: 0;
	border-top: 1px solid #CCC;
	margin: 5pt 0pt;
	padding-bottom: 5pt;
}

.topKebaLogo {
	height: 14pt;
	display: block;
	margin: 0 auto;
}

.topLogoutButtonFont {
	font-size: 15pt;
}

.topButton {
    width: 60pt;
	display: block;
	float: right;
	text-decoration: none;
	border: none;
	border-radius: 0;
	appearance: none;
	box-shadow: none;
	background-color: transparent;
	color: #47646E;
	padding-left: 18pt;
	padding-right: 18pt;
	border-left: 1px solid #47646E;
	border-right: 1px solid #47646E;
}

.topButton:last-child {
	border-right: none;
}
.topButton:nth-child(3) {
	border-right: none;
}
.topButton:first-child {
	border-left: none;
}

.topButton:hover {
	cursor: pointer;
	background-color: #CFD7E4;
}

.topButton .material-icons {
	vertical-align: middle;
}

/* bottom always on top bar */
.alwaysontopbar {
	z-index: 999;
	left: 0;
	background-color: #E6E9EC;
	position: fixed;
	bottom: 0pt;
	width: 100%;
}

/* horizontal line 2 */
.alwaysontopbarhr {
    height: 0pt;
    margin: 0pt 0pt 14pt 0;
    border: 0;
}

/*********************************************************************************************************/

/* general ui elements (buttons, textboxes, etc.) */

.content {
	padding-top: 35pt;
	padding-bottom: 35pt;
	height: 100%;
	background-color: #E6E9EC;
}

.loginboxdiv {
	background-color: #FFFFFF;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 170pt;
	padding-left: 9pt;
	padding-right: 9pt;
	padding-top: 0pt;
	padding-bottom: 9pt;
}

.logintable {
	width: 100%;
	height: 100%;
}

.usersettingsdiv {
	background-color: #FFFFFF;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 170pt;
	height: 150pt;
	padding-left: 9pt;
	padding-right: 9pt;
	padding-top: 7pt;
	padding-bottom: 9pt;
}

.usersettingstable {
	width: 100%;
	height: 100%;
}

.logintableline {
	border-top: 1px solid #CCC;
}

.kebabutton {
	display: block;
	text-decoration: none;
	vertical-align: middle;
	border: none;
	border-radius: 0;
	appearance: none;
	box-shadow: none;
	color: #FFFFFF;
	font-size: 12pt;
	padding: 6pt 14pt;
	background-color: #47646E;
	white-space: nowrap;
}

button.disabled {
	opacity: 0.4;
	cursor: not-allowed;
}

.kebabuttoniconless {
	padding: 6pt 10pt 5pt 10pt;
}

.kebabutton:hover:not(.disabled) {
	color: #FFFFFF;
	background-color: #54AF3A;
}

.kebabutton:active:not(.disabled) {
	color: #54AF3A;
	background-color: #FFFFFF;
}

.kebabuttonlogdownload {
	float: right;
	display: inline-block;
	vertical-align: top;
	margin-bottom: 3pt;
	margin-left: 8pt;
}

.kebabuttonupdateinstall {
	display: inline-block;
	vertical-align: middle;
}

.kebabutton .material-icons {
	position: relative;
	vertical-align: middle;
	font-size: 14pt;
}

.kebatextbox {
	text-decoration: none;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	appearance: none;
	box-shadow: none;
	padding: 3pt 3pt 3pt 3pt;
	border-top: 1pt solid transparent;
	border-left: 1pt solid transparent;
	border-right: 1pt solid transparent;
	border-bottom: 2pt solid #47646E;
	background-color: #FFFFFF;
	color: #47646E;
}

.kebalogintextbox {
	padding: 0 0 0 0;
	font-size: 13pt;
	border-bottom: 1px solid #47646E;
	min-height: 20pt;
	display: block;
	width: 100%;
}

.kebatextarea {
	text-decoration: none;
	border: none;
	border-radius: 0;
	appearance: none;
	box-shadow: none;
	padding: 3pt 3pt 3pt 3pt;
	margin-bottom: 11pt;
	border-top: 1pt solid transparent;
	border-left: 1pt solid transparent;
	border-right: 1pt solid transparent;
	border-bottom: 2pt solid transparent;
	background-color: #FFFFFF;
	width: 100%;
	height: 500pt;
	color: black;
	overflow: hidden;
}

.kebatextbox:invalid {
	background-color: red;
	color: white;
}

.kebareadonly {
	color: #B8C3D2;
}

.kebadropdown {
	max-width: 125pt;
    /*
    display: block;
    text-decoration: none;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 3pt 3pt 2pt 3pt;
    border-top: 1pt solid white;
    border-left: 1pt solid white;
    border-right: 1pt solid white;
    border-bottom: 2pt solid #47646E;
    background-color: white;
    color: #47646E;
    */
}

.kebatable {
	border-collapse: collapse;
	margin-right: auto;
}

.kebatableleft {
	border-collapse: collapse;
	margin-right: auto;
}

.kebatableheader {
	text-align: left;
	white-space: nowrap;
}
.kebatableheader:last-child {
	text-align: left;
}

.kebatableparameter {
	text-align: left;
}

.kebatablerightborder {
	border-right: 1px solid #47646E;
	padding-left: 10pt;
	padding-right: 10pt;
	padding-top: 2pt;
	padding-bottom: 2pt;
}

.kebatablerightborder:first-child {
	white-space: nowrap;
}

.kebatablerightborder:nth-child(1) {
	white-space: nowrap;
}

.kebatablerightborder:nth-child(2) {
	white-space: nowrap;
}

.kebatablerightborder:last-child {
	border-right: none;
	padding-right: 0pt;
}

.kebatablerightnoborder {
    border-right: none;
    text-align: justify;
}

tbody tr.kebatablerowselectable:hover:not(.kebatablerowselected) {
	background-color: #CFD7E4;
}

tbody tr.kebatablerowselected {
	color: #FFFFFF;
	background-color: #54AF3A;
}

thead .asc {
	background-image: url(../img/sort_asc.png);
}

thead .desc {
	background-image: url(../img/sort_desc.png);
}

thead .sort {
	background-image: url(../img/sort_both.png);
}

thead .sort, thead .asc, thead .desc {
	cursor: pointer;
	background-repeat: no-repeat;
	background-position: center right;
}

.pagination {
	display: block;
	overflow: auto;
	text-align: center;
}

.pagination a {
	color: #47646E;
	display: inline-block;
	padding: 8px 16px;
	text-decoration: none;
}

.pagination a.active {
	background-color: #54AF3A;
	color: white;
}

.pagination a:hover:not(.active):not(.disabled) {
	background-color: #CFD7E4;
}

.pagination a.disabled {
	opacity: 0.4;
}

.datepicker {
	width: 100px;
}

/*********************************************************************************************************/

/* nav bar */
ul {
	margin: auto auto;
	position: relative;
	padding: 0;
	list-style: none;
	z-index: 999;
}

.navwrapper {
    text-align: center;
}

.topnavul {
	display: inline-block;
    margin: 0;
    padding: 0;
    text-align: left;
    /* IE hack */
    *zoom: 1;
    *display: inline;
}

/* context menu block level 1 bounding box */
ul ul {
	position: relative;
	/*
    -webkit-box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.5);
    box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.5);
    */
}

/* inactive top nav bar button */
ul li {
	display: block;
	position: relative;
	float: left;
	background-color: #E6E9EC;
    /*
    box-shadow: inset 0px 0px 2px 0px rgba(0,0,0,0.5);
    */
}

.ulliMargin {
	padding-right: 0pt;
	padding-left: 0pt;
	border-right: 1pt solid #47646E;
}

li ul {
	display: none;
}

/* level 1 */
ul li a {
	display: block;
	text-decoration: none;
	color: #47646E;
	padding: 7pt 10pt 5pt 10pt;
	background: transparent;
	white-space: nowrap;
	vertical-align: middle;
}

ul li a.current {
	color: #FFFFFF;
	background: #54AF3A;
}

ul li a .material-icons {
	position: relative;
	font-size: 14pt;
	vertical-align: middle;
	top: -1pt;
}

/* level 2 */
ul li ul li a {
	padding: 7pt 10pt 4pt 10pt;
}
ul li ul li a .material-icons {
	position: relative;
	font-size: 15pt;
	vertical-align: middle;
}

/* hovered top nav bar button */
ul li a:hover {
	color: #FFFFFF;
	background: #54AF3A;
}

/* level 2 */
li:hover ul {
	display: block;
	position: absolute;
}
/* level 2 */
li:hover li {
	float: none;
}

/* inactive nav button when opened */
li:hover a {
	color: #47646E;
	background: #CFD7E4;
}

/* level 1 nav button hover */
li:hover li a:hover {
	color: #FFFFFF;
	background: #54AF3A;
    /*
    -webkit-box-shadow: inset 0px 0px 3px 0px rgba(0,0,0,0.75);
    -moz-box-shadow: inset 0px 0px 3px 0px rgba(0,0,0,0.75);
    box-shadow: inset 0px 0px 3px 0px rgba(0,0,0,0.75);
    */
}

/*********************************************************************************************************/

/* file upload */

.uploadprogressbarcontainer {
	display: none;
	border: solid 1px #47646E;
	height: 15pt;
	width: 300px;
	margin-top: 5pt;
	margin-bottom: 10pt;
}

.uploadprogressbar {
	display: none;
	background-color: #54AF3A;
	height: 15pt;
	width: 0%;
}

/* status */
.ocpphostavailability {
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
	cursor: pointer;
}

.networkconnectiononline {
	background-color: #54AF3A;
	color: white;
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
	white-space: nowrap;
}

.networkconnectionoffline {
	background-color: #FF0000;
	color: white;
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
	white-space: nowrap;
}

.networkconnectioninactive {
	background-color: #CCC;
	color: white;
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
	white-space: nowrap;
}

.pinok {
	background-color: #54AF3A;
	color: white;
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
}

.pinnotok {
	background-color: #FF0000;
	color: white;
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
}

/* GSM test result text */
.gsmreceptiontestresulttext {
	background-color: red;
	color: white;
	padding: 3pt 3pt 2pt 3pt;
	border-radius: 4px;
}

/*********************************************************************************************************/

/* material design spinner */
.waiterspinnerdiv {
	display: none;
}

.spinner {
	-webkit-animation: rotation 1.4s linear infinite;
	animation: rotation 1.4s linear infinite;
}

@-webkit-keyframes rotation
{
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}

100% {
-webkit-transform: rotate(270deg);
transform: rotate(270deg);
}
}

@keyframes rotation
{
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}

100% {
-webkit-transform: rotate(270deg);
transform: rotate(270deg);
}
}

.circle {
	stroke-dasharray: 187;
	stroke-dashoffset: 0;
	stroke: #54AF3A;
	-webkit-transform-origin: center;
	-ms-transform-origin: center;
	transform-origin: center;
	-webkit-animation: turn 1.4s ease-in-out infinite;
	animation: turn 1.4s ease-in-out infinite;
}

@-webkit-keyframes turn
{
0% {
stroke-dashoffset: 187;
}

50% {
stroke-dashoffset: 46.75;
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

100% {
stroke-dashoffset: 187;
-webkit-transform: rotate(450deg);
transform: rotate(450deg);
}
}

@keyframes turn
{
0% {
stroke-dashoffset: 187;
}

50% {
stroke-dashoffset: 46.75;
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

100% {
stroke-dashoffset: 187;
-webkit-transform: rotate(450deg);
transform: rotate(450deg);
}
}

.uploadloader {
	margin-right: 5pt;
	margin-bottom: 5pt;
	width: 15pt;
	height: 15pt;
	display: inline-block;
	vertical-align: middle;
}

.loader {
	font-size: 10px;
	text-indent: -9999em;
	border-radius: 50%;
	background: #47646E;
	background: -moz-linear-gradient(left, #47646E 10%, #E6E9EC 42%);
	background: -webkit-linear-gradient(left, #47646E 10%, #E6E9EC 42%);
	background: -o-linear-gradient(left, #47646E 10%, #E6E9EC 42%);
	background: -ms-linear-gradient(left, #47646E 10%, #E6E9EC 42%);
	background: linear-gradient(to right, #47646E 10%, #E6E9EC 42%);
	position: relative;
	-webkit-animation: load3 1.4s infinite linear;
	animation: load3 1.4s infinite linear;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
}
.loader:before {
	width: 50%;
	height: 50%;
	background: #47646E;
	border-radius: 100% 0 0 0;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
}
.loader:after {
	background: #E6E9EC;
	width: 75%;
	height: 75%;
	border-radius: 50%;
	content: '';
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
@-webkit-keyframes load3 {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes load3 {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}

/* circular spinner */
.circlespinner
{
    position: relative;

    width: 25px;
    height: 25px;

    -webkit-animation: circle infinite 1s linear;
       -moz-animation: circle infinite 1s linear;
         -o-animation: circle infinite 1s linear;
            animation: circle infinite 1s linear;

    border: 20px solid #54AF3A;
    border-top-color: #CFD7E4;
    border-right-color: #CFD7E4;
    border-bottom-color: #CFD7E4;
    border-radius: 100%;
}
@-webkit-keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@-moz-keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@-o-keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
