:root {
	--zwave-js-main-color: rgb(46, 145, 205);
}

.zwjs-node-icon {
	color: var(--zwave-js-main-color);
	font-size: 40px;
}

.zwjs-node-id {
	background-color: var(--zwave-js-main-color);
	padding: 2px;
	display: inline-block;
	min-width: 30px;
	color: white;
	text-align: center;
	border-radius: 4px;
	margin-right: 5px;
}

.zwjs-node-id[nodeinfo] {
	height: 30px;
	line-height: 30px;
}

.zwjs-asso-ep,
#zwjs-endpoint-list div {
	background-color: var(--zwave-js-main-color);
	padding: 2px;
	display: inline-block;
	color: white;
	text-align: center;
	border-radius: 4px;
	font-size: 10px;
	margin-right: 3px;
	cursor: pointer;
}

.zwjs-asso-ep {
	font-size: 12px;
	min-width: 30px;
}

#zwjs-node-status,
#zwjs-node-status-tray,
#zwjs-controller-status,
#zwjs-controller-status-tray {
	font-size: 12px;
}

.zwjs-cc-id {
	background-color: var(--red-ui-palette-header-background);
	padding: 5px;
	color: black;
	text-align: center;
	border-radius: 4px;
	font-size: 12px;
}

.zwjs-cc-value {
	background-color: var(--red-ui-palette-header-background);
	text-align: center;
	border-radius: 4px;
	font-size: 12px;
	padding: 1px;
	float: right;
	color: var(--zwave-js-main-color);
	width: 90px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.zwjs-cc-value[edit] {
	display: inline-block;
	float: none;
}

#zwjs-endpoint-list div[selected] {
	background-color: rgb(135, 169, 128);
	color: white;
}

#zwjs-controller-info,
#zwjs-controller-info-tray {
	font-size: 12px;
	font-weight: bold;
	color: gray;
}

.zwjs-sb-menu-header {
	text-align: center;
	font-size: 22px;
	padding: 3px;
}

.zwjs-sb-menu-header a>i {
	cursor: pointer;
	color: white;
	background: var(--zwave-js-main-color);
	border-radius: 4px;
	padding: 5px;
	font-size: 12px;
	min-width: 15px;
}

.zwjs-sb-menu-header a>i.zwjs-button-group {
	filter: grayscale();
}

.zwjs-sb-menu-header a>i.zwjs-button-group[selected] {
	filter: none;
}

.zwjs-tray-header {
	width: 100%;
	background-color: var(--red-ui-palette-header-background);
	height: 40px;
	padding: 10px;
	-webkit-box-shadow: 0px 14px 13px -11px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0px 14px 13px -11px rgba(0, 0, 0, 0.5);
	box-shadow: 0px 14px 13px -11px rgba(0, 0, 0, 0.5);
	position: relative;
}

.zwjs-tray-menu {
	width: 200px;
	background-color: var(--red-ui-palette-header-background);
	height: calc(100% - 60px);
	padding: 10px;
	-webkit-box-shadow: 14px 0px 13px -11px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 14px 0px 13px -11px rgba(0, 0, 0, 0.5);
	box-shadow: 14px 0px 13px -11px rgba(0, 0, 0, 0.5);
	display: inline-block;
	vertical-align: top;
}

.zwjs-tray-menu>div {
	padding: 6px;
	border-radius: 6px;
	height: 20px;
	margin-bottom: 5px;
}

.zwjs-tray-menu>div[parent] {
	background-color: var(--zwave-js-main-color);
	color: white;
}

.zwjs-tray-menu>div[child] {
	cursor: pointer;
}

.zwjs-tray-menu>div[child]:hover {
	background-color: lightgray;
}

.zwjs-tray-menu>div[child][active] {
	background-color: rgb(135, 169, 128);
	color: white;
}

#zwjs-advanced-content {
	display: inline-block;
	width: calc(100% - 250px);
	overflow: scroll;
	height: calc(90vh - 145px);

	vertical-align: top;
	padding: 20px;
	box-sizing: border-box;
}

table.zwjs-table {
	overflow: hidden;
	width: 100%;
	border-radius: 4px;
}

table.zwjs-table td {
	padding: 5px;
}

table.zwjs-table[horizontal] tr {
	background-color: var(--red-ui-palette-header-background);
}

table.zwjs-table[horizontal] tr:first-of-type {
	background-color: lightgray;
	width: 150px;
}

table.zwjs-table[vertical] td:first-of-type {
	background-color: lightgray;
	width: 150px;
}

table.zwjs-table[vertical] td:nth-of-type(2) {
	background-color: var(--red-ui-palette-header-background);
}

.zwjs-fieldset {
	border: none;
}

.zwjs-fieldset div.zwjs-hint {
	margin-bottom: 20px;
	background-color: lightgoldenrodyellow;
	padding: 5px;
	border-radius: 6px;
	border-style: solid;
	border-width: 1px;
	border-color: gray;
}

.zwjs-fieldset * label {
	display: inline-block;
}

.zwjs-fieldset>div button {
	min-width: 120px;
	background-color: var(--zwave-js-main-color);
	border-color: lightgray;
	border-style: solid;
	border-width: 1px;
	border-radius: 4px;
	float: right;
	color: white;
	margin-top: 10px;
}

.zwjs-fieldset>div>button[disabled] {
	background-color: gray;
}

.zwjs-empises {
	margin-right: 5px;
	padding: 5px;
	border-radius: 4px;
}

.zwjs-empises[positive] {
	background-color: rgb(135, 169, 128);
	color: white;
}

.zwjs-empises[negative] {
	background-color: red;
	color: white;
}

.zwjs-empises[warn] {
	background-color: orange;
	color: white;
}

.zwjs-node-state-group {
	font-size: 16px;
	float: right;
	margin-right: 15px;
	color: gray;
}

.zwjs-node-state-group[group] {
	font-size: 12px;
	text-align: center;
}

.zwjs-node-state-group i {
	margin-right: 5px;
	min-width: 20px;
	text-align: center;
}

i.zwjs-state-amber {
	color: orange;
}

i.zwjs-state-red {
	color: red;
}

i.zwjs-state-green {
	color: green;
}

i.zwjs-state-darkgray {
	color: darkgray;
}

i.zwjs-state-darkblue {
	color: darkblue;
}

#zwjs-camera-view {
	width: 300px;
	border-radius: 6px;
	margin: auto;
	display: block;
	margin-top: 30px;
	border-width: 2px;
	border-style: solid;
	border-color: var(--zwave-js-main-color);
}

.scan-region-highlight>svg.scan-region-highlight-svg {
	stroke-width: 10 !important;
	stroke: var(--zwave-js-main-color) !important;
}

.scan-region-highlight>svg.code-outline-highlight {
	stroke: red !important;
	stroke-width: 20 !important;
}

.zwjs-rating[good] {
	background-color: rgb(135, 169, 128);
	padding: 2px;
	border-radius: 4px;
	color: white;
}

.zwjs-rating[warn] {
	background-color: orange;
	padding: 2px;
	border-radius: 4px;
	color: black;
}

.zwjs-rating[bad] {
	background-color: red;
	padding: 2px;
	border-radius: 4px;
	color: white;
}

.zwjs-rating[wait] {
	background-color: grey;
	padding: 2px;
	border-radius: 4px;
	color: white;
}

.zwjs-json-key {
	color: rgb(199, 48, 53);
}

.zwjs-json-value {
	color: rgb(243, 135, 48);
}

.zwjs-json-string {
	color: rgb(130, 152, 52);
}

.zwjs-progress-container {
	display: none;
	width: 100%;
	margin-top: 20px;
	background-color: #ddd;
	border-radius: 8px;
	overflow: hidden;
}

.zwjs-progress-bar {
	width: 0%;
	height: 30px;
	background-color: var(--zwave-js-main-color);
	text-align: center;
	line-height: 30px;
	color: white;
	overflow: hidden;
}

.zwjs-dsk-show {
	text-align: center;
	margin-top: 60px;
	color: var(--zwave-js-main-color);
	font-size: 26px;
	font-weight: bold;
}

.zwjs-title {
	font-size: 16px;
	border-bottom: 1px solid var(--zwave-js-main-color);
	margin-top: 40px;
	margin-bottom: 5px;
	color: lightslategray;
	padding: 5px;
}

.zwjs-title:first-of-type {
	margin-top: 10px;
}

.zwjs-mermaid svg {
	height: calc(90vh - 300px) !important;
	max-width: none !important;
	width: 100% !important;
}

img.zwjs-ui-logo {
	width: 36px;
}

#zwjs-sidebar .red-ui-treeList-label {
	padding: 3px 0;
	font-size: 12px;
}

#zwjs-sidebar .red-ui-sidebar-header {
	display: block;
}