* {box-sizing:border-box}

/* disable rounded corners in Safari */
textarea,
input:not([type="radio"]):not([type="checkbox"]) {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    border-radius: 0;
}

body {
	overflow: hidden; /* disables Chrome's pull-to-refresh on Android */
	margin: 0px;
	padding: 0px;
	font-family: -apple-system, "San Francisco", "Helvetica Neue", Helvetica, "Lucida Grande", Roboto, "Segoe UI", Arial, Ubuntu, sans-serif;
	/*font-family: sans-serif;*/
	font-size: 16px;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background: rgb(200, 200, 200);
}

button {
	-webkit-appearance: none;
    -webkit-border-radius: 0;
	padding: 3px 12px;
	/*font-family: sans-serif;*/
	font-size: 16px;
}

button:focus {
	outline-style: solid;
    outline-color: cyan;
    outline-width: 2px;
}

input {
	padding: 0.1em 0.5em;
	/*font-family: sans-serif;*/
	font-size: 16px;
}

input[type=checkbox] {
  transform: scale(1.5);
  margin-right: 10px;
}

.selectable {
	-moz-user-select: text;
	-webkit-user-select: text;
	-ms-user-select: text;
	user-select: text;
}
 
.dropShadow {
	box-shadow: 2px 4px 12px 2px rgba(0, 0, 0, 0.6);
}

.dropDownMark:after {
    border-top: 0.4em solid;
    border-bottom: none;
    border-right: 0.4em solid transparent;
    border-left: 0.4em solid transparent;
    opacity: 0.5;
    content: "";
    vertical-align: middle;
    display: inline-block;
    position: relative;
    right: -0.4em;
}

div.uiShader {
	z-index: 100;
	position: absolute;
	left: 0px;
	top: 0px;
	right: 0px;
	bottom: 0px;
	background: rgb(180, 180, 180);
	opacity: 0.4;
}

div.uiHeader {
	position: absolute;
	background-color: #A3B0BC;
	/*height is set in script*/
	left: 0px;
	top: 0px;
	right: 0px;
	border-bottom: 1px solid gray;
	white-space: nowrap;
	overflow-x: auto;
}

div.uiHeaderScrollMark {
	display: none;
	position: fixed;
	background: linear-gradient(to right, rgba(0,0,32,0), rgba(0,0,32,0.6));
	color: white;
	font-size: 20px;
	font-weight: bold;
	z-index: 99;
	pointer-events: none;
	padding: 0px 4px 0px 10px;
}

div.uiHeaderRow {
	display: table;
	height: 100%;
}

div.uiSticker {
	position: relative;
	display: table;
	z-index:1;
	height: 100%;
	font-size: 12px;
	cursor: pointer;
}

div.uiStickerAlarms {
	display: table;
	height: 100%;
	padding: 0px 4px;
}

div.uiStickerAlarms > div {
	display: table-cell;
	font-size: 12px;
	cursor: pointer;
	text-align: center;
	vertical-align: middle;
	padding: 4px 4px;
	position: relative;
}

div.uiStickerAlarms > div > div:last-child {
	position: absolute;
	left: 20%;
	top: 50%;
	width: 60%;
	margin-top: -0.6em;
}

div.uiStickerAlarms > div:nth-child(2) > div:last-child {
	margin-top: -0.1em;
}

div.uiStickerAlarms > div:nth-child(3) > div:last-child {
	margin-top: -1.1em;
}

div.uiStickerAlarms > div > div:last-child:hover {
	/*background-color: white;*/
}

div.uiStickerAlarms > div > div > svg {
	width: 32px;
	height: 32px;
	vertical-align: middle;
}

div.uiStickerSound {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 0px 10px;
}

div.uiStickerSound img {
	height: 32px;
	width: 32px;
	vertical-align: middle;
}

div.uiHeadSpacer {
	display: table-cell;
	height: 100%;
	cursor: default;
	vertical-align: middle;
	text-align: center;
	padding: 0px 10px;
	/*color: gray;*/
}

div.uiDebugBanner, div.uiWarningBanner, div.uiTrialBanner {
	padding: 3px 6px;
	margin: 0px 8px;
	font-size: 10px;
	font-weight: bold;
	color: black;
	border: 1px solid black;
	box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.4);
	border-radius: 5px;
}

div.uiDebugBanner {
	background-color: LightYellow;
}

div.uiWarningBanner {
	padding: 2px 6px;
	color: yellow;
	background-color: OrangeRed;
}

div.uiTrialBanner {
	background-color: PeachPuff;
}

div.uiTrialBannerTime {
	font-size: 10px;
	font-weight: bold;
	color: MediumBlue;
}

div.uiHeadButton {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
	padding: 0px 9px;
	cursor: pointer;
}

div.uiHeadButton img {
	height: 24px;
	width: 24px;
	vertical-align: middle;
}

div.uiStickerAlarms:hover, div.uiStickerSound:hover, div.uiHeadButton:hover, div.uiHeadUser:hover, div.uiHeadCatalog:hover, div.uiHeadPage:hover {
	background-color: CornFlowerBlue;
}

div.uiHeadUser {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
	text-align: center;
	padding: 0px 10px; 
	font-size: 12px;
	/*font-weight: bold;*/
	cursor: pointer;
	/*color: #4d4d4d;*/
}

div.uiHeadCatalog {
	display: table-cell;
	height: 100%;
	text-align: right;
	vertical-align: middle;
	padding: 0px 0.5em 0px 10px; 
	font-size: 16px;
	font-weight: bold;
	cursor: pointer; 
	/*white-space: normal;*/
}

div.uiHeadPage {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
	padding: 0px 10px 0px 0.5em; 
	font-size: 16px;
	/*font-weight: normal;*/
	cursor: pointer; 
	/*white-space: normal;*/
}

div.uiHeadClock {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
	text-align: center;
	padding: 0px 8px 0px 8px; 
	cursor: default; 
	font-size: 12px;
}

div.uiHeadClock > div:first-child {
	/*font-weight: bold;*/
	padding-bottom: 4px;
}

div.uiContent  { /* Scroll */
	position: absolute;
	right: 0px;
	bottom: 0px;
	overflow: auto;
}

div.uiContent > div { /* Align */
	display: table;
	width: 100%;
	height: 100%;
}

div.uiContent > div > div { /* Content */
	display: table-cell;
	width: 100%;
	height: 100%;
	text-align: center;
	vertical-align: middle;
}

div.uiContent > div > div > * {
	margin: 0px auto;
}

div.uiContentMessage {
	cursor: default;
	padding: 15px;
}

div.uiNavigator {
	position: absolute;
	background-color: #A3B0BC;
	left: 0px;
	bottom: 0px;
	border-right: 1px solid gray;
	overflow: auto;
	white-space: normal;
	overflow-wrap: break-word;
	/*max-width: 400px;*/
}

div.uiNavTree {
	position: relative;
	top: 10px;
}

div.uiNavTreeItem {
	position: relative;
	padding: 4px 2.5em 4px 30px;
	color: #4d4d4d;
	/*white-space: nowrap;*/
}

div.uiNavTreeItem:hover {
	background-color: CornFlowerBlue;
	cursor: pointer;
}

div.uiNavTreeItem_active, div.uiNavTreeItem_active:hover {
	background-color: white;
	color: black;
	border-top: 1px solid gray;
	border-bottom: 1px solid gray;
	padding-top: 3px;
	padding-bottom: 3px;
}

/*div.uiNavTreeItem > div:first-child > svg:hover {
	outline: 2px solid red;
}*/

div.uiNavTreeItem > div:last-child {
	position: absolute;
	height: 100%;
	width: 1.5em;
	top: 0px;
	bottom: 0px;
	right: 0px;
}

div.uiNavTreeItem > div:last-child > img {
	position: absolute;
	height: 0.8em;
	margin: auto;
	top: 0px;
	bottom: 0px;
	right: 3px;
}

div.uiNavTreeItem > div:last-child:hover {
	background-color: DeepSkyBlue;
	cursor: pointer;
}

div.uiPopupMenu {
	z-index: 100;
	position: absolute;
	border: 1px solid MediumBlue;
	background-color: #E2EFF3;
	/*font-family: sans-serif;*/
	/*font-weight:		bolder;*/
	margin: 0;
	padding: 0;
	overflow: auto;
	white-space: normal;
	overflow-wrap: break-word;
	/*max-width: 400px;*/
}

div.uiPopupMenuItem {
	height: auto;
	/*line-height: 1.3em;*/
	padding: 0.5em;
	margin: 0;
	font-weight: normal;
	cursor: default;
}

div.uiPopupMenuItem:hover {
	background-color: cornflowerblue;
}

div.uiPopupMenuSeparator {
	cursor: default;
	margin: 0;
	padding: 0;
}

div.uiPopupMenuSeparator * {
	margin: 0.2em 0.4em;
}

table.uiAlarmsTable {
	border-collapse: collapse;
	text-align: left;
	margin: auto;
}

table.uiAlarmsTable * {
	vertical-align: middle;
}

table.uiAlarmsTable td {
	border: 1px solid DimGray;
	padding: 0.2em 0.5em;
}

table.uiAlarmsTable tbody {
	background-color: white;
}

table.uiAlarmsTable tbody > tr {
	cursor: pointer;
}

/*table.uiAlarmsTable tbody > tr[prio="1"] {background-color:#ff9f9f;}
table.uiAlarmsTable tbody > tr[prio="2"] {background-color: #ffddc6;}
table.uiAlarmsTable tbody > tr[prio="3"] {background-color: #ffffc0;}
table.uiAlarmsTable tbody > tr[prio="4"] {background-color: #ffc0ff;}*/

table.uiAlarmsTable tbody > tr:hover {
	background-color: LightSkyBlue;
}

table.uiAlarmsTable thead {
	white-space: normal;
	text-align: center;
	background-color: DarkGrey;
	color: black;
	cursor: default;
}

table.uiPointsTable {
	display: inline-table;
	vertical-align: top;
	border-collapse: collapse;
	margin: 15px;
	text-align: left;
}

table.uiPointsTable tr:hover {
	background-color: rgb(220,220,220);
}

table.uiPointsTable tr.highlight {
	background-color: white;
}

table.uiPointsTable * {
	vertical-align: middle;
}

table.uiPointsTable caption {
	font-weight: bold;
	cursor: default;
}

table.uiPointsTable td {
	border: 1px solid DimGray;
	padding: 0.2em 0.5em;
	cursor: default;
}

table.uiPointsTable td > div > button {
	margin: 3px;
}

table.uiPropsTable {
	display: inline-table;
	position: relative;
	vertical-align: top;
	border-collapse: collapse;
	margin: 10px;
	text-align: left;
	background-color: Gainsboro;
	margin: auto;
	font-size: 14px;
}

table.uiPropsTable tr.highlight td:not([rowspan]) {
	background-color: white;
}

table.uiPropsTable tr.disabled td:not([rowspan]) {
	opacity: 0.3;
	font-style: italic;
}

table.uiPropsTable * {
	vertical-align: middle;
}

table.uiPropsTable caption {
	font-weight: bold;
	cursor: default;
}

table.uiPropsTable td {
	border: 1px solid DimGray;
	padding: 0.2em 0.5em;
	cursor: default;
}

table.uiPropsTable > thead {
	background-color: DarkGrey;
	text-align: center;
	font-size: 80%;
	padding: 0;
}

td.uiPropsTable_clickable:hover {
	cursor: pointer !important;
	background-color: SkyBlue !important;
}

.uiPropsTable_focused {
	background-color: white;
}

div.uiCatalogIndex {
	display: table; 
	padding: 15px;
	min-width: 20%;
}

div.uiCatalogIndex > div {
	margin: 10px;
	padding: 4px 12px;
	text-align: center;
	border: 1px solid gray;
	background-color: Gainsboro;
	cursor: pointer;
}

div.uiCatalogIndex > div:hover {
	background-color: CornflowerBlue;
}

div.uiDecoratedFrame {
	z-index: 100;
	display: block;
	position: absolute;
	cursor: default;
	border: 2px solid blue;
	margin: 0;
	padding: 0;
	background-color: #E2EFF3;
	box-shadow: 2px 4px 12px 2px rgba(0, 0, 0, 0.6);
	white-space: nowrap;
}

div.uiDecoratedFrame button {
	font-size: 13px;
	padding: 2px 7px;
}

div.uiDecoratedFrameHeader {
	display: block;
	position: static;
	cursor: move;
	border: none;
	padding: 3px;
	margin: 0;
	background-color: blue;
}

div.uiDecoratedFrameCaption {
	display: block;
	position: static;
	border: none;
	padding: 2px 4px;
	margin: 0 2.5em 0 0;
	color: white;
	font-size: 16px;
	/*font-family: sans-serif;*/
	font-weight: bolder;
	overflow: hidden;
}

div.uiDecoratedFrameClose {
	display: inline-block;
	position: absolute;
	cursor: default;
	width: 2em;
	top: 0;
	right: 0;
	border: none;
	margin: 0;
	padding: 0.2em 0;
	background-color: darkviolet;
	text-align: center;
	color: white;
	/*font-family: sans-serif;*/
	font-weight: bold;
	font-weight: bold;
}

div.uiDecoratedFrameClose:hover {
	background-color: red;
}

div.uiDecoratedFrameResize {
	display: block;
	position: absolute;
	cursor: nwse-resize;
	border: none;
	padding: 0;
	margin: 0;
	width: 10px;
	height: 10px;
	bottom: 0px;
	right: 0px;
	background:
		url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAFElEQVQImWP4////fwYsAFMQp0oAjsMJ9/vdrtQAAAAASUVORK5CYII=)
		repeat;
	opacity: 0.4;
}

div.uiDecoratedFrameResize:hover {
	background-color: blue;
	opacity: 1;
}

div.uiDecoratedFrameContentScroll {
	display: block;
	position: static;
	padding: 0;
	margin: 0;
	overflow: auto;
	left: 0px;
	right: 0px;
	top: 28px;
	bottom: 0px;
}

div.uiDecoratedFrameContent {
	display: block;
	position: relative;
	padding: 10px;
	margin: 0;
	color: black;
	/*font-family: sans-serif;*/
}

div.uiInput {
	white-space: normal;
	overflow: hiden;
	/*height: 100%;
	width: 100%;*/
	text-align: center;
}

div.uiInput input {
	text-align: center;
	margin: 0.5em;
	/* width: 8em; */
}

div.uiNewPwd {
	text-align: center;
}

div.uiNewPwd table {
	text-align: right;
}

div.uiNewPwd input {
	text-align: left;
	margin: 0.5em;
	/* width: 8em; */
}

div.uiTimeRangeInput {
	padding-left: 1em;
	padding-right: 1em;
}

div.uiTimeRangeInput button {
	padding-left: 2em;
	padding-right: 2em;
}

div.uiConfirm {
	text-align: center;
	padding: 1em;
}

div.uiHistory {
	overflow: hidden;
	min-width: 620px;
	min-height: 250px;
	height: 100%;
	width: 100%;
}

div.uiHistoryControl {
	position: absolute;
	white-space: no-wrap;
	overflow: hidden;
	padding: 0px;
	margin: 0px;
	background-color: DarkGray;
	left: 0px;
	top: 0px;
	right: 0px;
	height: 40px;
	line-height: 40px;
	vertical-align: middle;
}

div.uiHistoryPanel {
	position: absolute;
	white-space: no-wrap;
	overflow: hidden;
	padding: 0px;
	margin: 0px;
	left: 6px;
	top: 46px;
	bottom: 6px;
	right: 6px;
}

div.uiHistoryChart {
	position: absolute;
	margin: 0px;
	padding: 0px;
	left: 0px;
	top: 0px;
	bottom: 0px;
	right: 0px;
}

div.uiChartLegend {
	display: none;
	position: absolute;
	overflow: auto;
	border: 1px solid blue;
	margin: 0;
	padding: 1em;
	background-color: white;
	/* white-space:		normal; */
}

div.uiHistoryProgress {
	position: absolute;
	font-weight: bolder;
	margin: 0;
	padding: 1em;
	text-align: center;
	border: 1px solid darkorange;
	background-color: DarkGrey;
	box-shadow: 2px 4px 12px 2px rgba(0, 0, 0, 0.6);
}

div.uiHistoryProgress>button {
	margin-top: 1em;
}

div.uiHistoryTable {
	overflow: auto;
	position: absolute;
	margin: 0;
	padding: 0;
	border: 1px solid blue;
	background-color: white;
	white-space: normal;	
	left: 0px;
	top: 0px;
	bottom: 0px;
	right: 0px;
	font-size: 12px;
}

.uiHistoryTable table {
	border-collapse: collapse;
}

.uiHistoryTable td {
	border: 1px solid black;
	padding: 0.15em 0.5em;
}

.uiHistoryTable * {
	vertical-align: middle;
}

.uiHistoryTable thead {
	white-space: normal;
	text-align: center;
	background-color: lightblue;
}

.uiHistoryTable td {
	-moz-user-select: text;
	-webkit-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

.uiHistoryTable tbody > tr:hover {
	background-color: LightSkyBlue;
}

div.uiAlarms {
	white-space: normal;
	overflow: auto;
	height: 100%;
	width: 100%;
	text-align: center;
	padding: 0;
}

div.uiAbonents {
	white-space: normal;
	overflow: auto;
	height: 100%;
	width: 100%;
	text-align: center;
	padding: 0;
}

div.uiUsers {
	white-space: normal;
	overflow: auto;
	height: 100%;
	width: 100%;
	text-align: center;
	padding: 0;
}

div.uiClickableComponent {
	cursor: pointer;
	white-space: nowrap;
}

div.uiClickableComponent:hover > * {
	outline: 3px solid cyan;
}

.hmiClickArea {
	cursor: pointer;
}

div.hmiClickArea:hover {
	outline: 3px solid cyan;
	background-color: skyblue;
	opacity: 0.5;
}

path.hmiClickArea:hover {
	stroke-width: 3;
	stroke: cyan;
	stroke-opacity: 1;
	fill: skyblue;
	fill-opacity: 0.5;
}

/* workaround for firefox bug (http://stackoverflow.com/questions/10662902/css-outline-different-behavior-behavior-on-webkit-gecko) 
div.uiClickableComponent:hover:before {
   content: '';
   position: absolute; 
   z-index: -1;
   margin: 0; padding: 0;
   top: 0; left: 0;
   right: 0; bottom: 0;
   outline: 3px solid cyan;
}*/

div.uiRedBox {
	position: absolute;
	display: none;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: red;
	opacity: 0.5;
}

div.uiTextIndicator {
	width: 62px;
	height: 22px;
	line-height: 22px;
	margin: 0;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	border: 1px solid blue;
	background-color: white;
	/*font-family: sans-serif;*/
	font-weight: normal;
	font-size: 14px;
}

div.uiSetpointIndicator {
	width: 62px;
	height: 22px;
	line-height: 22px;
	margin: 0;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	border: 1px solid blue;
	background-color: lightgreen;
	/*font-family: sans-serif;*/
	font-size: 14px;
	/*font-weight:		bolder;*/
}

div.uiAnalogIndicator {
	width: 30px;
	height: 120px;
	margin: 0;
	padding: 0;
	border: none;
}

div.uiStateImage {
	margin: 0;
	padding: 0;
	width: 24px;
	height: 24px;
}

button.uiCmdButton {
	position: absolute;
	width: auto;
	height: auto;
	text-align: center;
	/*vertical-align:     middle;*/
	margin: 0;
	padding: 2px 4px;
	/*font-family: sans-serif;*/
	font-size: 13px;
	font-weight: bolder;
}

button.uiHighlight {
	color: blue;
	font-weight: bolder;
	text-shadow: 0 0 0.2em aqua;
}

div.uiTrend {
	position: absolute;
	margin: 0;
	padding: 0;
	cursor: pointer;
	background-color: lightgrey;
	border: none;
}

div.uiAboutFrame {
	background-color: White;
	line-height: 180%;
	text-align: center;
	padding: 1em;
	min-width: 300px;
	-moz-user-select: text;
	-webkit-user-select: text;
	-ms-user-select: text;
	user-select: text;
	white-space: normal;
}

div.uiChartsFrame {
	/*background-color: White;*/
	line-height: 120%;
	text-align: left;
	padding: 1em;
}





div.uiUserInfoFrame {
	background-color:	Gainsboro;
	padding:			1em;
}



div.editorItemNum {
	z-index: 100;
	position: absolute;
	left: 0px;
	top: 0px;
	opacity: 0.6;
	color: cyan;
	font-size: 12px;
	line-height: normal;
	text-shadow: -1px 0 #0000ff,0 1px #000080,1px 0 #000080,0 -1px #000080;
}

div.uiKeypadKey {
    display: inline-block;
    position: relative;
	background: rgb(180, 180, 180);
	font-size: 14px;
    border: 1px solid black;
	margin: 2px 4px;
	padding: 6px 10px;	   
}

div.formGrig {
    display:grid;
    align-items: center;
    grid-template-columns: auto auto;
    grid-gap: 5px;
}
div.formGrig label {
	text-align: right;
}
div.formGrig label:after {
	content: ":";
}

