:root {
    --sidera-color: #025D88;
    --link-color: #38bfff; /*#8CC726;*/
    --button-color: rgba(0,0,0,0.5);
    --button-hover-color: rgba(0,0,0,0.3);
    --button-light-color: rgba(255,255,255,0.3);
    --button-light-hover-color: rgba(255,255,255,0.5);
    --text-color: white;
    --light-gray-color: #C0C0C0;
    --strong-color: white; /*#FFCC00;*/
    --border-bottom-color: rgba(255,255,255,0.2);
    --positive-color: #9DCF38;
}

body {
	background-color: var(--sidera-color);
	background-image: url(../images/background.png);
	background-size: 66% auto;
	padding: 0;
	margin: 0;
	font-family: "Font", "Trebuchet MS";
	color: #BCC4C4;

	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;

	-webkit-text-size-adjust: none;

	position: relative;
	min-height: 100%;
}

html {
	height: 100%;
	margin: 0;
	padding: 0;
}

@font-face {
	font-family: "Font";
	src: url(../fonts/Myriad-Web-Pro.otf) format('opentype'),
		 url(../fonts/Myriad-Web-Pro.ttf) format('truetype'),
		 url(../fonts/Myriad-Web-Pro.eot);
}

@font-face {
	font-family: "Font-Condensed";
	src: url(../fonts/Myriad-Pro.otf) format('opentype'),
		 url(../fonts/Myriad-Pro.ttf) format('truetype'),
		 url(../fonts/Myriad-Pro.eot);
}

div.content ::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

div.content ::-webkit-scrollbar-track {
	background: none;
}

div.content ::-webkit-scrollbar-thumb {
	background-color: rgba(255,255,255,0.5);
}

p {
	margin: 0.5em 0;
}

a {
	text-decoration: none;
	color: var(--link-color);
}

a:hover {
	text-decoration: underline;
}

h1 {
	font-size: 2.5em;
	color: white;
	font-weight: normal;
	margin: 0 0 0.2em 0;
}

h2 {
	font-size: 1.2em;
	font-weight: normal;
	margin: 0 0 0.6em 0;
}

h3, h4 {
	font-family: "Font-Condensed", "Trebuchet MS";
	font-size: 1.8em;
	font-weight: normal;
	margin: 0 0 0.2em 0;
}

h4 {
	font-size: 1em;
	letter-spacing: 0.1em;
}

h6 {
	margin: 0;
}

img {
	border: none;
}

img.pretty {
	padding: 3px;
	border: 1px solid rgba(255,255,255,0.5);
	background-color: rgba(255,255,255,0.3);
	margin: 0.5em;
}

ul {
	list-style-type: none;
}

hr {
	clear: both;
}

fieldset {
	background: none;
	border: none;
	padding: 0;
	margin-bottom: 1em;
}

div:not(.wrapper) form label {
	display: inline-block;
	min-width: 100px;
	vertical-align: top;
	line-height: 1.5em;
	margin: 2px 1em 0 0;
}

div:not(.wrapper) form label:after {
	content: ":";
}

form input[type=radio] {
    margin-top: 5px;
}

form input[type=checkbox] + label, form input[type=radio] + label {
	width: auto!important;
	min-width: 0;
	cursor: pointer;
    margin-right: 0;
}

form input[type=checkbox] + label:after, form input[type=radio] + label:after {
	content: none;
}

form input[type=checkbox][disabled=disabled] + label {
	cursor: default;
}

form input[type=text], form input[type=email], form input[type=password], form textarea, div:not(.wrapper) form select, div.sub-content > div > input {
	background-color: rgba(255,255,255,0.1);
	border: 1px solid rgba(255,255,255,0.3);
	padding: 0.3em;
	color: white;
	font-family: "Font";
}

input {
    accent-color: #025D88;
}

input[type=range], input[type=date], input[type=time], input[type=datetime-local], input[type=submit] {
	-webkit-appearance: none !important;
	-webkit-border-radius: 0px;
	border-radius: 0px;
}

input[type=range] {
	background: white;
	height: 8px;
	width: 100%;
	margin: 0;
	padding: 0;
	margin-bottom: 10px;

	-webkit-border-radius: 4px;
	border-radius: 4px;
}

input[type=range]::-moz-range-track {
	background: none;
	border: none;
}

input[type=range]::-webkit-slider-thumb {
	-webkit-appearance: none !important;
	background-color: #A3A3A3;
	border: none;
	height: 20px;
	width: 20px;
	cursor: pointer;

	-webkit-border-radius: 10px;
	border-radius: 10px;
}

/* Per Firefox non è possibile accomunare questa voce con le altre */
input[type=range]::-moz-range-thumb {
	background: #A3A3A3;
	border: none;
	height: 20px;
	width: 20px;
	cursor: pointer;

	border-radius: 10px;
}

select {
    background-color: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.3);
    padding: 0.3em;
    color: white;
    color-scheme: dark;
    font-family: "Font";
    box-sizing: border-box;
    font-size: 1em;
}

select option {
    color: black;
}

tbody > tr {
	font-size: 0.85em;
	padding: 0.3em;
}

tbody > tr:nth-child(even) {
	background-color: rgba(255,255,255,0.1);
}

tbody > tr:nth-child(odd) {
	background-color: rgba(255,255,255,0);
}

tbody td {
	padding: 0.3em;
}

.ie input[type=range] {
	height: 20px;
	background: none;
	padding: 0;
}

.ie input[type="range"]::-ms-fill-upper, input[type="range"]::-ms-fill-lower {
    background-color: white;
}

.ie input[type="range"]::-ms-thumb {
	background-color: #A3A3A3;
	border: none;
	height: 20px;
	width: 20px;
	cursor: pointer;
	border-radius: 10px;
}

.ie input[type="range"]::-ms-track {
    color: white;
    border: 1px solid white;
	border-radius: 8px;
}

input[type=date], input[type=time], input[type=datetime-local] {
	font-weight: bold;
	font-family: "Font";
	cursor: pointer;
	text-align: center;
	padding: 0.3em;
	color: white;
	background-color: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.3);
	color-scheme: dark;
}

input[type=time] {
	letter-spacing: 0.1em;
}

input[type=submit] {
	font-size: 1em;
    padding: 0.5em 3em;
	/*padding: 0.75em 4em 0.65em 4em;*/
	background-color: var(--button-color);
	border: none;
	color: white;
	font-family: "Font";
	font-weight: bold;
	cursor: pointer;
}

div.sub-content input[type=submit] {
	background-color: var(--button-light-color);
}

body:not(.touch) div.sub-content input[type=submit]:hover {
	background-color: var(--button-light-hover-color);
}

input[type=submit][disabled=disabled] {
	background-color: var(--light-gray-color);
	color: gray;
	cursor: default;
}

body:not(.touch) input[type=submit]:not([disabled=disabled]):hover {
	background-color: var(--button-hover-color);
}

fieldset textarea {
	height: 50px;
	min-width: 400px;
	max-width: 790px;
	max-height: 400px;
}

fieldset option {
	color: black;
	padding: 0.3em;
}

form fieldset > div {
	margin-top: 1em;
}

fieldset > div > a {
	line-height: 1.6em;
}

fieldset input[type=text], fieldset input[type=email], fieldset input[type=password] {
	width: 400px;
}

form h3 {
	border-bottom: 1px solid var(--border-bottom-color);
}

form > p {
	line-height: 1.5em;
	text-align: right;
}

pre {
	width: auto;
	border: 1px solid gray;
	background: #272727;
	color: white;
	padding: 1em;
	word-wrap: break-word;
	white-space: break-spaces;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

sup {
    vertical-align: 0.3em;
    font-size: 0.7em;
}

@-webkit-keyframes spaceboots {
	0% { -webkit-transform: rotate(0deg); }
	25% { -webkit-transform: rotate(-1deg); }
	50% { -webkit-transform: rotate(0deg); }
	75% { -webkit-transform: rotate(1deg); }
	100% { -webkit-transform: rotate(0deg); }
}

@-webkit-keyframes spaceboots2 {
	0% { -webkit-transform: rotate(0deg); }
	25% { -webkit-transform: rotate(1deg); }
	50% { -webkit-transform: rotate(0deg); }
	75% { -webkit-transform: rotate(-1deg); }
	100% { -webkit-transform: rotate(0deg); }
}

.shake0, .shake1 {
	-webkit-animation-name: spaceboots;
	-webkit-animation-duration: 0.3s;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-timing-function: linear;
}

.shake0 {
	-webkit-animation-name: spaceboots;
}

.shake1 {
	-webkit-animation-name: spaceboots2;
}

p.common-selection {
    font-size: 0.8em;
}

p.common-selection > a {
    cursor: pointer;
}

p.common-selection > a:hover {
    text-decoration: underline;
}

p.truncable {
    overflow-x: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* HEADER */

.header {
	min-height: 70px;
	min-width: 970px;
	width: 100%;
	color: #606060;
	border-bottom: 2px solid rgba(229,229,229,1);

	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #e5e5e5 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e5e5e5)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#e5e5e5 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #ffffff 0%,#e5e5e5 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #ffffff 0%,#e5e5e5 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #ffffff 0%,#e5e5e5 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5',GradientType=0 ); /* IE6-9 */

	-webkit-box-shadow:  0px 0px 20px 0px rgba(0, 0, 0, 0.6);
	box-shadow:  0px 0px 20px 0px rgba(0, 0, 0, 0.6);
}

.header {
	min-height: 70px;
	min-width: 970px;
	width: 100%;
	color: #606060;
	/*border-bottom: 2px solid #fdfdfd;
	background: #fdfdfd;*/

	-webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
}

.header img.logo-una {
	height: 35px;
	width: 111px;
	margin: 17px 30px;
	float: left;
	vertical-align: middle;
}

.header > a#jump {
	display: none;
}

.header > a.logo {
	position: relative;
	display: inline-block;
	float: left;
}

.header > a.logo[accesskey]:before {
	margin-left: 71px;
	margin-top: 8px;
}

.header > div {
	text-align: center;
	margin: 0;
}

.header > div img.logo-una {
	margin: 17px 0 19px 0;
	float: none;
}

/* FOOTER */

.footer {
	position: relative;
	width: 960px;
	min-height: 1em;
	margin: 0.5em auto;
	padding-bottom: 1em;
	font-size: 0.7em;
	text-align: center;
	color: gray;
	clear: both;
}

.footer > a {
	color: white;
	cursor: pointer;
}

a.index-pages {
	background-image: url(../images/icons/shared/edit.png);
	background-position: center;
	background-repeat: no-repeat;
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 0.5em;
	vertical-align: bottom;
}

a.up {
	display: block;
	background-position: center;
	background-repeat: no-repeat;
	width: 50px;
	height: 50px;
	background-color: rgba(255,255,255,0.5);
	position: fixed;
	text-align: center;
	bottom: 15px;
	right: 15px;
	cursor: pointer;

	-webkit-border-radius: 0.2em;
	border-radius: 0.2em;
}

a.up > img {
	width: 60%;
	margin-top: 30%;
}

div#are-you-there {
	display: none;
    position: fixed;
    bottom: 1em;
    right: 1em;
    width: 13em;
    background-color: #ff0000cf;
    padding: 1em;
    -webkit-border-radius: 0px;
    border-radius: 5px;
    text-align: center;
}

div#are-you-there > span {
	background-color: white;
    color: red;
    padding: 0.5em 0.2em 0.3em 0.2em;
    display: block;
    margin: 0.5em auto;
    font-size: 1.5em;
    font-weight: bold;
}

/* CONTENT */

div.content {
	position: relative;
	width: 960px;
	margin: 2em auto 1em auto;
}

div.content > h1 {
	clear: left; /* no both per via del countdown nelle mappe e categorie */
}

div.sub-header ~ div.content {
	margin-top: 1em;
}

p.error ~ div.content, p.warning ~ div.content, p.success ~ div.content, p.info ~ div.content {
    margin-top: 0.5em;
}

/* RAPID LINKS */

div.content > div.rapid-links {
	float: right;
	margin-top: -3.5em;
}

div.content > div.rapid-links > a {
    margin-left: 0.3em;
    background-color: var(--button-color);
    color: white;
    padding: 0.6em 0.7em 0.5em 32px;
    background-repeat: no-repeat;
    background-position: 9px center;
    text-decoration: none;
}

body:not(.touch) div.content > div.rapid-links > a:hover {
	background-color: var(--button-hover-color);
}

div.content > div.rapid-links > a.new {
	background-image: url(../images/icons/shared/rapid-links/new.png);
}

div.content > div.rapid-links > a.edit {
	background-image: url(../images/icons/shared/rapid-links/edit.png);
}

div.content > div.rapid-links > a.show {
	background-image: url(../images/icons/shared/rapid-links/show.png);
}

div.content > div.rapid-links > a.old {
	background-image: url(../images/icons/shared/rapid-links/old.png);
}

div.content > div.rapid-links > a.download {
	background-image: url(../images/icons/shared/rapid-links/download.png);
}

div.content > div.rapid-links > a.simulate {
	background-image: url(../images/icons/shared/rapid-links/simulate.png);
}

div.content > div.rapid-links > a.hotel-dashboard-link {
    background-image: url(../images/icons/shared/rapid-links/dashboard.png);
}

div.content > div.rapid-links > a.hotel-rooms-link {
    background-image: url(../images/icons/shared/rapid-links/rooms.png);
}

/* SUB CONTENT */

div.sub-content[class*="-guide"] {
	line-height: 1.34em;
}

div.sub-content > div > input:not([type=checkbox]) {
	float: right;
	margin-top: 0.9em;
	width: 200px;
	padding-left: 22px;
	background-image: url(../images/icons/shared/search.png);
	background-repeat: no-repeat;
	background-position: 3px 3px;
}

div.sub-content {
	padding: 0;
	background: none;
}

div.sub-content > div, div.sub-content > form {
	background-image: url(../images/black-background.png);
	padding: 1.5em;
	margin: 0;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.sub-content > div.list-header {
	margin-top: 0.5em;
	padding-top: 0.2em;
	padding-bottom: 0;
	cursor: pointer;
}

div.sub-content > div.list-header > h3 {
	display: inline;
	line-height: 1.8em;
}

div.sub-content > div.sort-buttons {
	background-color: rgba(0,0,0,0.4);
	background-image: none;
	padding: 0 0.5em;
	margin: 0;
	font-size: 0.8em;
	cursor: default;
}

body:not(.touch) div.sub-content > div.sort-buttons:hover {
	opacity: 1!important;
}

div.sub-content > div.sort-buttons > ul {
	display: inline-block;
	padding: 0;
	margin: 0 0.5em;
}

div.sub-content > div.sort-buttons > ul > li {
	display: inline-block;
	border: none;
	padding: 0.5em;
	padding-bottom: 0.3em;
	border-left: 1px solid rgba(255,255,255,0.2);
	cursor: pointer;
}

div.sub-content > div.sort-buttons > ul > li:last-child {
	border-right: 1px solid rgba(255,255,255,0.2);
}

body:not(.touch) div.sub-content > div.sort-buttons > ul > li:not(.active):hover {
	background-color: rgba(255,255,255,0.1);
}

div.sub-content > div.sort-buttons > ul > li.active {
	background-color: var(--link-color);
	color: white;
	padding-left: 22px;
}

div.sub-content > div.sort-buttons > ul > li.asc {
	background-image: url(../images/icons/shared/asc.png);
	background-repeat: no-repeat;
	background-position: 5px 7px;
}

div.sub-content > div.sort-buttons > ul > li.desc {
	background-image: url(../images/icons/shared/desc.png);
	background-repeat: no-repeat;
	background-position: 5px 8px;
}

div.sub-content > ul {
	background-image: url(../images/black-background.png);
	padding: 0;
	margin: 0 0 0.5em 0;
}

div.sub-content > ul > li {
	position: relative;
	border-bottom: 1px solid var(--border-bottom-color);
	padding: 1em;
	cursor: pointer;
}

div.sub-content > ul > li:last-child {
	border-bottom: none;
}

body:not(.touch) div.sub-content > ul > li:hover {
	background-color: rgba(255,255,255,0.1);
}

div.sub-content div.buttons {
	position: absolute;
	top: 0;
	right: 0;
	padding: 0.8em;
}

div.sub-content div.buttons > a, div.sub-content div.buttons > form > input[type=submit], div.use-coupon span#supervisor-button {
	display: block;
	width: 100px;
	background-color: rgba(255,255,255,0.15);
	border: none;
	padding: 0.2em 0.3em;
	margin-bottom: 0.3em;
	color: white;
	text-align: center;
	text-decoration: none;
	font-weight: normal;
	font-size: 1em;
}

div.sub-content div.buttons > form > input[type=submit] {
	box-sizing: content-box;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
}

body:not(.touch) div.sub-content div.buttons > a:hover, body:not(.touch) div.sub-content div.buttons > form > input[type=submit]:hover {
	background-color: rgba(255,255,255,0.4);
}

/* COMMON */

p.description, span.description {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

span.star {
	color: var(--light-gray-color);
}

p.star {
	color: var(--light-gray-color);
	font-size: 0.8em;
	margin-top: 1em;
	clear: both;
	text-align: left;
}

input[type=text].with-error, input[type=email].with-error, input[type=password].with-error, input[type=file].with-error, div.with-error {
	background-color: rgba(255,0,0,0.5);
	border-color: rgba(255,0,0,0.7);
}

input[type=checkbox] {
	margin-top: 7px;
}

input[type=checkbox].with-error + label {
	background-color: rgba(255,0,0,0.5);
	border: 1px solid rgba(255,0,0,0.7);
	padding-left: 0.3em;
	padding-right: 0.3em;
}

input[type=file] {
	cursor: pointer;
    background-color: rgba(255,255,255,0.1);
    padding: 1em;
}

p.error, p.success, p.info, p.warning, div#warning, div.disclaimer {
	max-width: 944px;
	text-align: left;
	padding: 0.3em 0.5em;
	margin: 0.5em auto;
	font-size: 0.9em;
	line-height: 1.5em;
	border: 1px solid;
	clear: both;

	-webkit-border-radius: 5px!important;
    border-radius: 5px!important;

    -webkit-box-shadow:  0px 2px 2px 0px rgba(0, 0, 0, 0.2);
    box-shadow:  0px 2px 2px 0px rgba(0, 0, 0, 0.2);
}

ul > p.error {
	margin: 1em;
}

body > p.error, body > p.warning, body > p.success, body > p.info {
	margin-top: 1em;
	margin-bottom: 1em;
}

p.success {
	color: #486500;
	border-color: #b7df2d;
	background-color: #b7df2d;
}

p.error, div.disclaimer {
	color: white;
    border-color: #ff4242;
    background-color: #ff4242;
}

p.info {
	color: white;
	border-color: #66b6fc;
	background-color: #66b6fc;
}

p.error > a, p.info > a {
	color: white;
	text-decoration: underline;
}

p.info > img, p.warning > img {
	max-height: 3em;
    height: 1.5em;
    vertical-align: middle;
    margin-right: 0.5em;
    float: left;
}

p.warning, div#warning {
	color: #968700;
	border-color: #decd46;
	background-color: #f9e75c;
}

div#warning {
	display: none;
}

p.warning a, div#warning a {
	color: #5ba500;
	text-decoration: underline;
}

p.date {
	font-size: 0.7em;
	color: var(--light-gray-color);
	margin: 0;
	clear: both;
}

.highlight {
	background-color: rgba(0,0,0,0.5);
	padding: 0.1em 0.1em;

	-webkit-box-shadow:  0px 0px 6px 0px rgba(255, 255, 255, 0.5);
    box-shadow:  0px 0px 6px 0px rgba(255, 255, 255, 0.5);
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.cross {
	width: 16px;
	height: 16px;
	display: inline-block;
	background-image: url(../images/icons/shared/cross.png);
	background-repeat: no-repeat;
	background-position: center;
	cursor: pointer;
}

.continue {
	background-image: url(../images/icons/shared/continue.png);
	background-repeat: no-repeat;
	background-position: right 0.4em center;
	margin-left: 0.6em;
	padding: 0.4em 1.8em 0.2em 0.5em;
	background-color: rgba(255,255,255,0.3);
	color: white;
	cursor: pointer;
}

body:not(.touch) .continue:hover {
	background-color: rgba(255,255,255,0.5);
	text-decoration: none;
}

div.box > em {
	display: inline-block;
	padding: 1em;
}

a.back > li {
	background-image: url(../images/icons/shared/back.png);
	background-repeat: no-repeat;
	background-position: 0.5em top;
	padding-left: 1.5em!important;
}

body:not(.touch) a.back:hover > li {
	background-position: 0.5em bottom;
}

div#notes {
	background-color: rgba(255,255,255,0.1);
	padding: 0.5em;
	font-size: 0.9em;
}

div#notes > p {
	margin: 0;
}

div#notes > ul {
	margin: 0;
	padding: 0;
	padding-left: 1em;
}

div#notes > ul > li {
	list-style-type: disc;
	padding-top: 0.2em;
}

li div.image + div, div.avatar + div {
	overflow-x: hidden;
	text-overflow: ellipsis;
}

img.menu-button {
	display: none;
	width: 28px;
	height: 28px;
	float: right;
	margin: 0.7em;
}

p.white-stripe {
    background-color: white;
    margin-top: 0;
}

p.white-stripe > img {
	display: block;
    margin: 0 auto 2em auto;
    padding: 0.8em;
	max-height: 3em;
    max-width: 80%;
}

/* MENU */

ul.menu {
	margin: 0;
	float: left;
	padding: 0;
}

ul.menu > a {
	position: relative;
	display: inline-block;
}

ul.menu > a[accesskey]:before {
	margin-left: -5px;
	margin-top: 8px;
}

ul.menu li {
	height: 70px;
	padding: 0 1em;
	line-height: 70px;
	display: inline-block;
	color: #606060;
}

body:not(.touch) ul.menu li:hover {
	color: black;
	border-bottom: 2px solid black;
}

ul.menu li img {
	display: none;
}

/* SUB-HEADER */

div.sub-header {
	width: 960px;
	color: #606060;
	text-align: center;
	line-height: 1em;
	padding-top: 0.2em;
	margin: 0 auto 1em auto;
	border-top: 1px solid #CACACA;
	background: #e5e5e5;

	-webkit-border-radius: 0px 0px 0.75em 0.75em;
    border-radius: 0px 0px 0.75em 0.75em;
	-webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3);
}

ul#languages_list:hover, div.ou:hover {
	background: #e5e5e5; /* Old browsers */
	background: -moz-linear-gradient(top,  #e5e5e5 25%, #d1d1d1 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(25%,#e5e5e5), color-stop(100%,#d1d1d1)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #e5e5e5 25%,#d1d1d1 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #e5e5e5 25%,#d1d1d1 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #e5e5e5 25%,#d1d1d1 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #e5e5e5 25%,#d1d1d1 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#d1d1d1',GradientType=0 ); /* IE6-9 */
}

/* SUB-MENU */

ul.sub-menu {
	margin: 0;
	padding: 0;
	font-size: 0;
}

ul.sub-menu > a {
	display: inline-block;
	color: #606060;
	text-decoration: none;
	border-bottom: 2px solid #e5e5e5;
	padding-top: 2px;
}

ul.sub-menu > a > li {
	display: inline;
	border-right: 1px solid #CACACA;
	padding: 0 1em;
	font-size: 14px;
	line-height: 2em;
}

ul.sub-menu > a:first-child > li {
	border-left: 1px solid #CACACA;
}

ul.sub-menu > a > li > img {
	height: 1em;
	vertical-align: -0.1em;
    margin-right: 0.2em;
}

body:not(.touch) ul.sub-menu > a:hover {
	color: black;
	border-bottom: 2px solid black;
}

/* OU */

div.ou {
	position: absolute;
	bottom: 5px;
	left: 2px;
	color: white;
	cursor: default;
	border: 1px solid rgba(0,0,0,0);
	padding: 0.5em;
	text-align: left;
	z-index: 1;

	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
}

div.ou:hover {
	border: 1px solid rgb(175, 175, 175);
}

div.ou > p {
	margin-bottom: 0;
}

div.ou > p > span {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 2px;
	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
}

div.ou > p.online > span {
	background-color: var(--link-color);
}

div.ou > p.offline > span {
	background-color: gray;
}

div.ou > ul {
	display: none;
	padding: 0;
	padding-bottom: 0.3em;
	margin: 0;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}

div.ou:hover > ul {
	display: block;
}

div.ou > ul > a {
	text-decoration: none;
}

div.ou:hover > ul li {
	color: #606060;
	padding: 0.3em 0.5em 0 0.5em;
}

div.ou:hover > ul li:hover, ul#languages_list:hover > ul li:hover {
	background-color: var(--link-color);
	color: white;
}

div.ou:hover p, ul#languages_list:hover li {
    color: #606060;
}

div.ou img {
    height: 0.8em;
}

div.ou img.semi-transparent {
	opacity: 0.3;
}

/* LANGUAGES */

ul#languages_list {
	position: absolute;
	width: 5em;
	bottom: 5px;
	right: 2px;
	padding: 0.3em;
	cursor: pointer;
	margin: 0;
	text-align: left;
	font-size: 1.2em;
	border: 1px solid rgba(0,0,0,0);

	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
}

ul#languages_list:hover {
	border: 1px solid rgb(175, 175, 175);
}

ul#languages_list > a {
	text-decoration: none;
}

ul#languages_list li {
	color: white;
	display: none;
	font-size: 0.8em;
}

ul#languages_list:hover li {
	display: block;
}

ul#languages_list li:hover {
	background-color: var(--link-color);
	color: white;
}

ul#languages_list li.active {
	display: block;
}

ul#languages_list li > img {
	width: 18px;
	vertical-align: middle;
	padding: 0 0.2em;
}

/* LINKS */

ul.links {
	margin: 0 15px;
	float: right;
	padding: 0;
}

ul.links > a {
	position: relative;
	display: inline-block;
}

ul.links > a[accesskey]:before {
	margin-left: -3px;
	margin-top: 8px;
}

ul.links li {
	display: inline-block;
}

body:not(.touch) ul.links li:hover {
	border-bottom: 2px solid black;
}

ul.links > div#current_user {
	display: inline-block;
	vertical-align: top;
	padding-top: 19px;
	text-align: right;
}

ul.links > div#current_user > p, ul.links > div#current_user > a {
	margin: 0;
	font-size: 0.9em;
}

ul.links img {
	height: 32px;
	margin: 17px 10px;
}

ul.links img#current_user_icon {
	background-color: gray;
	height: 30px;
	padding: 1px;
}

ul.links span {
	display: none;
}

/* HOME */

ul.home {
	padding: 30px!important;
	text-align: center;
}

ul.home > a {
	position: relative;
	text-decoration: none;
}

ul.home li {
	position: relative;
	width: 100px;
	padding: 1em 2em 0 2em;
	display: inline-block;
}

body:not(.touch) ul.home li:hover {
	background-color: rgba(255,255,255,0.3);
}

ul.home img {
	max-width: 60px;
	height: 60px;
}

ul.home p {
    color: var(--text-color);
}

ul.home + div.last_post {
	background-color: rgba(0,0,0,0.5);
	background-image: url(../images/icons/home/post.png);
    background-position: 1em;
    background-repeat: no-repeat;
    padding: 1em 1em 1em 3em;
}

form.popup-find {
	position: absolute;
	top: 100%;
	left: 0;
	padding: 0.5em;
	background-color: rgba(0,0,0,0.7);
	width: 100%;
	z-index: 1;
	display: none;
	
	/* Permette di impostare una width al 100% senza sforare il padding del container */
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

form.popup-find > input[type=text] {
	width: 90%;
	color: white;
}

/* INSTALLATIONS */

div.installations > div {
	cursor: pointer;
	margin-top: 1em;
}

div.installations a#online_count {
	font-weight: bold;
}

div.installations > ul#list-installations > div#loading {
	min-height: 5em;
    background-image: url(../images/icons/shared/loading.gif);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 2em;
}

div.installations div.image {
	position: relative;
	background-color: white;
	height: 60px;
	width: 60px;
	float: left;
	margin: 0 0.5em 0.5em 0;
	text-align: center;
	overflow: hidden;
}

div.installations div.image > img {
	min-width: 100%;
	height: 100%;
	margin: 0 -100%;
}

div.installations div.image > div.online-status {
    background-color: var(--light-gray-color);
    width: 100%;
    height: 8px;
    position: absolute;
    bottom: 0;
    font-size: 8px;
    color: black;
    letter-spacing: 2px;
    line-height: 10px;
    text-transform: uppercase;
}

div.installations div.image > div.online {
	background-color: var(--positive-color);
	font-weight: bold;
	color: white;
}

div.installations p.name {
	font-size: 1.2em;
	margin: 0 6em 0.2em 0;
}

div.installations p.description {
	max-width: 86%;
	font-size: 0.9em;
	margin: 0;
}

div.installations div.installer, div.installations div.owner {
	display: inline-block;
	margin: 0.3em 0.5em 0.3em 0;
	padding: 2px 0 0 22px;
}

div.installations div.installer {
	background-image: url(../images/icons/installations/installer.png);
	background-repeat: no-repeat;
}

div.installations div.owner {
	background-image: url(../images/icons/installations/owner.png);
	background-repeat: no-repeat;
}

div.installations div.id_lapis {
	font-size: 0.8em;
	color: var(--light-gray-color);
}

/* FORM INSTALLATION */

form.form_installation div.online-status {
	float: right;
	text-align: center;
	margin-right: 1em;
}

form.form_installation div.online-status > div {
	width: 60px;
	height: 60px;
	margin-bottom: 0.5em;
	border: 2px solid rgba(255,255,255,0.3);
	margin: 0 auto;

	-webkit-border-radius: 32px;
	border-radius: 32px;
}

form.form_installation div.online-status > div.online {
	background-color: var(--positive-color);
	background-image: url(../images/icons/installation/connected.png);
	background-position: center;
	background-repeat: no-repeat;
}

form.form_installation div.online-status > div.offline {
	background-color: #909090;
	background-image: url(../images/icons/installation/disconnected.png);
	background-position: center;
	background-repeat: no-repeat;
}

form.form_installation div.online-status > p {
	margin-bottom: 0;
}

form.form_installation div.online-status > span {
	display: block;
	font-size: 0.7em;
	color: var(--light-gray-color);
	margin: 0;
}

form.form_installation input#installation_delete_project {
	display: none;
}

form.form_installation a.download_project {
	background-image: url(../images/icons/installation/download.png);
}

form.form_installation span.delete_project {
	background-image: url(../images/icons/installation/cross.png);
}

form.form_installation div#current_project > p {
	font-size: 0.8em;
	color: var(--light-gray-color);
}

form.form_installation input#change_local_project.disabled + label {
    text-decoration: line-through;
    color: var(--light-gray-color);
    margin-right: 0.3em;
    display: inline;
    vertical-align: 0.1em;
}

form.form_installation input#change_local_project.disabled + label + span {
    font-size: 0.9em;
    background-color: rgba(255,255,255,0.2);
    padding: 0.3em 0.5em 0.2em 0.5em;
    border-radius: 0.3em;
    color: #dfdfdf;
    display: inline-block;
    vertical-align: 0.2em;
}

form.form_installation p.ongoing-change-local-project {
	line-height: 1.5em;
}

form.form_installation input#change_local_project:checked ~ div#disclaimer {
	display: block;
	margin-top: 0.5em;
}

form.form_installation img.installation-service {
	height: 1.5em;
    background-color: white;
    padding: 0.5em 1em;
    border-radius: 0.5em;
    vertical-align: middle;
}

form.form_installation fieldset#installation-services > div {
	background-color: rgba(255,255,255,0.1);
    padding: 0.5em;
}

form.form_installation fieldset#installation-services > div > * {
	vertical-align: middle;
}

form.form_installation fieldset#installation-services img {
	height: 1.2em;
    background-color: white;
    padding: 0.5em 1em;
    border-radius: 0.5em;
    margin-right: 0.5em;
}

form.form_installation fieldset#installation-services > div > input[type=checkbox] {
	margin-top: 0;
}

form.form_installation fieldset#installation-services > div > p {
	margin-bottom: 0;
}

/* SUPERVISOR INSTALLATION */

div.installation-supervisor h3 {
	margin-top: 0.2em;
}

div.installation-supervisor fieldset > div {
	margin-bottom: 1em;
}

div.installation-supervisor fieldset > div > p {
	display: inline;
}

/* OLD INSTALLATION */

div.installation-old > ul {
	padding: 0;
}

div.installation-old > ul > li {
	cursor: default;
}

body:not(.touch) div.installation-old > ul > li:hover {
	background: none;
}

div.installation-old > ul > li > p.name, div.installation-old > ul > li > p.id_lapis, div.installation-old > ul > li > p.size {
	margin: 1px;
}

div.installation-old > ul > li > p.name {
	color: var(--light-gray-color);
}

div.installation-old img {
	float: left;
	height: 3em;
	margin: 0 0.5em 0.5em 0;
}

div.installation-old div.attributes {
	margin-left: 60%;
	margin-top: -35px;
}

div.installation-old div.attributes > div {
	float: left;
	padding: 0.2em;
	margin-right: 0.5em;
}

div.installation-old div.live, div.installation-old div.active {
	background-color: var(--positive-color);
	color: white;
}

div.installation-old div.deleted, div.installation-old div.deactivated {
	background-color: #971c1c;
}

div.installation-old div#notes {
	clear: both;
    margin: 0.5em 0;
    line-height: 1.2em;
}

/* VISUS CODES */

ul#list-visus-codes > li {
	position: relative;
}

ul#list-visus-codes > li > div {
	margin-bottom: 0.5em;
}

div.visus_codes div.input-code {
	background-image: url(../images/icons/visus_codes/input-code.png);
}

div.visus_codes div.visus-serial-number {
	background-image: url(../images/icons/visus_codes/visus-serial-number.png);
}

div.visus_codes div.activation-code {
	background-image: url(../images/icons/visus_codes/activation-code.png);
}

div.visus_codes div.input-code > p:nth-child(2), div.visus_codes div.visus-serial-number > p:nth-child(2), div.visus_codes div.activation-code > p:nth-child(2) {
	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

ul#list-visus-codes > li {
	cursor: default;
}

body:not(.touch) ul#list-visus-codes > li:hover {
	background: none;
}

ul#list-visus-codes > li > div {
	background-repeat: no-repeat;
	background-position: left 2px;
	padding-left: 43px;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

ul#list-visus-codes > li > div > p:first-child {
	margin-top: 0.5em;
	margin: 0.1em 0;
	color: var(--link-color);
}

ul#list-visus-codes > li > div > p:nth-child(2) {
	font-size: 1.2em;
	margin: 0.1em 0;
	cursor: text;
	font-family: monospace;
	font-weight: bold;
	text-transform: uppercase;
}

ul#list-visus-codes > li > div > p:last-child {
	color: var(--light-gray-color);
	font-size: 0.8em;
	font-style: italic;
	margin: 0.1em 0 0 -43px;
}

div.visus_codes div.activation-code {
	float: right;
	margin-top: -87px;
	margin-right: 3em;
}

div.visus_codes img#lines {
	position: absolute;
	height: 63px;
	top: 41px;
	left: 45%;
}

div.visus_codes img#plus, div.visus_codes img#arrow {
	width: 30px;
	height: 30px;
	margin: 0.5em auto;
	display: none;
}

div.visus_codes p.cross {
	position: absolute;
	right: 20px;
	top: 10px;
}

div.visus_codes p.cross > a {
	display: block;
	width: 100%;
	height: 100%;
}

/* VISUS CODE */

div.visus_code > div {
	text-align: center;
}

div.visus_code > div > h3 {
	display: inline-block;
	background-image: url(../images/icons/shared/tick.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 60px;
	margin-left: -60px;
	line-height: 2em;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.visus_code img {
	width: 60%;
}

/* FORM VISUS ACTIVATION CODE */

form.form_visus_code input[type=text] {
	width: 75px;
	margin: 0 0.1em;
	letter-spacing: 5px;
	font-size: 1.2em;
	font-weight: bold;
	font-family: monospace;
	text-transform: uppercase;
	padding-left: 12px;
	padding-right: 12px;
}

form.form_visus_code img {
	width: 200px;
	float: left;
}

form.form_visus_code fieldset > div {
	display: inline-block;
}

form.form_visus_code label {
	margin-top: 1.5em;
	display: block!important;
}

form.form_visus_code div.cross {
	margin-top: 0;
	padding: 0em;
	background-position: center;
	width: 32px;
	height: 32px;
	vertical-align: middle;

	-webkit-border-radius: 16px;
    border-radius: 16px;
}

body:not(.touch) form.form_visus_code div.cross:hover {
	background-color: rgba(255,255,255,0.3);
}

body:not(.touch) form.form_visus_code div.cross:active {
	background-color: rgba(255,255,255,0.5);
}

/* MAPSCENES */

div.maps-level {
	margin: 1em 0!important;
}

div.maps-level h3 {
	line-height: 1.4em!important;
	margin: 0 0 0.2em 0;
}

div.no-maps {
	margin: 1em 0!important;
	padding: 1em 1.5em!important;
}

div.maps-level a {
	position: relative;
	width: 140px;
	height: 100px;
	margin: 15px;
	display: inline-block;
	text-align: center;
	vertical-align: top;
	text-decoration: none;
}

body:not(.touch) div.maps-level a:hover > div {
	border: 1px solid white;
	-webkit-box-shadow:  0px 0px 10px 0px rgba(255, 255, 255, 1);
	box-shadow:  0px 0px 10px 0px rgba(255, 255, 255, 1);
}

div.maps-level a.draggable {
	cursor: move;
	opacity: 0.8;
	z-index: 1;
}

div.maps-level a p {
    color: var(--text-color);
}

div.maps-level a > div {
	position: relative;
	width: 135px;
	height: 80px;
	margin: 0 auto 0.5em auto;
	overflow: hidden;
	background-color: white;
	border: 1px solid #BCC4C4;
	-webkit-box-shadow:  0px 0px 5px 0px rgba(255, 255, 255, 0.5);
	box-shadow:  0px 0px 5px 0px rgba(255, 255, 255, 0.5);
}

div.maps-level img {
	width: 100%;
	display: block;
}

div.maps-level a > div > div.maps-move {
	display: none;
	position: absolute;
	top: 5px;
	right: 5px;
	height: 20px;
	width: 20px;
	background-image: url(../images/icons/map/move.png);
}

body:not(.touch) div.maps-level a:not(.draggable):hover > div > div.maps-move {
	display: block;
}

/* MAPSCENE */

div#countdown {
	display: none;
	position: relative;
	width: 200px;
	height: 44px;
	float: right;
	background-image: url(../images/icons/shared/timer.png);
	background-position: right;
	background-repeat: no-repeat;
	font-size: 0.8em;
	line-height: 54px;
	color: white;
	text-align: right;
	padding-right: 48px;
}

div#countdown > div#number {
	position: absolute;
	width: 30px;
    height: 30px;
    top: 10px;
    right: 8px;
	color: white;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 35px;
}

p.breadcrumb {
	margin: 0;
}

p.breadcrumb a {
	color: white;
}

body:not(.touch) p.breadcrumb a:hover {
	text-decoration: underline;
}

p.breadcrumb img {
	height: 24px;
	width: 15px;
	margin: 0 0.3em;
	opacity: 0.7;
	display: inline-block;
}

div.map_scene > p {
	color: #606060;
}

/* MAPPA */

div#map {
	position: relative;
}

.grayscale {
	filter: grayscale(100%);
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
}

div#map > img {
	-webkit-box-shadow:  0px 2px 10px 0px rgba(0, 0, 0, 0.3);
	box-shadow:  0px 2px 10px 0px rgba(0, 0, 0, 0.3);
	background-color: white;
	display: block;
	max-width: 650px;
	max-height: 600px;
}

div#map > div {
	position: absolute;
	text-align: center;
	z-index: 1;
	cursor: pointer;
}

div#map > div[accesskey]:before {
	margin-left: -10px;
	margin-top: 4px;
}

div#map > div.transparent {
	opacity: 0;
}

div#map > div.is-active {
	display: none;
}

div#map > div > img {
	width: 100%;
	height: 100%;
}

div#map > div > span {
	left: 0;
	font-size: 0.8em;
	font-weight: bold;
	color: white;
	padding: 0.2em 0.4em 0 0.2em;
	display: inline-block;

	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
}

div#map > div > span.green {
	background: #5ac100; /* Old browsers */
	background: -moz-linear-gradient(top,  #5ac100 0%, #319300 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#5ac100), color-stop(100%,#319300)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #5ac100 0%,#319300 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #5ac100 0%,#319300 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #5ac100 0%,#319300 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #5ac100 0%,#319300 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5ac100', endColorstr='#319300',GradientType=0 ); /* IE6-9 */
}

div#map > div > span.gray {
	background: #939393; /* Old browsers */
	background: -moz-linear-gradient(top,  #939393 0%, #606060 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#939393), color-stop(100%,#606060)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #939393 0%,#606060 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #939393 0%,#606060 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #939393 0%,#606060 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #939393 0%,#606060 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#939393', endColorstr='#606060',GradientType=0 ); /* IE6-9 */
}

div#map > div > span.no-desktop-icon {
    color: black;
    position: absolute;
    padding: 0.1em 0 0 0;
    border-radius: 0;
    right: 0;
    left: auto;
}

div#map > div > img.no-desktop-icon {
    display: none;
}

div#map > div > span > span.smaller-unit {
    font-size: 0.75em;
}

img[class*=not-ready] {
    background-size: 100%;
    background-position: center;
}

img.not-ready-10 {background-image: url(../elements/png/BoardElement/map/not-ready-10.png);}
img.not-ready-15 {background-image: url(../elements/png/BoardElement/map/not-ready-15.png);}
img.not-ready-20 {background-image: url(../elements/png/BoardElement/map/not-ready-20.png);}
img.not-ready-25 {background-image: url(../elements/png/BoardElement/map/not-ready-25.png);}
img.not-ready-30 {background-image: url(../elements/png/BoardElement/map/not-ready-30.png);}
img.not-ready-35 {background-image: url(../elements/png/BoardElement/map/not-ready-35.png);}
img.not-ready-40 {background-image: url(../elements/png/BoardElement/map/not-ready-40.png);}
img.not-ready-45 {background-image: url(../elements/png/BoardElement/map/not-ready-45.png);}
img.not-ready-50 {background-image: url(../elements/png/BoardElement/map/not-ready-50.png);}
img.not-ready-55 {background-image: url(../elements/png/BoardElement/map/not-ready-55.png);}
img.not-ready-60 {background-image: url(../elements/png/BoardElement/map/not-ready-60.png);}
img.not-ready-65 {background-image: url(../elements/png/BoardElement/map/not-ready-65.png);}
img.not-ready-70 {background-image: url(../elements/png/BoardElement/map/not-ready-70.png);}
img.not-ready-75 {background-image: url(../elements/png/BoardElement/map/not-ready-75.png);}
img.not-ready-80 {background-image: url(../elements/png/BoardElement/map/not-ready-80.png);}
img.not-ready-85 {background-image: url(../elements/png/BoardElement/map/not-ready-85.png);}
img.not-ready-90 {background-image: url(../elements/png/BoardElement/map/not-ready-90.png);}
img.not-ready-95 {background-image: url(../elements/png/BoardElement/map/not-ready-95.png);}
img.not-ready-100 {background-image: url(../elements/png/BoardElement/map/not-ready-100.png);}

div.not-reachable {
    background-image: url(../elements/png/BoardElement/map/not-reachable.png);
    background-size: 40%;
    background-position: right bottom;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

div#map-children {
	padding: 0.3em 0.3em 0 0.3em;
	display: inline-block;
	max-width: 650px;
	background-image: url(../images/black-background.png);
}

div#map-children a {
	position: relative;
	max-height: 60px;
	display: inline-block;
	background-color: white;
}

div#map-children a[accesskey]:before {
	margin-left: 3px;
	margin-top: 3px;
}

div#map-children img {
	max-width: 100px;
	max-height: 60px;
}

body:not(.touch) div#map-children img:hover {
	opacity: 0.8;
}

div#map span.line {
	position: absolute;
	top: 0;
	left: 0;
	display: none;
	z-index: 1;
}

div#map > span#highlight {
	background-image: url(../images/icons/map_scene/highlight.png);
	background-repeat: no-repeat;
	background-position: bottom;
	width: 41px;
	height: 80px;
	float: left;
	z-index: 0;
}

div#map > span#junction {
	border-bottom: 2px solid black;
	height: 0px;
	width: 100%;
	margin: 41px 0 0 41px;
}

div#enlarge {
	max-width: 650px;
}

/* SIDEBAR */

div#sidebar {
	/*così mantiene lo sfondo semitrasparente anche in IE8, e normalmente è leggermente più scuro*/
	background: url(../images/black-background.png), rgba(0,0,0,0.1);
	padding: 15px;
	/*necessario per settare l'altezza della sidebar a quella della mappa*/
	padding-top: 15px;
	margin-bottom: 1em;
	width: 260px;
	display: none;
	float: right;
}

div#sidebar > div.wrapper {
	display: none;
	position: relative;
}

div#sidebar > div.wrapper.flip > *:not(.backbox) {
    display: none;
}

div#sidebar > div.wrapper.flip > div.backbox, div#sidebar > div.wrapper.flip > div.exit-edit {
    display: block;
}

div#sidebar > div.wrapper > h1 {
	font-size: 1.9em;
	margin-bottom: 0.3em;
	color: white;
	word-break: break-word;
}

div#sidebar > div.wrapper > div.icon {
	display: none;
	position: relative;
}

div#sidebar > div.wrapper > div.icon span:not(.smaller-unit) {
	font-size: 0.7em;
	font-weight: bold;
	color: rgba(255,255,255,0.8);
	position: absolute;
	right: 0;
	bottom: -1.3em;
}

div#sidebar > div.wrapper > div.icon span.green {
	color: #6CE700;
}

div#sidebar > div.wrapper div.wrapper-bottom {
    display: block;
    height: 0;
    clear: both;
    padding: 0;
    margin: 0;
}

div#sidebar > div.wrapper > div.spin, div#sidebar > div.wrapper > div.edit, div#sidebar > div.wrapper div.exit-edit,
div.floor div.room > div.spin {
	display: block;
	float: right;
	height: 30px;
	width: 30px;
}

div#sidebar > div.wrapper > div.edit, div#sidebar > div.wrapper div.exit-edit {
    position: absolute;
    right: 0;
    background-image: url(../images/icons/map/edit.png);
    background-size: 80%;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.3;
    cursor: pointer;
    z-index: 1;
}

body:not(.touch) div#sidebar > div.wrapper > div.edit:hover, body:not(.touch) div#sidebar > div.wrapper div.exit-edit:hover {
    opacity: 0.6;
}

div#sidebar > div.wrapper div.exit-edit {
    background-image: url(../images/icons/map/exit-edit.png);
	display: none;
}

div#sidebar > div.wrapper > div.spin.pause ~ div.edit, div#sidebar > div.wrapper > div.spin.pause ~ div.exit-edit {
    display: none;
}

div#sidebar > div.wrapper > div.pause, div.floor div.room > div.pause {
    background-image: url(../images/icons/map/pause.png);
    display: block!important;
}

div#sidebar > p {
	background-color: rgba(0,0,0,0.5);
	padding: 1em;
	margin: 1em 0 2em 0;
}

div#sidebar hr, div.room hr {
	opacity: 0.3;
	margin-bottom: 1em;
}

div.room div.expandable > div:first-child {
    min-height: 1em;
    background-size: 1em;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../images/icons/map/collapse.png);
    background-color: rgba(255, 255, 255, 0.05);
    cursor: pointer;
    border-radius: 1em !important;
    padding: 0.3em;
    margin-bottom: 1em;
}

body:not(.touch) div.room div.expandable > div:first-child:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

body:not(.touch) div.room div.expandable > div:first-child:active {
    background-color: rgba(255, 255, 255, 0.3);
}

div.room div.expandable > div:first-child.collapsed {
    background-image: url(../images/icons/map/expand.png);
    background-position: center;
    margin-bottom: 0;
}

div.room div.expandable > div.collapsed:first-child ~ * {
    display: none;
}

div#sidebar input[type=text], div#sidebar input[type=password], div#sidebar input[type=number],
div.room input[type=text], div.room input[type=password], div.room input[type=number] {
	background: none;
	border: none;
	width: 100%;
	padding: 0;
	color: white;
	font-family: "Font";
	text-align: center;
}

div#sidebar div.backbox {
    display: none;
}

div#sidebar div.backbox input[type=text].custom-name {
    text-align: left;
    font-size: 1em;
    background-color: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.3);
    padding: 0.3em;
    box-sizing: border-box;
    color: white;
}

div#sidebar div.backbox a.reset-name, div#sidebar div.backbox a.reset-all, div#sidebar div.backbox a.icon-style-all {
    display: inline-block;
    color: rgba(255,255,255,0.5);
    cursor: pointer;
    font-size: 0.8em;
    margin-left: 0.3em;
    font-style: italic;
}

div#sidebar div.backbox a.reset-name:hover, div#sidebar div.backbox a.reset-all:hover, div#sidebar div.backbox a.icon-style-all:hover {
    color: white;
}

div.backbox input[type=checkbox] {
    float: left;
    height: 2em;
    margin: 0 0.5em 0 0.3em;
    cursor: pointer;
}

div#sidebar div.backbox label {
    cursor: pointer;
    display: block;
    line-height: 2em;
}

body:not(.touch) div#sidebar div.backbox label:hover {
    background-color: rgba(255,255,255,0.1);
}

div#sidebar div.backbox fieldset.element-icon-transparency > p:not(:first-child) {
    margin: 0;
}

div#sidebar div.backbox > fieldset.wall-button-mode > div {
    display: inline-block;
    width: 50%;
    font-size: 0.8em;
    text-align: center;
    padding: 0.5em;
    box-sizing: border-box;
    cursor: pointer;
}

body:not(.touch) div#sidebar div.backbox > fieldset.wall-button-mode > div:hover {
    background-color: rgba(255,255,255,0.1);
}

body:not(.touch) div#sidebar div.backbox > fieldset.wall-button-mode > div:active {
    background-color: rgba(255,255,255,0.3);
}

div#sidebar div.backbox > fieldset.wall-button-mode > div > img {
    height: 3em;
    display: block;
    margin: 0.5em auto 0 auto;
}

div#sidebar div.backbox > fieldset.shutter-calibration > div, div#sidebar div.backbox > fieldset.light-calibration > div {
    padding: 0.5em 2em;
    background-color: rgba(255, 255, 255, 0.3);
    border: none;
    color: white;
    text-align: center;
    cursor: pointer;
}

div#sidebar div.backbox > fieldset.shutter-calibration > div:hover, div#sidebar div.backbox > fieldset.light-calibration > div:hover {
    background-color: rgba(255, 255, 255, 0.5);
}

div#sidebar div.backbox ul.civil-series {
    margin: 0;
    padding: 0;
}

div#sidebar div.backbox ul.civil-series > li {
    text-align: center;
    width: 25%;
    display: inline-block;
    cursor: pointer;
    vertical-align: top;
}

body:not(.touch) div#sidebar div.backbox ul.civil-series > li:hover, div#sidebar div.backbox ul.civil-series > li.active {
    background-color: rgba(255,255,255,0.1);
}

body:not(.touch) div#sidebar div.backbox ul.civil-series > li:active {
    background-color: rgba(255,255,255,0.3);
}

div#sidebar div.backbox ul.civil-series > li img {
    display: block;
    width: 2.5em;
    margin: 0.3em auto 0 auto;
}

div#sidebar div.backbox ul.civil-series > li p {
    font-size: 0.9em;
}

div#sidebar div.backbox a.external-link {
	background-image: url(../images/icons/map_scene/external-link.png);
	background-size: 1em;
	background-repeat: no-repeat;
	background-position: center left;
	padding-left: 1.5em;
	padding-top: 0.1em;
    display: block;
    margin: 1em 0.5em 0.5em 0.5em;
}

div.delete-smart {
    background-image: url(../images/icons/map_scene/bin.png);
    color: white;
    background-repeat: no-repeat;
    background-position: 0.3em center;
    background-size: 1em;
    padding: 0.45em 0.5em 0.3em 1.5em;
    margin-top: 0.5em;
    background-color: rgba(255, 0, 0, 0.4);
    cursor: pointer;
}

body:not(.touch) div.delete-smart:hover {
    background-color: rgba(255, 30, 30, 0.4);
}

body:not(.touch) div.delete-smart:active {
    background-color: rgba(255, 60, 60, 0.4);
}

div.upgrade-firmware {
	text-align: center;
    color: white;
    background-repeat: no-repeat;
    background-position: 0.3em center;
    background-size: 1em;
    padding: 0.45em 0 0.3em 0;
    margin-top: 0.5em;
    background-color: rgba(255, 255, 255, 0.1);
    cursor: pointer;
}

body:not(.touch) div.upgrade-firmware:hover {
    background-color: rgba(255, 255, 255, 0.15);
}

body:not(.touch) div.upgrade-firmware:active {
    background-color: rgba(255, 255, 255, 0.3);
}

a.last-update, p.last-update { /* usato anche in consumptions */
	background-image: url(../images/icons/shared/history.png);
	background-position: left;
	background-repeat: no-repeat;
	font-size: 0.7em;
	color: #A3A3A3;
	height: 16px;
	display: block;
	line-height: 16px;
	padding-left: 20px;
	margin-top: 1em;
}

a.last-update {
	cursor: pointer;
}

div#sidebar div.sofia-patch {
    font-size: 0.8em;
    padding-left: 46px;
    background-image: url(../images/icons/map_scene/brain.png);
    background-size: 22px;
    background-repeat: no-repeat;
    background-position: 6px center;
}

div#sidebar div.sofia-patch > a {
    display: block;
}

/* STATUSES */

div.status, div.action {
	min-height: 36px;
	margin-bottom: 5px;
}

div.action {
	position: relative;
	cursor: pointer;
	clear: both;
}

div.action[accesskey]:before {
	margin-left: -19px;
	margin-top: 7px;
}

body:not(.touch) div.action:hover {
        background-color: rgba(255,255,255,0.05);
}

body:not(.touch) div.action:active {
        background-color: rgba(255,255,255,0.1);
}

div.status p, div.action p {
	margin: 0;
	line-height: 1em;
}

div.icon-status, div.icon-action {
    position: relative;
	width: 36px;
	height: 36px;
	margin-right: 10px;
	float: left;
	text-align: center;
	font-size: 1.2em;
	line-height: 36px;
}

div.icon-status > img, div.icon-action > img {
	margin-top: 7px;
	max-width: 22px;
	max-height: 22px;
}

div.status:not(.big) > span:first-of-type {
    height: 36px;
    /*line-height: 36px;*/
    display: flex;
    align-items: center;
}

div.status > span.status-value {
	display: block;
    line-height: 1em;
    font-size: 0.9em;
    color: white;
    margin-top: -0.3em;
}

div.status > table {
	width: 100%;
}

div.status > img.help {
    margin-left: 0.5em;
    cursor: pointer;
    height: 1em;
    vertical-align: -0.2em;
}

div.action > span {
    height: 36px;
    /*line-height: 36px;*/
    display: flex;
    align-items: center;
}

div.action > div.icon-action > input[type=checkbox] {
    height: 16px;
    width: 16px;
    margin: 10px;
    float: none;
}

div#sidebar div.big {
	min-height: 76px;
	margin-bottom: 10px;
	clear: both;
}

div#sidebar div.big > h2 {
	font-size: 1.9em;
	margin: 0;
	padding-top: 12px;
	color: white;
	display: block;
	height: 1em;
	overflow: hidden;
}

div#sidebar div.big > div.icon-status {
	background: none;
	width: 64px;
	height: 64px;
	margin-left: 10%;
	float: left;
	text-align: center;
	margin-top: 7px;
}

div#sidebar div.big.center > div.icon-status {
    margin-left: 0;
    margin-right: 0;
	width: 100%;
}

div#sidebar div.big > div.icon-status > img {
	max-width: 100%;
	max-height: 100%;
	margin-top: 0;
}

div#sidebar div.big > span {
	line-height: 76px;
}

div#sidebar div.big > h2 + span {
	line-height: 1em;
}

div#sidebar div.big > div.icon-status + span + p {
    margin-top: -1.8em;
    color: white;
}

div.action input[type=text], div.action input[type=number] {
	height: 100%;
	font-size: 0.9em;
}

body > p.feedback {
	position: fixed;
	color: white;
    top: 50%;
    left: 50%;
    width: 17em;
    padding: 1em;
    margin-left: -9.5em;
    background-color: rgba(0,0,0,0.8);
    border-radius: 0.3em;
    text-align: center;
    z-index: 1;
}

/* PROBE ELEMENT */

div.probe-mode {
	position: relative;
	float: left;
	text-align: center;
	clear: none;
	line-height: 22px;
	margin: 0 0 1em 0;
    overflow-x: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

div.probe-mode[accesskey]:before {
	margin-left: 21px;
	margin-top: -25px;
}

div.probe-mode > div {
	width: 40px;
	height: 7px;
	margin: 3px auto 0 auto;
	background-color: gray;
}

div.probe-speed-group {
	text-align: center;
}

div.probe-speed {
	position: relative;
	display: inline-block;
	height: 27px;
	width: 27px;
	text-align: center;
	clear: none;
	padding: 5px;
	min-height: 0;
	margin: 0 1% 1.2em 1%;
	vertical-align: top;

	-webkit-border-radius: 50%;
	border-radius: 50%;
}

div.probe-speed-active, body:not(.touch) div.probe-speed-active:hover {
	background-color: rgba(255,255,255,0.3);
}

div.probe-speed[accesskey]:before {
	margin-left: -4px;
	margin-top: -8px;
}

div.probe-speed > img {
	max-width: 100%;
	max-height: 100%;
}

div.probe-speed > p {
	font-size: 7px;
	cursor: default;
}

div.probe-chrono {
	margin-top: 0.5em;
	display: none;
}

div.probe-chrono > span {
	background-color: rgba(255,255,255,0.3);
	display: inline-block;
	width: 12.2%;
	height: 27px;
	margin: 1%;
	text-align: center;
	line-height: 30px;
	position: relative;
	cursor: pointer;
}

div.probe-chrono > span[accesskey]:before {
	margin-left: -10px;
	margin-top: -10px;
}

div.probe-chrono > span > img.triangle-copy {
	position: absolute;
	width: 14px;
	height: 7px;
	top: 30px;
	left: 7px;
	display: none;
}

div.probe-chrono > div.probe-graph {
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    padding-bottom: 5px;
    cursor: pointer;
}

div.probe-chrono > div.alternative {
	display: none;
	margin-top: 0.5em;
}

div.probe-chrono > div.alternative > label {
	position: relative;
	display: inline-block;
	width: 10%;
	text-align: right;
	margin-right: 5%;
}

div.probe-chrono > div.alternative > label[accesskey]:before {
	margin-left: -4px;
	margin-top: -4px;
	cursor: pointer;
}

div.probe-chrono > div.alternative > select {
	display: inline-block;
	width: 30%;
}

div.probe-chrono > div.change-view {
	text-align: center;
	margin-top: 0.5em;
	cursor: pointer;
}

div.probe-chrono > div.copy, div.probe-chrono > div.save, div.probe-chrono > div.close, div.probe-parameters > div.close {
	position: relative;
	background-color: rgba(255,255,255,0.3);
	width: 30%;
	height: 27px;
	text-align: center;
	line-height: 30px;
	margin: 0.5em 0 0.5em 4px;
	display: none;
	cursor: pointer;
}

div.probe-chrono > div.copy, div.probe-chrono > div.close, div.probe-parameters > div.close {
	display: inline-block;
}

div.probe-chrono > div.copy[accesskey]:before, div.probe-chrono > div.save[accesskey]:before, div.probe-chrono > div.close[accesskey]:before,
div.probe-parameters > div.close[accesskey]:before {
	margin-left: -5px;
	margin-top: 2px;
}

body:not(.touch) div.probe-chrono > span:hover, body:not(.touch) div.probe-chrono > div.copy:hover, body:not(.touch) div.probe-chrono > div.save:hover, body:not(.touch) div.probe-chrono > div.close:hover,
body:not(.touch) div.probe-parameters > div.close:hover {
	background-color: rgba(255,255,255,0.6);
	color: white;
	cursor: pointer;
}

div.probe-chrono > span.active, div.probe-chrono > div.paste {
	background-color: white;
	color: gray;
}

div.probe-parameters {
    display: none;
    cursor: default;
}

/* MULTI SENSOR */

div.multi-sub-box {
	text-align: center;
    margin-bottom: 0.3em;
}

div.multi-sub-box > div {
    display: inline-block;
    width: 25%;
    margin: 0.3em;
    padding: 0.5em 0;
    cursor: pointer;
    background-color: rgba(255, 255, 255, 0.1);
}

body:not(.touch) div.multi-sub-box > div:not(.active):hover {
    background-color: rgba(255, 255, 255, 0.15);
}

div.multi-sub-box > div.active {
    background-color: rgba(255, 255, 255, 0.3);
}

div.multi-sub-box > div > div {
    height: 2em;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

div.multi-sub-box > div.temperature > div {
	background-image: url(../elements/png/ThermostatElement/default.png);
}

div.multi-sub-box > div.humidity > div {
	background-image: url(../elements/png/HumidityElement/default.png);
}

div.multi-sub-box ~ div.sub-box:not(.active) {
	display: none;
}

/* VIRTUAL KEYPAD ELEMENT */

div.virtualkeypad-parameters > div[class$=-pin] {
    margin-bottom: 10px;
    background-color: rgba(255,255,255,0.1);
    padding: 0.5em 0 0.3em 0.7em;
    font-style: italic;
}

div.virtualkeypad-parameters > div[class$=-pin] {
    margin-top: 0.8em;
    margin-bottom: 0.5em;
}

div.virtualkeypad-parameters > div.master-pin {
    margin-top: 0;
}

div.virtualkeypad-parameters > div > p > span {
    font-weight: bold;
    letter-spacing: 2px;
    float: right;
    margin-right: 0.7em;
}

div.virtualkeypad-parameters > div > p > span.white {
    color: white;
}

div.virtualkeypad-parameters > div > p > span.expired {
    color: red;
}

div.virtualkeypad-parameters > div > p:nth-child(2) {
    margin-top: 0.3em;
}

div.virtualkeypad-parameters > div > p:nth-child(2) > span {
    font-size: 0.8em;
    letter-spacing: 1px;
    margin-right: 0.9em;
}

div.virtualkeypad-parameters > div.action {
    margin-left: 10px;
}

div.virtualkeypad-parameters div.save, div.virtualkeypad-parameters div.close {
    position: relative;
    background-color: rgba(255,255,255,0.3);
    width: 30%;
    min-width: 5em;
    height: 27px;
    text-align: center;
    line-height: 30px;
    margin: 0.5em 0 0.5em 4px;
    display: inline-block;
    cursor: pointer;
}

div.virtualkeypad-parameters div.save {
    display: none;
}

div.virtualkeypad-parameters div.save:hover, div.virtualkeypad-parameters div.close:hover {
    background-color: rgba(255,255,255,0.6);
    color: white;
}

div.virtualkeypad-parameters {
    display: none;
    cursor: default;
    padding-top: 10px;
}

div.virtualkeypad-parameters div.pin-expiration {
    margin-top: 0.5em;
    display: none;
}

div.virtualkeypad-parameters div.pin-expiration input[type=checkbox] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    cursor: pointer;
}

div.virtualkeypad-parameters div.pin-expiration input[type=datetime-local] {
    width: calc(100% - 3em);
    box-sizing: border-box;
    margin-left: 0.4em;
}

div.virtualkeypad-parameters div.pin-expiration input[type=datetime-local][disabled] {
    opacity: 0.7;
    color: rgba(255,255,255,0.5);
}

div.virtualkeypad-parameters div.pin-expiration > div:nth-child(2) {
    padding-left: 1.75em;
}

/* KEYPAD GENERICO */

div.keyPad {
	display: none;
    text-align: center;
}

div.keyPad > p.invalid {
    color: red;
}

div.keyPad > div > span {
    display: inline-block;
	width: 31%;
	margin: 1%;
	height: 40px;
	background: rgba(255,255,255,0.3);
	text-align: center;
	line-height: 40px;
	font-size: 1.1em;
	color: white;
	cursor: pointer;
}

body:not(.touch) div.keyPad > div > span:hover {
	background-color: rgba(255,255,255,0.6);
}

body:not(.touch) div.keyPad > div > span:active {
	background-color: white;
	color: black;
}

div#sidebar div.keyPad > input[type=text], div#sidebar div.keyPad > input[type=password] {
	border: 2px solid rgba(255,255,255,0.3);
	padding: 0.2em 0 0 0;
	font-size: 2em;
	margin-bottom: 5px;
	letter-spacing: 2px;
}

div#sidebar div.keyPad > input[type=text].invalid, div#sidebar div.keyPad > input[type=password].invalid {
    border-color: red;
}

div#sidebar div.keyPad > input[type=text].uppercase {
    text-transform: uppercase;
}

div#sidebar div.keyPad > input.secret-cipher {
	width: 12%;
	margin-left: 2px;
	margin-right: 2px;
}

/* VIVALDI GIOVE ELEMENT E TUTONDO */

div.audio-channel, div.audio-command {
	position: relative;
	display: inline-block;
	width: 25%;
	text-align: center;
	vertical-align: top;
}

body:not(.touch) div.audio-channel:hover, body:not(.touch) div.audio-command:hover {
    background-color: rgba(255,255,255,0.1);
}

div.audio-channel[accesskey]:before {
	margin-left: 0px;
	margin-top: 0px;
}

div.audio-channel > img {
	width: 40px;
	height: 40px;
}

div.audio-command[accesskey]:before {
	margin-left: 0px;
	margin-top: 0px;
}

div.audio-command > img {
	width: 25px;
	height: 25px;
	margin: 10px;
}

div.audio-channel > p, div.audio-command > p {
	font-size: 0.7em;
	padding: 0.3em 0 0.1em 0;
}

body:not(.touch) div.audio-channel:hover > p:not(.active-channel), body:not(.touch) div.audio-command:hover > p {
	background-color: rgba(255,255,255,0.1);
}

div.audio-channel > p.active-channel {
	background-color: #2F78EB;
	color: white;
}

div.audio-command:nth-of-type(4n+1) {
	clear: both;
}

/* IP CAMERA ELEMENT */

div.ip-camera {
	border: 1px solid rgba(255,255,255,0.3);
	background-color: rgba(255,255,255,0.1);
	-webkit-border-radius: 5px;
	border-radius: 5px;
	padding: 5px 5px 1px 5px;
	display: none;
	position: relative;
}

div.ip-camera > p {
	display: none;
	text-align: center;
	cursor: pointer;
	padding: 0.5em 0;
	margin: 0;
}

div.ip-camera > p#enlarge-video {
	display: block;
}

body:not(.touch) div.ip-camera > p:hover {
	background-color: rgba(255,255,255,0.3);
	color: white;
}

div.ip-camera > p > img {
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
	vertical-align: middle;
}

div.ip-camera > img {
	width: 100%;
	min-height: 140px;
	margin: 0;
	background-color: black;
	cursor: pointer;
}

div.ip-camera + .ip-camera-warning {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

div.ip-camera + .ip-camera-warning > span {
	display: block;
	margin-top: 0.5em;
}

div.ip-camera + .ip-camera-warning > span > strong {
	color: white;
}

div#enlarge > div.ip-camera {
	border: 1px solid rgba(0,0,0,0.2);
	background-color: rgba(0,0,0,0.5);
}

/* RGB */	

div.rgb-colors {
	padding-left: 0.45em;
	padding-bottom: 0.45em;
	line-height: 9px;
}

div.rgb-color {
	display: inline-block;
	min-height: auto!important;
	margin-bottom: 0!important;
	width: 13.15%;
	height: 29px;
	margin: 1px;
}

/* TIMER SCENARIO */

div.timer-all-graphs {
	display: none;
}

span.scheduler-type {
	position: relative;
	display: inline-block;
	width: 48%;
	background: rgba(255,255,255,0.3);
	line-height: 30px;
	text-align: center;
	margin: 1%;
	margin-top: 0.5em;
}

span.scheduler-type[accesskey]:before {
	margin-left: -10px;
	margin-top: 4px;
}

body:not(.touch) span.scheduler-type:hover {
	background-color: rgba(255,255,255,0.6);
}

div.timer-scheduler {
	margin-top: 0.5em;
	display: none;
}

div.timer-scheduler > div.timer-labels {
	margin-left: 15px;
}

div.timer-labels > span {
	background-color: rgba(255,255,255,0.3);
	display: inline-block;
	height: 27px;
	text-align: center;
	line-height: 30px;
	position: relative;
}

div.timer-labels > span[accesskey]:before {
	margin-left: -10px;
	margin-top: -10px;
}

div.timer-labels > span > img.triangle-copy {
	position: absolute;
	width: 14px;
	height: 7px;
	top: 30px;
	left: 50%;
	margin-left: -7px;
	display: none;
}

div.weekly-scheduler span {
	width: 12%;
	margin: 1.14%;
}

div.annual-scheduler span {
	width: 6.73%;
	margin: 0.8%;
}

div.timer-scheduler > div.timer-graph {
	overflow: hidden;
	margin-top: 2px;
}

div.timer-all-graphs > div.change-view {
	text-align: center;
	margin-top: 0.5em;
}

div.timer-all-graphs > div.copy, div.timer-all-graphs > div.save, div.timer-all-graphs > div.close, div.timer-parameters > div.close {
	position: relative;
	background-color: rgba(255,255,255,0.3);
	width: 30%;
	height: 27px;
	text-align: center;
	line-height: 30px;
	margin: 0.5em 0 0.5em 4px;
	display: none;
}

div.timer-all-graphs > div.copy, div.timer-all-graphs > div.close, div.timer-parameters > div.close {
	display: inline-block;
}

div.timer-all-graphs > div.copy[accesskey]:before, div.timer-all-graphs > div.save[accesskey]:before, div.timer-all-graphs > div.close[accesskey]:before,
div.timer-parameters > div.close[accesskey]:before {
	margin-left: -5px;
	margin-top: 2px;
}

body:not(.touch) div.timer-all-graphs > span:hover, body:not(.touch) div.timer-all-graphs > div.copy:hover, body:not(.touch) div.timer-all-graphs > div.save:hover, body:not(.touch) div.timer-all-graphs > div.close:hover, body:not(.touch) div.timer-parameters > div.close:hover {
	background-color: rgba(255,255,255,0.6);
	color: white;
}

div.timer-all-graphs div.active, div.timer-all-graphs span.active, div.timer-all-graphs > div.paste {
	background-color: white;
	color: gray;
}

div.timer-scheduler > p {
	font-size: 0.8em;
	clear: both;
}

div.timer-scheduler > select {
	width: 100%;
	margin-bottom: 0.5em;
}

div.timer-scheduler > div.alternative {
	display: none;
	margin: 0.5em 0;
}

div.timer-scheduler > div.alternative > div.list-steps {
	font-size: 0.8em;
}

div.timer-scheduler > div.alternative > div.list-steps > p {
	position: relative;
	line-height: 20px;
	padding-left: 1.8em;
	border-bottom: 1px solid rgba(255,255,255,0.1);
}

div.timer-scheduler > div.alternative > div.list-steps > p > img.activate-step {
	position: absolute;
	left: 0;
	height: 20px;
}

div.timer-scheduler > div.alternative > div.list-steps > p > img.activate-step[src*="start"] {
	height: 21px;
}

div.timer-scheduler > div.alternative > div.list-steps > p > span.delete-step {
	position: relative;
	float: right;
	clear: both;
	margin-top: 0px;
}

div.timer-scheduler > div.alternative > div.list-steps > p > span.delete-step[accesskey]:before {
	margin-left: 100%;
	margin-top: 0px;
}

div.timer-scheduler > div.alternative > div.list-steps > p > span.delete-step > img {
	height: 1em;
	float: right;
	margin-top: 0.3em;
}

div.timer-scheduler > div.alternative > p.add-step-button {
	position: relative;
	font-size: 0.8em;
	padding: 0.3em 0;
	margin: 0.5em 0;
}

div.timer-scheduler > div.alternative > p.add-step-button[accesskey]:before {
	margin-left: -10px;
	margin-top: -8px;
}

div.timer-scheduler > div.alternative > p.add-step-button > img {
	height: 1.5em;
	vertical-align: middle;
	margin-right: 0.5em;
}

div.timer-scheduler > div.alternative > div.add-step {
	background-color: rgba(255,255,255,0.2);
	padding: 0.5em;
	color: white;
	font-size: 0.8em;
	display: none;
}

div.timer-scheduler > div.alternative > div.add-step > input[type="radio"] {
	display: none;
}

div.timer-scheduler > div.alternative > div.add-step > label {
	position: relative;
	background-color: #999999;
	width: 50%;
	display: inline-block;
	padding: 0.5em 0;
	text-align: center;
	margin-bottom: 0.5em;
	cursor: pointer;
}

div.timer-scheduler > div.alternative > div.add-step > label[accesskey]:before {
	margin-top: 4px;
	margin-left: 4px;
}

div.timer-scheduler > div.alternative > div.add-step > input[type="radio"]:checked + label:nth-of-type(1) {
	background-color: lime;
	color: rgb(44, 84, 28);
}

div.timer-scheduler > div.alternative > div.add-step > input[type="radio"]:checked + label:nth-of-type(2) {
	background-color: red;
	color: rgb(89, 0, 0);
}

div.timer-scheduler > div.alternative > div.add-step > p > span {
	display: inline-block;
	width: 35%;
}

div.timer-scheduler > div.alternative > div.add-step select {
	margin: 0.2em;
}

div.timer-scheduler > div.alternative > div.add-step > div.submit {
	position: relative;
	background-color: #999999;
	width: 100%;
	margin-top: 0.5em;
	line-height: 2em;
	text-align: center;
}

div.timer-scheduler > div.alternative > div.add-step > div.submit[accesskey]:before {
	margin-left: 4px;
	margin-top: 4px;
}

body:not(.touch) div.timer-scheduler > div.alternative > div.add-step > div.submit:hover {
	background-color: #AAAAAA;
}

/* SFERIA */

div.status[id$=wifiSsid] > div.icon-status {
	margin-top: 9px;
}

/* CATEGORIE */

div#categories {
	clear: both;
}

div#categories_layouts {
	margin-top: 1.5em;
	float: right;
	clear: both;
}

div#countdown + div#categories_layouts {
    margin-top: 0.3em;
}

div#categories_layouts > div {
	position: relative;
	display: inline-block;
}

div#categories_layouts > div[accesskey]:before {
	margin-left: 9px;
	margin-top: -28px;
}

div#categories_layouts > div > img {
	width: 30px;
	margin: 0 5px;
	cursor: pointer;
}

body:not(.touch) div#categories_layouts > div > img:hover {
	background-color: rgba(0,0,0,0.1);
}

body:not(.touch) div#categories_layouts > div > img:active {
	background-color: rgba(255,255,255,0.3);
}

/* Aspetti in comune ai layout */

div#categories > div#cat-types {
	/*così mantiene lo sfondo semitrasparente anche in IE8, e normalmente è leggermente più scuro*/
	background: url(../images/black-background.png), rgba(0,0,0,0.1);
	padding: 0;
	margin-bottom: 20px;
}

div#categories > div#cat-types ul {
	display: block;
	padding: 0;
}

div#categories > div#cat-types li {
	position: relative;
	height: 80px;
	padding: 10px 5px 0px 5px;
	text-align: center;
	cursor: pointer;
}

div#categories > div#cat-types li[accesskey]:before {
	margin-left: 5px;
	margin-top: 5px;
}

body:not(.touch) div#categories > div#cat-types li:hover {
	background-color: rgba(255,255,255,0.1);
}

body:not(.touch) div#categories > div#cat-types li:active, div#categories > div#cat-types li.active {
	background-color: rgba(255,255,255,0.3);
}

div#categories > div#cat-types img {
	max-width: 40px;
	max-height: 40px;
}

div#categories > div#cat-types p {
	clear: both;
	display: block;
	width: 100%;
	font-size: 0.7em;
}

div#categories > div#cat-elements {
	/*così mantiene lo sfondo semitrasparente anche in IE8, e normalmente è leggermente più scuro*/
	background: url(../images/black-background.png), rgba(0,0,0,0.1);
	padding: 15px;
	float: left;
    overflow-x: hidden;
	overflow-y: scroll;
}

div#categories > div#cat-elements > p {
	font-size: 0.9em;
	font-style: italic;
}

div#categories > div#cat-elements > hr {
	opacity: 0.3;
}

div#categories > div#cat-elements > div {
	position: relative;
	padding: 5px;
	line-height: 40px;
	cursor: pointer;
	display: none;
}

body:not(.touch) div#categories > div#cat-elements > div:hover {
	background-color: rgba(255,255,255,0.1);
}

body:not(.touch) div#categories > div#cat-elements > div:active, div#categories > div#cat-elements > div.active {
	background-color: rgba(255,255,255,0.3);
}

div#categories > div#cat-elements > div > div {
	float: left;
	width: 40px;
	height: 40px;
	margin-right: 10px;
	position: relative;
	line-height: 1em;
	text-align: center;
}

div#categories > div#cat-elements > div > div > span {
	position: absolute;
	bottom: -3px;
	left: 50px;
	font-size: 0.75em!important;
	font-weight: bold;
	color: white;
	padding: 0;
    display: block;
    width: 8em;
    text-align: left;
}

div#categories > div#cat-elements > div > div > span.green {
	color: #5ac100;
}

div#categories > div#cat-elements > div > p {
	margin: 0;
	overflow-x: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

div#categories > div#cat-elements > div > div > img {
	max-width: 100%;
	max-height: 100%;
}

/* Layout a colonne */

div.columns > div#cat-types {
	height: 560px;
	width: 120px;
	overflow-y: scroll;
	float: left;
}

div.columns > div#cat-types ul {
	margin: 5px 5px 5px 0;
}

div.columns > div#cat-types li {
	width: 90px;
	margin: 0px 0px 0px 5px;
}

div.columns > div#cat-elements {
	width: 480px;
	height: 530px;
	margin-left: 20px;
}

div.columns > div#cat-elements > div {
	position: relative;
	width: 100%;
}

div.columns > div#cat-elements > span, div.columns > div#cat-elements > hr {
	display: none;
}

div.columns > div#sidebar {
	min-height: 530px;
}

/* Layout a pagine */

div.pages > div#cat-types {
	width: 650px;
	min-height: 300px;
	float: left;
}

div.pages > div#cat-types ul {
	margin: 10px;
	width: 100%;
}

div.pages > div#cat-types li {
	display: inline-block;
	vertical-align: top;
	width: 100px;
	margin: 8px;
}

div.pages > div#cat-elements {
	width: 620px;
	min-height: 270px;
	margin-bottom: 20px;
	display: none;
}

.go-back {
	position: relative;
	display: inline-block;
	height: 16px;
	background-color: rgba(255,255,255,0.1);
	color: white;
	padding: 0.5em 1em 0.5em 0.5em;
	cursor: pointer;
	margin-bottom: 10px;
	left: 15px;
}

div.pages > div#cat-elements > hr {
	display: block;
}

.go-back:after {
	right: 100%;
	border: solid transparent;
	border-right-color: rgba(255,255,255,0.1);
	content: " ";
	position: absolute;
	border-width: 16px;
	top: 50%;
	margin-top: -16px;
}

body:not(.touch) .go-back:hover {
	background-color: rgba(0,0,0,0.3);
}

body:not(.touch) .go-back:hover:after {
	border-right-color: rgba(0,0,0,0.3);
}

div.pages > div#cat-elements > span[accesskey]:before {
	margin-left: -20px;
	margin-top: -8px;
}

div.pages > div#cat-elements > div {
	width: 295px;
	float: left;
}

div.pages > div#sidebar {
	min-height: 270px;
}

div#categories > div#sidebar > span {
	display: none;
}

/* Layout a boxes */

div.boxes > div#cat-types {
	height: 110px;
	overflow-x: scroll;
}

div.boxes > div#cat-types ul {
	margin: 5px 5px 5px 0;
}

div.boxes > div#cat-types li {
	display: inline-block;
	vertical-align: top;
	width: 90px;
	margin: 0px 0px 0px 5px;
}

div.boxes > div#cat-elements {
	width: 620px;
	height: 400px;
	margin-bottom: 20px;
}

div.boxes > div#cat-elements > span, div.boxes > div#cat-elements > hr {
	display: none;
}


div.columns > div#cat-elements > div {
	width: 100%;
}

div.boxes > div#sidebar {
	min-height: 400px;
}

/* POWER MANAGEMENT ELEMENT */

div.power-settings {
    display: none;
    cursor: default;
    padding-top: 0.3em;
}

div.power-labels > span {
    background-color: rgba(255,255,255,0.3);
    display: inline-block;
    width: 12%;
    height: 27px;
    margin: 1.14%;
    text-align: center;
    line-height: 30px;
    position: relative;
    cursor: pointer;
}

div.power-labels > span:nth-child(1) {
    width: 97.7%;
}

div.power-labels > span[accesskey]:before {
    margin-left: -10px;
    margin-top: -10px;
}

div.power-labels > span > img.triangle-copy {
    position: absolute;
    width: 14px;
    height: 7px;
    top: 30px;
    left: 50%;
    margin-left: -7px;
    display: none;
}

div.power-limit {
    margin: 0.3em 0;
}

div.power-limit > input[type=number], div.power-limit > p {
    display: inline!important;
    background-color: rgba(255,255,255,0.1)!important;
    font-size: 1.5em;
    padding: 0.3em 0em 0.2em 0.6em!important;
    width: 6em!important;
    margin: 0.3em;
}

div.power-limit > p {
    display: inline-block;
    line-height: 1.5em;
    padding-right: 0.6em!important;
}

div.power-readers {
    margin-bottom: 0.7em;
}

div.power-settings:not(.power-settings-advanced) div.power-readers {
    display: none;
}

div.power-list > ul {
    margin: 0.3em 0 0 0;
    padding: 0;
}

div.power-list > ul > li {
    padding: 0.5em;
    background-color: rgba(255,255,255,0.1);
    border-bottom: 1px solid rgba(0,0,0,0.3);
    cursor: move;
}

div.power-list > ul > li.sortable-chosen:not(.sortable-ghost) {
    opacity: 0!important;
}

div.power-list > ul > li.sortable-ghost {
    background-color: rgba(255,255,255,0.6);
    color: white;
}

div.power-writers > p {
    font-size: 0.8em;
    font-style: italic;
    margin: 0.5em;
    opacity: 0.8;
}

div.power-settings-advanced div.power-writers > p {
    display: none;
}

div.power-writers > ul > li.power-item-off {
    opacity: 0.4;
}

div.power-writers > ul > li.power-item-off p {
    text-decoration: line-through;
}

div.power-settings:not(.power-settings-advanced) li.power-item-off {
    display: none;
}

div.power-list > ul > li > div.power-up {
    background-image: url(/site/elements/png/PowerMenagementElement/power-up.png);
}

div.power-list > ul > li > div.power-down {
    background-image: url(/site/elements/png/PowerMenagementElement/power-down.png);
}

div.power-settings-advanced div.power-list > ul > li > div.power-up,
div.power-settings-advanced div.power-list > ul > li > div.power-down {
    display: none;
}

div.power-list > ul > li > p {
    display: inline-block;
    vertical-align: middle;
    width: 50%;
}

div.power-readers > ul > li > p {
    width: 73%;
}

div.power-list > ul > li > div.associated-icon {
    width: 20px;
    height: 20px;
    margin-right: 0.5em;
    vertical-align: middle;
    text-align: center;
    display: inline-block;
}

div.power-list > ul > li > div.associated-icon > img {
    max-height: 100%;
    max-width: 100%;
}

div.power-list > ul input[type=text] {
    width: 2em!important;
    float: right;
    height: 22px;
}

div.power-list > ul input[type=range] {
    margin-top: 1em;
}

div.power-settings div.option-sum, div.power-settings div.option-restore, div.power-list > ul > li > div.power-up, div.power-list > ul > li > div.power-down {
    float: right;
    height: 20px;
    width: 20px;
    margin-left: 5px;
    background-size: 100%;
    cursor: pointer;
}

div.power-settings div.option-sum {
    position: relative;
    background-image: url(/site/elements/png/PowerMenagementElement/option-sum.png);
}

div.power-settings div.option-restore {
    position: relative;
    background-image: url(/site/elements/png/PowerMenagementElement/option-restore.png);
    margin-right: 25px;
}

div.power-settings div.option-sum + div.option-restore {
    margin-right: 0;
}

div.power-settings div.option-sum-disabled, div.power-settings div.option-restore-disabled {
    background-position: 0 100%;
    opacity: 0.8;
}

div.power-settings div.option-sum[accesskey]:before,
div.power-settings div.option-restore[accesskey]:before {
    margin-top: -14px;
    margin-left: -10px;
}

div.power-settings > div.change-view {
    text-align: center;
    margin-top: 0.5em;
    cursor: pointer;
}

div.power-settings > div.change-view + div.change-view {
    display: none;
}

div.power-settings > div.copy, div.power-settings > div.save, div.power-settings > div.close {
    position: relative;
    background-color: rgba(255,255,255,0.3);
    width: 30%;
    height: 27px;
    text-align: center;
    line-height: 30px;
    margin: 0.5em 0 0.5em 4px;
    display: none;
    cursor: pointer;
}

div.power-settings > div.copy, div.power-settings > div.close {
    display: inline-block;
}

div.power-settings > div.copy[accesskey]:before, div.power-settings > div.save[accesskey]:before, div.power-settings > div.close[accesskey]:before {
    margin-left: -5px;
    margin-top: 2px;
}

body:not(.touch) div.power-settings span:hover, body:not(.touch) div.power-settings > div.copy:hover, body:not(.touch) div.power-settings > div.save:hover, body:not(.touch) div.power-settings > div.close:hover {
    background-color: rgba(255,255,255,0.6);
    color: white;
}

div.power-settings span.active, div.power-settings > div.paste {
    background-color: white;
    color: gray;
}

div.power-settings-advanced > div.power-list > ul > li {
    cursor: default;
}

div.power-settings:not(.power-settings-advanced) div.option-sum,
div.power-settings:not(.power-settings-advanced) div.option-restore,
div.power-settings:not(.power-settings-advanced) input {
    display: none;
}

div.power-settings:not(.power-settings-advanced) > div.power-list > ul > li > p {
    overflow-x: visible;
}

div.power-settings > div.power-general-options {
    display: none;
}

div.power-settings-advanced > div.power-general-options {
    display: block;
}

div.power-general-options > div {
    margin: 0.5em 0;
}

div.power-general-options > div > p {
    display: inline-block;
    width: 3.5em;
    text-align: center;
}

div.power-general-options > div > p:nth-child(1) {
    width: 45%;
    text-align: left;
}

div.power-general-options span.minus, div.power-general-options span.plus {
    position: relative;
    display: inline-block;
    height: 1.5em;
    width: 1.5em;
    margin: 0 0.5em;
    background-color: rgba(255,255,255,0.3);
    vertical-align: middle;
    line-height: 1.5em;
    text-align: center;
    color: white;
    font-weight: bold;
    cursor: pointer;
}

div.power-general-options span.minus[accesskey]:before {
    margin-top: 1px;
    margin-left: -16px;
}

div.power-general-options span.plus[accesskey]:before {
    margin-top: 1px;
    margin-left: 18px;
}

/* IRRIGATION MANAGEMENT ELEMENT */

div.irrigation-settings {
    display: none;
    cursor: default;
    padding-top: 0.3em;
}

div.irrigation-list {
    margin-top: 0.3em;
}

div.irrigation-settings input[type="checkbox"] {
    vertical-align: middle;
}

div.irrigation-list > p {
    font-size: 0.8em;
    font-style: italic;
    margin: 0.5em;
    opacity: 0.8;
}

div.irrigation-settings-advanced div.irrigation-list > p {
    display: none;
}

div.irrigation-list > ul {
    margin: 0.3em 0 0 0;
    padding: 0;
}

div.irrigation-list > ul > li {
    padding: 0.5em;
    background-color: rgba(255,255,255,0.1);
    border-bottom: 1px solid rgba(0,0,0,0.3);
    cursor: move;
}

div.irrigation-list > ul > li.sortable-chosen:not(.sortable-ghost) {
    opacity: 0!important;
}

div.irrigation-list > ul > li.sortable-ghost {
    background-color: rgba(255,255,255,0.6);
    color: white;
}

div.irrigation-list > ul > li.irrigation-item-off {
    opacity: 0.4;
}

div.irrigation-list > ul > li.irrigation-item-off p {
    text-decoration: line-through;
}

div.irrigation-settings:not(.irrigation-settings-advanced) li.irrigation-item-off {
    display: none;
}

div.irrigation-list > ul > li > div.irrigation-up {
    background-image: url(/site/elements/png/IrrigationManagementElement/irrigation-up.png);
}

div.irrigation-list > ul > li > div.irrigation-down {
    background-image: url(/site/elements/png/IrrigationManagementElement/irrigation-down.png);
}

div.irrigation-settings-advanced div.irrigation-list > ul > li > div.irrigation-up,
div.irrigation-settings-advanced div.irrigation-list > ul > li > div.irrigation-down {
    display: none;
}

div.irrigation-list > ul > li > p {
    display: inline-block;
    vertical-align: middle;
    width: 50%;
}

div.irrigation-list > ul > li > div.associated-icon {
    width: 20px;
    height: 20px;
    margin-right: 0.5em;
    vertical-align: middle;
    text-align: center;
    display: inline-block;
}

div.irrigation-list > ul > li > div.associated-icon > img {
    max-height: 100%;
    max-width: 100%;
}

div.irrigation-list > ul input[type=text] {
    width: 2em!important;
    float: right;
    height: 22px;
}

div.irrigation-list > ul input[type=range] {
    margin-top: 1em;
}

div.irrigation-list > ul > li > div.irrigation-up, div.irrigation-list > ul > li > div.irrigation-down {
    float: right;
    height: 20px;
    width: 20px;
    margin-left: 5px;
    background-size: 100%;
    cursor: pointer;
}

div.irrigation-settings > div.change-view {
    text-align: center;
    margin-top: 0.5em;
    cursor: pointer;
}

div.irrigation-settings > div.change-view + div.change-view {
    display: none;
}

div.irrigation-settings > div.save, div.irrigation-settings > div.close {
    position: relative;
    background-color: rgba(255,255,255,0.3);
    width: 30%;
    height: 27px;
    text-align: center;
    line-height: 30px;
    margin: 0.5em 0 0.5em 4px;
    display: none;
    cursor: pointer;
}

div.irrigation-settings > div.close {
    display: inline-block;
}

div.irrigation-settings > div.save[accesskey]:before, div.irrigation-settings > div.close[accesskey]:before {
    margin-left: -5px;
    margin-top: 2px;
}

body:not(.touch) div.irrigation-settings > span:hover, body:not(.touch) div.irrigation-settings > div.save:hover, body:not(.touch) div.irrigation-settings > div.close:hover {
    background-color: rgba(255,255,255,0.6);
    color: white;
}

div.irrigation-settings-advanced > div.irrigation-list > ul > li {
    cursor: default;
}

div.irrigation-settings:not(.irrigation-settings-advanced) input,
div.irrigation-settings:not(.irrigation-settings-advanced) div.irrigation-list > ul > li > span {
    display: none;
}

div.irrigation-settings:not(.irrigation-settings-advanced) > div.irrigation-list > ul > li > p {
    overflow-x: visible;
}

div.irrigation-settings > div.irrigation-general-options {
    margin: 0.5em 0 1em 0;
}

div.irrigation-settings > div.irrigation-general-options > input {
    display: inline;
}

div.irrigation-settings-advanced > input {
    display: none;
}

div.irrigation-settings > label {
    display: none;
}

div.irrigation-settings-advanced > input[type="radio"] + label {
    background-color: #999999;
    width: 50%;
    display: inline-block;
    padding: 0.5em 0;
    text-align: center;
    margin: 0.3em 0;
    cursor: pointer;
    color: white;
}

div.irrigation-settings-advanced > label[accesskey]:before {
    margin-top: 4px;
    margin-left: 4px;
}

div.irrigation-settings-advanced > input[type="radio"]:checked + label {
    background-color: #8a5129;
}

div.irrigation-settings-advanced > input[type="radio"]:nth-of-type(1):checked ~ div.irrigation-list input[id*="time"],
div.irrigation-settings-advanced > input[type="radio"]:nth-of-type(1):checked ~ div.irrigation-list > ul > li > span {
    display: none;
}

div.irrigation-settings-advanced > input[type="radio"]:nth-of-type(2):checked ~ div.irrigation-list input[id*="priority"] {
    display: none;
}

div.irrigation-settings-advanced > input[type="radio"]:nth-of-type(2):checked ~ input[type="checkbox"],
div.irrigation-settings-advanced > input[type="radio"]:nth-of-type(2):checked ~ input[type="checkbox"] + label {
    display: inline-block;
}

div.irrigation-list span {
    float: right;
    line-height: 1.7em;
    font-size: 0.8em;
}

div.irrigation-list span[id*="time"] {
    margin-right: 0.3em;
}

/* DELIOS, ZCS */

div.inverter-main-values {
    margin-top: 1em;
    text-align: center;
}

div.inverter-main-values > div {
    position: relative;
    background-color: rgba(0,0,0,0.2);
    display: inline-block;
    width: 23%;
    margin: 0.3em;
    padding: 0.5em;
    padding-bottom: 0;
    text-align: left;
}

div.inverter-main-values > div > img:nth-of-type(1) {
    width: 50%;
    margin: 0 0 0.3em 3%;
}

div.inverter-main-values > div > p {
    font-size: 1.1em;
    display: inline-block;
    width: 80%;
}

div.inverter-main-values > div > p > span {
    font-size: 0.5em;
}

div.inverter-main-values img.inverter-arrow {
    position: absolute;
    top: 15%;
    right: 0.5em;
    height: 70%;
    overflow: hidden;
}

div.inverter-main-values img.inverter-arrow.rotated {
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

div.inverter-main-values p.inverter-battery-percentage {
    display: none;
}

div.inverter-parameters {
    cursor: pointer;
}

div.inverter-parameters > table {
    display: none;
    width: 100%;
}

/* IR ELEMENT */

div.ir-command {
    text-align: center;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0);
    padding: 0 0.7em;
    margin-right: 5px;
    line-height: 36px;
}

body:not(.touch) div.ir-command:hover {
    background-color: rgba(255,255,255,0.3);
}

div.ir-command[accesskey]:before {
    margin-left: -10px;
    margin-top: 7px;
}

div.ir-command.pressed {
    color: red;
    border: 1px solid red;
}

/* MODBUS SAMSUNG */

div.modbus-samsung-air-speed {
    width: 25%;
    display: inline-block;
    text-align: center;
    padding: 0.3em 0 0 0;
}

div.modbus-samsung-air-speed > img {
    height: 1.6em;
}

div.modbus-samsung-air-speed-active, body:not(.touch) div.modbus-samsung-air-speed-active:hover {
    background-color: rgba(255,255,255,0.3);
    color: white;
}

div.modbus-samsung-air-speed[accesskey]:before {
    margin-left: -4px;
    margin-top: -8px;
}

div.modbus-samsung-air-mode {
    position: relative;
    display: inline-block;
    width: 33%;
    text-align: center;
    clear: none;
    line-height: 22px;
}

div.modbus-samsung-air-mode[accesskey]:before {
    margin-left: 21px;
    margin-top: -25px;
}

div.modbus-samsung-air-mode > div {
    width: 60px;
    height: 7px;
    margin: 3px auto 0 auto;
    background-color: gray;
}

/* HILTRON */

div.hiltron-parameters td {
    width: 50%;
    max-width: 5em;
    line-height: 1.2em;
}

div.hiltron-parameters td > img {
    vertical-align: -3px;
    margin-right: 0.5em;
}

/* ASITA */

div.asita-parameters {
    cursor: pointer;
}

div.asita-parameters > table {
    display: none;
}

/* CONTROL ROOM GATEWAY */

div.action[id$=-setRoomStatusDescription].active {
    cursor: default;
    background-color: rgba(255, 255, 255, 0.05);
}

div.action[id$=-setRoomStatusDescription]:not(.active) > ul {
    display: none!important;
}

div.action[id$=-setRoomStatusDescription].active > ul {
    display: block;
}

div.action[id$=-setRoomStatusDescription] span.pending-notes-number {
    position: absolute;
    top: 4px;
    right: 0;
    background-color: #ff4444;
    color: white;
    font-weight: bold;
    display: inline-block;
    width: 1em;
    height: 1em;
    border-radius: 1em !important;
    line-height: 1.1em;
    text-align: center;
    padding: 0.1em;
    margin-left: 0.3em;
}

ul.room-notes {
    margin: 0;
    padding: 0 0.5em 0.5em 0.5em;
}

ul.room-notes > li {
    position: relative;
    padding: 0.5em;
    margin-bottom: 0.5em;
    overflow-x: hidden;
    background-color: rgba(255, 255, 255, 0.1);
}

ul.room-notes > li:last-of-type {
    background: none;
    background-image: url(/site/elements/png/ControlRoomGatewayMainUnitElement/new-note.png);
    background-size: 14px;
    background-repeat: no-repeat;
    background-position: 11px center;
    border-bottom: none;
    margin-bottom: 0;
    padding-top: 2px;
    padding-bottom: 2px;
}

ul.room-notes > li.done {
    background-color: rgba(0, 0, 0, 0.2);
    opacity: 0.7;
}

ul.room-notes > li > p {
    margin-bottom: 0.2em;
}

ul.room-notes > li > p > span.time {
    font-style: italic;
    font-size: 0.8em;
}

ul.room-notes > li > p > select.note-tag {
    font-size: 0.8em;
    appearance: none;
    border: none;
    margin-left: 1em;
    padding: 0.3em 0.5em 0.2em 0.5em;
    field-sizing: content;
}

ul.room-notes > li > input[type=checkbox] {
    width: 16px;
    height: 16px;
    margin: 2px 3px 0px 3px;
    cursor: pointer;
}

ul.room-notes > li > textarea {
    min-width: calc(100% - 64px);
    max-width: calc(100% - 64px);
    vertical-align: top;
    padding: 0.3em;
    color: #BCC4C4;
    font-family: "Font";
    background: none;
    border: none;
    min-height: 1em;
    margin-left: 12px;
    color: white;
    field-sizing: content;
}

ul.room-notes > li:last-of-type > textarea {
    margin-left: 34px;
}

ul.room-notes > li > input[type=checkbox]:checked + textarea:not(:focus) {
    text-decoration: line-through;
    opacity: 0.7;
}

ul.room-notes > li > div.note-bin {
    position: absolute;
    width: 16px;
    height: 16px;
    top: 30px;
    right: 5px;
    background-image: url(../images/icons/hotel/bin.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    cursor: pointer;
    opacity: 0.5;
}

body:not(.touch) ul.room-notes > li > div.note-bin:hover {
    opacity: 1;
}

/* CONSUMI */

div#consumption_views {
    float: right;
    clear: both;
    height: 27px;
    cursor: pointer;
	margin-top: 0.3em;
}

div#consumption_views > div {
    position: relative;
    display: inline-block;
}

div#consumption_views > div > img {
    height: 25px;
    margin: 0 5px;
    cursor: pointer;

    -webkit-border-radius: 12px;
    border-radius: 12px;
}

body:not(.touch) div#consumption_views > div > img:hover {
    background-color: rgba(0,0,0,0.1);
}

body:not(.touch) div#consumption_views > div > img:active {
    background-color: rgba(255,255,255,0.3);
}


div.energy {
	position: relative;
	padding: 0.65em 1em 0.5em 1em;
	background-image: url(../images/black-background.png);
	margin-bottom: 1em;
}

div.energy > div > a {
	position: relative;
}

div.energy > div > a[accesskey]:before {
	margin-left: -22px;
	margin-top: 12px;
}

div.energy > h3 {
	margin-bottom: 0;
}

div.energy > div.big-values {
    width: 500px;
    height: 2em;
    position: absolute;
    right: 5.5em;
    top: 1.5em;
}

div.energy div.total, div.energy div.max {
    position: absolute;
    font-family: "Font-Condensed", "Trebuchet MS";
    font-size: 1.8em;
    font-weight: bold;
}

div.energy div.total {
    margin-left: -0.5em;
    width: 3em;
    margin-left: -1.5em;
    text-align: center;
}

div.energy div.max {
    left: 99%;
    width: 3em;
}

div.energy div.strict {
    opacity: 0.1;
}

a.load {
	display: block;
	clear: both;
	height: 2em;
	padding: 0.5em;
	color: var(--text-color);
}

body:not(.touch) a.load:hover {
	background-color: rgba(255,255,255,0.1);
}

body:not(.touch) a.load:active {
	background-color: rgba(255,255,255,0.3);
}

a.load > input[type="checkbox"] {
	float: left;
	height: 2em;
	margin-right: 0.8em;
	margin-top: 3px;
}

a.load > p {
	float: left;
    width: 18em;
    overflow-x: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

a.load > p.value {
	display: block;
	float: right;
	width: 5em;
	text-align: right;
}

a.load > div {
	position: relative;
	background-color: rgba(255,255,255,0.1);
	width: 500px;
	height: 100%;
	float: right;
	margin-right: -1em;
}

a.load > div > p.max-value {
    line-height: 2em;
    margin: 0;
    margin-right: 0.5em;
    text-align: right;
    opacity: 0.5;
}

a.load div.current-histogram, a.load div.histogram-components > div {
    position: absolute;
    top: 0;
    left: 0;
	background-color: rgb(160,160,160);
	color: rgb(60, 60, 60);
	height: 100%;
	line-height: 2em;
	text-align: right;
	width: 0;
}

a.load div.current-histogram > span {
	width: 100px;
	display: block;
	float: right;
	padding-right: 10px;
	font-size: 0.7em;
	font-weight: bold;
}

a.load div.current-histogram > span.low {
	text-align: left;
	margin-right: -120px;
	color: white;
}

a.load div.histogram-components > div {
        background-image: url(/site/images/icons/consumptions/slices.png);
        background-color: rgba(255,255,255,0.3);
        background-size: 1em;
        border-left: 1px solid white;
        opacity: 0.8;
        overflow: hidden;
}

a.load div.histogram-components > div > span {
        position: absolute;
        background-size: 100%;
        width: 1.5em;
        height: 1.5em;
        display: inline-block;
        margin-top: 0.2em;
        left: 50%;
        margin-left: -0.75em;
}

a.load div.histogram-components > div.component-battery > span {
        background-image: url(/site/elements/png/InverterElement/battery/energy-battery-charge-0.png);
}

a.load div.histogram-components > div.component-grid > span {
        background-image: url(/site/elements/png/InverterElement/grid.png);
}

div.energy > p.last-update {
	text-align: right;
}

div.energy > a.last-update {
	text-decoration: none;
	cursor: default;
}

a.load div.indicator {
    height: 3em;
    width: 1px;
    position: absolute;
    top: -0.5em;
}

a.load div#tot-indicator {
    border-left: 1px dashed #A0A0A0;
}

a.load div#max-indicator {
    right: -2px;
    border-left: 1px solid #A0A0A0;
}

a.load img {
    height: 1em;
    margin: 0 0.1em;
    vertical-align: middle;
    margin-top: -0.1em;
}

div.energy > p {
    font-size: 0.8em;
}

div.production a.load > input[type="checkbox"]:checked ~ div > div.current-histogram {
	background-color: rgba(150,255,0,0.7);
	color: rgb(0,111,0);
}

div.consumption a.load > input[type="checkbox"]:checked ~ div > div.current-histogram {
	background-color: rgba(255,0,0,0.9);
	color: rgb(111,0,0);
}

div.production div.total, div.production p.common-selection > a {
    color: rgba(150,255,0,0.7);
}

div.consumption div.total, div.consumption p.common-selection > a {
    color: red;
}

/* CONSUMPTION */

p.graphs-description {
    font-style: italic;
    color: #606060;
    margin-bottom: 0;
    font-size: 0.9em;
}

div.graphs > div {
	background-color: rgba(0,0,0,0.5);
	width: 43%;
	min-height: 250px;
	float: left;
	margin: 15px;
	padding: 10px 15px;
	cursor: pointer;
}

body:not(.touch) div.graphs > div:hover {
	background-color: rgba(0,0,0,0.4);
}

body:not(.touch) div.graphs > div:active {
	background-color: rgba(0,0,0,0.3);
}

div.graphs > div > a.resize {
	display: block;
	background-image: url(../images/icons/consumptions/resize.png);
	background-position: top;
	float: left;
	width: 20px;
	height: 20px;
	margin: 0.2em 0.5em 0.2em 0.2em;
	overflow: hidden;
}

div.graphs > div > h3 {
	line-height: 1em;
	margin-bottom: 0.5em;
}

div.graphs > div > div {
	width: 100%;
	height: 200px;
}

div.graphs > div > p {
	float: right;
	padding: 0;
	margin: 0;
	display: none;
}

div.graphs > div > p {
	font-size: 1.5em;
}

div.graphs > div > p + p + p {
	font-size: 0.7em;
	clear: right;
}

div.graphs h4 {
	text-align: center;
	line-height: 170px;
}

/* Download */

div.download {
	min-height: 2.2em;
	padding: 0.5em 0.5em 0.3em 0.5em;
	background-image: url(../images/black-background.png);
	margin-bottom: 1em;
}

div.download > a {
	position: relative;
	display: inline-block;
	text-decoration: none;
}

div.download > a[accesskey]:before {
	margin-left: 5px;
	margin-top: 6px;
}

div.download > a > div {
	background-color: rgba(255,255,255,0.1);
	color: white;
	padding: 0.5em;
	margin-right: 0.5em;
	float: left;
	cursor: pointer;
}

body:not(.touch) div.download > a > div:hover {
	background-color: rgba(255,255,255,0.3);
}

div.download > div {
	clear: both;
}

div.download > a img {
	width: 15px;
	height: 15px;
	margin-right: 0.5em;
	vertical-align: -2px;
}

div#range_csv {
	padding-top: 0.5em;
	display: none;
}

div#range_csv > p {
	background-color: rgba(255,255,255,0.1);
	padding: 0.3em;
}

div#range_csv > p > span {
	margin: 0 1em;
}

div#range_csv > div {
	text-align: center;
}

div#range_csv > div > div {
	display: inline-block;
	width: 24%;
	text-align: left;
}

div#range_csv > div > div#range_warnings {
	width: 15em;
}

div#range_csv > div input[type="checkbox"] {
	float: left;
	margin-right: 0.5em;
}

div#range_csv > div label {
	display: block;
	padding: 0.3em;
	width: 100%;
	cursor: pointer;
}

div#range_csv > div p {
	margin-bottom: 0;
}

div#range_warnings > div {
	background-color: rgba(255,255,255,0.1);
	padding: 0.3em;
	cursor: pointer;
	width: 100%;
	height: 40px;
	position: relative;
}

div#range_warnings > div > img {
	width: 40px;
	height: 40px;
	float: left;
}

div#range_warnings > div > p {
	font-weight: bold;
	color: white;
	line-height: 40px;
	position: absolute;
	left: 50px;
	margin: 0;
}

div#download_csv {
	position: relative;
}

div#download_csv[accesskey]:before {
	margin-left: -19px;
	margin-top: 14px;
}

body:not(.touch) div#download_csv:hover {
	background-color: rgba(255,255,255,0.3);
}

div#waiting_csv {
	cursor: default;
	display: none;
}

div#waiting_csv > div#spinner {
	top: 9px;
	left: 9px;
	position: absolute;
}

div#error_csv {
	background-color: rgba(255,0,0,0.5);
	display: none;
}

/* MESSAGES */

div.messages > div {
	cursor: pointer;
	margin-top: 1em;
}

div.messages ul#list-messages > li {
	cursor: default;
}

body:not(.touch) div.messages ul#list-messages > li:hover {
	background: none;
}

div.messages div.to, div.messages ul.notification p.subject {
	display: inline-block;
	padding: 2px 0 0 20px;
}

div.messages ul.sms div.to {
	background-image: url(../images/icons/messages/sms.png);
	background-repeat: no-repeat;
    background-size: 15px;
}

div.messages ul.email div.to {
	background-image: url(../images/icons/messages/email.png);
	background-repeat: no-repeat;
	background-position: left 3px;
    background-size: 15px;
}

div.messages ul.notification p.subject {
	background-image: url(../images/icons/messages/notification.png);
	background-repeat: no-repeat;
	background-position: left 3px;
    background-size: 15px;
}

div.messages ul > li > p.subject:first-child {
	margin-top: 0;
}

div.messages div.sent, div.messages div.not-sent {
	padding: 0.3em;
	margin-bottom: 0.3em;
	color: white;
	text-align: center;
	width: 100px;
}

div.messages div.sent {
	background-color: var(--positive-color);
}

div.messages div.not-sent {
	background-color: #971c1c;
}

div.messages div#notes {
	margin-top: 0.5em;
}

/* INSTALLATION FRIENDSHIPS */

div.installation_friendships div.image img {
	width: 52px;
	margin: 0 0.5em 0.5em 0;
	float: left;
}

div.installation_friendships p.name {
	font-size: 1.2em;
	margin: 0 0 0.2em 0;
}

div.installation_friendships div.email, div.installation_friendships div.expiring {
	margin: 0.3em 0.5em 0.3em 0;
	padding: 2px 0 0 22px;
	display: inline-block;
}

div.installation_friendships div.email {
	background-image: url(../images/icons/users/email.png);
	background-repeat: no-repeat;
	background-position: left 3px;
}

div.installation_friendships div.expires_at {
	background-image: url(../images/icons/installation_friendships/clock.png);
	background-repeat: no-repeat;
	background-position: left;
	display: inline-block;
	padding: 2px 0 0 22px;
}

div.installation_friendships div.expires_at > span {
	color: white;
	background-color: #971c1c;
	padding: 0.2em;
}

div.installation_friendships div > input[type=checkbox] {
	margin-top: 3px;
}

/* FORM INSTALLATION FRIENDSHIP */

form.form_installation_friendship fieldset div.expire span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

/* COMMAND_LOGS E SHELLS */

body:not(.touch) div.command_logs ul > li:hover,
body:not(.touch) div.shells ul > li:hover {
	cursor: default;
	background: none;
}

div.command_logs div.description,
div.shells div.text {
	display: inline-block;
	margin-bottom: 0.5em;
	min-width: 50%;
    vertical-align: top;
}

div.command_logs div.executed, div.command_logs div.expiring, div.command_logs div.failed,
div.shells div.executed, div.shells div.pending {
	padding: 0 0 0 22px;
	display: inline-block;
	margin-left: 1em;
}

div.command_logs div.executed,
div.shells div.executed {
	background-image: url(../images/icons/command_logs/executed.png);
	background-repeat: no-repeat;
	background-position: left;
}

div.command_logs div.executed > span,
div.shells div.executed > span {
	background-color: var(--positive-color);
	color: white;
	display: inline-block;
    padding: 0.2em 0.4em 0.1em 0.4em;
}

div.command_logs div.expiring,
div.shells div.pending {
	background-image: url(../images/icons/command_logs/clock.png);
	background-repeat: no-repeat;
	background-position: left;
}

div.command_logs div.expiring > span,
div.shells div.pending > span {
	color: white;
	background-color: #bda100;
	padding: 0.2em;
}

div.command_logs div.user {
	background-image: url(../images/icons/command_logs/user.png);
	background-repeat: no-repeat;
	background-position: left;
	background-size: 1em;
	padding-left: 22px;
	margin: 0.5em 0;
}

div.command_logs div.user.sofia {
	background-image: url(../images/icons/command_logs/brain.png);
}

div.command_logs div.user.google-home {
	background-image: url(../images/icons/command_logs/google-home.png);
}

div.command_logs div.user.alexa {
	background-image: url(../images/icons/command_logs/alexa.png);
}

/* COMMAND LOGS */

div.command_logs div.failed {
	background-image: url(../images/icons/command_logs/failed.png);
	background-repeat: no-repeat;
	background-position: left;
}

div.command_logs div.failed > span {
	background-color: #971c1c;
	display: inline-block;
	padding: 0.2em;
}

div.command_logs div.history {
	background-image: url(../images/icons/command_logs/history.png);
	background-repeat: no-repeat;
	padding: 2px 0 0 22px;
	display: inline-block;
	margin-left: 1em;
}

div.command_logs div.history > a {
	color: var(--text-color);
}

/* SHELLS */

div.shells div.text, div.shells div.result {
	display: inline-block;
	padding: 2px 0 0 22px;
}

div.shells div.text {
	background-image: url(../images/icons/shells/keyboard.png);
	background-repeat: no-repeat;
    word-break: break-all;
}

/* SEMANTIC COMMANDS */

div.semantic_commands pre.result {
	display: none;
}

/* STATUS_LOGS */

div.status_logs > div.status_log {
	position: relative;
}

div.status_logs img.reset_zoom {
	position: absolute;
	width: 20px;
	height: 20px;
	top: 10px;
	right: 22px;
	padding: 0.1em;
	cursor: pointer;
}

body:not(.touch) div.status_logs img.reset_zoom:hover {
	background-color: rgba(255,255,255,0.1);
}

body:not(.touch) div.status_logs > div.status_log:hover img.reset_zoom {
	display: block;
}

div.status_logs span.graph-value {
	float: right;
	margin-right: 40px;
}

div.status_logs span.graph-date {
	float: right;
	clear: right;
	font-size: 0.7em;
	margin-right: 40px;
}

div.status_logs h4 {
	display: inline-block;
	max-width: 70%;
	margin-bottom: 0.2em;
	line-height: 30px;
}

div.status_logs div.info-graph {
	min-height: 30px;
}

div.status_logs div.info-graph > span > div.color {
	width: 100px;
	height: 10px;
	margin-bottom: 6px;
}

div.status_logs div.graph {
	margin-top: 0.3em;
	margin-bottom: 1em;
	font-style: italic;
	padding-top: 1em;
	overflow: hidden;
}

/* PAGES */

div.pages p.body {
	width: 80%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-style: italic;
	min-height: 1em;
}

/* PAGE */

div.page ul {
	list-style-type: circle;
}

/* NEWS */

div.news p.text {
	width: 80%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-style: italic;
	min-height: 1em;
}

div.news strong {
	color: var(--strong-color);
}

/* FORM NEWS */

form.form_news fieldset div.published span, form.form_news fieldset div.expires_at span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

form.form_news fieldset > div > label {
	width: 150px;
}

form.form_news label + input + span {
    display: block;
}

/* POSTS */

div.posts div.visible, div.posts div.not_visible {
	padding: 2px 0 0 22px;
	display: inline-block;
	margin: 0 0.5em 0.5em 0;
}

div.posts div.visible {
	background-image: url(../images/icons/posts/visible.png);
	background-repeat: no-repeat;
	background-position: left;
}

div.posts div.visible > span {
	background-color: var(--positive-color);
	color: white;
	padding: 0.2em;
}

div.posts p.title {
	min-height: 1em;
}

div.posts div.not_visible {
	background-image: url(../images/icons/posts/not_visible.png);
	background-repeat: no-repeat;
	background-position: left;
}

div.posts div.not_visible > span {
	background-color: #971c1c;
	color: white;
	padding: 0.2em;
}

div.posts span.active {
	background-color: #bda100;
	color: white;
	padding: 0.2em;
}

/* POST */

div.post {
	line-height: 1.2em;
}

div.post ul {
	list-style-type: circle;
	padding-left: 1.5em;
}

div.post ul > li {
	margin: 0.5em 0;
}

div.post > div {
	padding: 1.5em;
}

div.post > div div {
	min-height: 1em;
}

div.post strong {
	color: var(--strong-color);
}

/* ADMIN */

div.admin ul {
	background-image: none;
}

div.admin li {
	background-image: url(../images/black-background.png);
    float: left;
    text-align: center;
    width: 23%;
    margin: 1%;
    padding: 5% 0 5% 0;
}

body:not(.touch) div.admin li:hover {
	background-color: rgba(255,255,255,0.3);
}

div.admin li img {
	height: 60px;
}

div.admin li p {
    font-size: 0.9em;
	color: var(--text-color);
    word-break: break-word;
}

/* DOWNLOADS */

div.downloads img {
	max-width: 250px;
	max-height: 250px;
}

div.downloads > a {
	display: none;
}

div.downloads ul#last-downloads > li {
	display: inline-block;
	width: 29.7%;
	text-align: center;
	border: none;
	vertical-align: top;
	cursor: default;
}

div.downloads ul#last-downloads > li > a {
	border: none;
	color: gray;
}

div.downloads ul#last-downloads > li > div {
	position: relative;
}

div.downloads ul#last-downloads > li > div p {
	position: absolute;
    top: 0.5em;
    right: 2em;
    padding: 0.2em 0.2em 0 0.2em;
    color: white;
}

div.downloads ul#last-downloads > li > div p.free {
	background-color: rgba(140,199,38,0.8);
}

div.downloads ul#last-downloads > li > div p.licensed {
	background-color: rgba(255,165,0,0.8);
}

div.downloads ul#last-downloads > li > div img {
	border: 1px solid gray;

	-webkit-box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.5);
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
}

div.downloads ul#last-downloads > li > ul {
	list-style-type: circle;
}

div.downloads ul#last-downloads > li > ul li {
	text-align: left;
	padding: 0.3em;
	color: white;
}

div.downloads ul#last-downloads > li > ul a {
	text-decoration: none;
}

body:not(.touch) div.downloads ul#last-downloads > li > ul li:hover {
	background-color: rgba(255,255,255,0.3);
}

div.downloads ul#last-downloads > li > ul li > img {
	max-width: 30px;
	vertical-align: middle;
	margin-right: 0.5em;
}

div.downloads ul#last-downloads > li > ul li > img.external-link {
	float: right;
    max-height: 20px;
    margin-top: 0.5em;
}

div.downloads ul#last-downloads > li > ul li > span {
	background-color: red;
	vertical-align: super;
	font-size: 0.6em;
	font-weight: bold;
	padding: 0.1em 0.3em;
}

div.downloads ul#last-downloads > li > ul li > p {
	margin-top: -8px;
	margin-left: 40px;
	font-size: 0.7em;
	color: var(--light-gray-color);
}

body:not(.touch) div.downloads ul#last-downloads > li > ul li:hover > p {
	color: white;
}

div.downloads-supervisor > ul > li {
	min-height: 70px;
}

div.downloads-supervisor div.info {
	margin-bottom: 0.5em;
	min-height: 2em;
}

div.downloads-supervisor div.info div.image {
	float: left;
}

div.downloads-supervisor div.info div.image > span {
	display: none;
}

div.downloads-supervisor div.info div.image > img {
	max-height: 30px;
	max-width: 30px;
	vertical-align: middle;
	margin-right: 0.3em;
	float: left;
}

div.downloads-supervisor p {
	margin: 0.2em;
}

div.downloads-old ul#old-downloads h3 {
	padding: 0 0.3em;
}

div.downloads-old ul#old-downloads > li {
	display: inline-block;
	width: 29.7%;
	border: none;
	vertical-align: top;
	cursor: default;
}

div.downloads-old ul#old-downloads > li > ul {
	list-style-type: circle;
	padding-left: 1em;
}

div.downloads-old ul#old-downloads > li > ul a.missing {
	color: #971c1c;
	text-decoration: line-through;
}

div.downloads-old ul#old-downloads > li > ul p {
	margin-top: 1em;
	padding-bottom: 0.3em;
}

div.downloads-old ul#old-downloads > li > ul p > img {
	max-height: 30px;
	margin-right: 0.5em;
	vertical-align: middle;
}

body:not(.touch) div.downloads-old ul#old-downloads > li > ul a:hover, body:not(.touch) div.downloads-old ul#old-downloads > li > ul a:hover span {
	color: white;
}

div.downloads-old ul#old-downloads > li > ul a span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

/* FORM DOWNLOAD */

div form.form_download label {
	min-width: 11em;
}

/* PRODUCTS */

div.products div.product_category {
	display: inline-block;
	padding: 0 0 4px 22px;
	background-image: url(../images/icons/products/product_category.png);
	background-repeat: no-repeat;
}

/* FORM PRODUCT */

form.form_product fieldset input#product_fixed_name {
	width: 120px;
	margin-right: 0.5em;
}

form.form_product fieldset input#product_fixed_name + p {
	display: inline;
	color: var(--light-gray-color);
	font-size: 0.8em;
}

form.form_product fieldset input#product_fixed_name + p > span.green {
	color: var(--link-color);
}

form.form_product fieldset img {
	max-width: 200px;
	display: block;
	margin-top: 1em;
}

/* PRODUCT CATEGORIES */

div.product_categories p.name {
	min-height: 1em;
}

/* FORM PRODUCT CATEGORY */

form.form_product_category fieldset div.id_lapis p {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

/* FORM POST */

form.form_post fieldset img {
	height: 1.5em;
    vertical-align: middle;
}

form.form_post fieldset input[type=checkbox] {
	cursor: pointer;
}

/* SERIAL NUMBERS */

div.serial_numbers > div {
	cursor: pointer;
	margin-top: 1em;
}

div.serial_numbers div.sns, div.serial_numbers ul.users > li {
	margin: 0.3em 0;
	padding: 2px 0 0 22px;
}

div.serial_numbers ul {
	padding: 0;
}

body:not(.touch) div.serial_numbers > ul > li:hover {
	background: none!important;
	cursor: default;
}

div.serial_numbers div.sns {
	background-image: url(../images/icons/serial_numbers/license.png);
	background-repeat: no-repeat;
	min-height: 1em;
	cursor: text;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.serial_numbers p.users_number {
	display: none;
}

div.serial_numbers ul.users > li {
	background-image: url(../images/icons/serial_numbers/user.png);
	background-repeat: no-repeat;
}

div.serial_numbers ul.users > li > a + span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

/* SERIAL NUMBER */

div.serial_number > div {
	position: relative;
}

div.serial_number > div > h3 {
	background-image: url(../images/icons/shared/tick.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 60px;
	line-height: 2em;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.serial_number ul {
	list-style-type: decimal;
	cursor: text;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.serial_number ul > li {
	margin: 0.5em 0;
}

/* VESTAS */

div.vestas ul > li {
	cursor: default;
}

body:not(.touch) div.vestas ul > li:hover {
	background: none;
}

div.vestas > ul.system-info {
	padding: 0.5em;
	margin-bottom: 0;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.vestas > ul.system-info > li, div.vestas > ul.system-info > a {
	position: relative;
	display: inline-block;
	width: 22%;
	height: 1.5em;
	border: none;
	font-size: 0.8em;
	color: var(--light-gray-color);
	padding: 0.5em;
    vertical-align: middle;
}

div.vestas > ul.system-info > a:hover {
	background-color: rgba(255,255,255,0.1);
	text-decoration: none;
}

div.vestas > ul.system-info > li a {
	cursor: pointer;
}

div.vestas > ul.system-info > li.log {
	width: 100%;
	height: auto;
	/* Permette di impostare una width al 100% senza sforare il padding del container */
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

div.vestas > ul.system-info > li.log > pre {
	display: none;
}

div.vestas > ul.system-info img {
	max-width: 20px;
	max-height: 20px;
	vertical-align: middle;
	margin-right: 0.3em;
}

div.vestas > ul.system-info div.progress-bar {
	background-color: gray;
	height: 2px;
    width: 90%;
}

div.vestas > ul.system-info div.progress-bar > div {
	background-color: var(--link-color);
	width: 0;
	height: 100%;
}

div.vestas form.form_board_actions {
	padding: 0;
}

div.vestas form.form_board_actions > * {
	padding: 1em;
}

div.vestas form.form_board_actions ul {
	padding: 0;
    margin: 0;
}

div.vestas div.board_actions {
	border-bottom: 1px solid var(--border-bottom-color);
}

div.vestas div.board_actions > div#reboot, div.vestas div.board_actions > div#program {
	margin-left: 0.3em;
	background-color: var(--button-light-color);
	color: white;
	padding: 0.5em 1em 0.4em 27px;
	background-repeat: no-repeat;
	background-position: 6px center;
	text-decoration: none;
	display: inline-block;
	cursor: pointer;
    background-size: 1em;
}

div.vestas div.board_actions > h4 {
	margin-bottom: 1em;
}

div.vestas div.board_actions > h4 > img {
    height: 1.5em;
    vertical-align: -0.3em;
}

div.vestas div.board_actions > div#reboot {
	background-image: url(../images/icons/vestas/reboot.png);
}

div.vestas div.board_actions > div#program {
	background-image: url(../images/icons/vestas/program.png);
}

body:not(.touch) div.vestas div.board_actions > div#reboot:hover, body:not(.touch) div.vestas div.board_actions > div#program:hover {
	background-color: var(--button-light-hover-color);
}

#disclaimer {
	display: none;
	color: white;
    border-color: #ff4242;
    background-color: #ff4242;
    padding: 1em;

	-webkit-border-radius: 5px;
    border-radius: 5px;

    -webkit-box-shadow:  0px 2px 2px 0px rgba(0, 0, 0, 0.2);
    box-shadow:  0px 2px 2px 0px rgba(0, 0, 0, 0.2);
}

#disclaimer > span#understood {
	display: block;
    background-color: white;
    padding: 0.5em;
    color: black;
    width: 10em;
    text-align: center;
    margin: 0.5em auto 0 auto;
    cursor: pointer;
}

#disclaimer > a {
	color: white;
	text-decoration: underline;
}

#disclaimer > div#notes {
	margin: 0.5em 0;
}

div.vestas div.board_actions > div#selection_instructions {
	display: none;
	min-height: 3.5em;
}

div.vestas div.board_actions > div#selection_instructions > img {
	height: 3em;
    margin: 0 0.5em;
    vertical-align: middle;
}

div.vestas div.board_actions > div#selection_instructions > span#to_reboot, div.vestas div.board_actions > div#selection_instructions > span#to_program {
	display: none;
}

div.vestas div.board_actions input[type=submit] {
    display: none;
    margin: 0 auto;
}

div.vestas ul.devices > li {
	padding: 1em 1em 0.5em 1em;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.vestas ul.devices > li:last-of-type {
	border-bottom: none;
}

div.vestas ul.devices > li#z-wave p.warning {
	display: none;
}

div.vestas p.whole-bus-selection {
	display: none;
	width: 50%;
    margin: 0 auto 0.5em auto;
    padding: 0.3em;
    text-align: center;
    background-color: rgba(255,255,255,0.3);
    color: white;
    cursor: pointer;
    text-decoration: none;
}

body:not(.touch) div.vestas p.whole-bus-selection:hover {
	background-color: rgba(255,255,255,0.5);
}

div.vestas ul.devices > li > ul {
	padding: 0em;
}

div.vestas ul.devices > li > ul > li {
	display: inline-block;
	width: 150px;
	vertical-align: top;
	text-align: center;
	padding: 1em;
}

div.vestas ul.devices > li > ul > li.disabled {
	opacity: 0.5;
}

body:not(.touch) div.vestas ul.devices.selection > li > ul > li:not(.disabled):hover {
	background-color: rgba(255,255,255,0.1);
	cursor: pointer;
}

div.vestas ul.devices input[type=checkbox] {
	display: none;
}

div.vestas ul.devices div.image, div.battery-devices li.battery-device > div.image {
	position: relative;
	width: 120px;
	height: 80px;
	margin: 0.3em;
	border: 1px solid gray;
	background-color: white;
	margin: 0 auto 0.8em auto;
    text-align: center;

	-webkit-box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.5);
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
}

div.vestas ul.devices div.image > img, div.battery-devices li.battery-device > div.image > img {
	max-width: 100%;
	max-height: 100%;
}

div.battery-devices li.battery-device {
	border-bottom: none;
}

div.vestas ul.devices div.image > div.dark-overlay {
	position: absolute;
	display: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.7);
    background-size: 2em;
    background-repeat: no-repeat;
    background-position: center;
}

div.vestas ul.devices div.image > div.selected, div.vestas ul.devices div.image > div.selected {
	position: absolute;
	display: none;
    top: 50%;
    left: 50%;
    width: 2em;
    height: 2em;
    margin-left: -1em;
    margin-top: -1em;
    background-size: 2em;
    background-repeat: no-repeat;
    background-position: center;
}

@-ms-keyframes spin {
    from { -ms-transform: rotate(360deg); }
    to { -ms-transform: rotate(0deg); }
}

@-moz-keyframes spin {
    from { -moz-transform: rotate(360deg); }
    to { -moz-transform: rotate(0deg); }
}

@-webkit-keyframes spin {
    from { -webkit-transform: rotate(360deg); }
    to { -webkit-transform: rotate(0deg); }
}

@keyframes spin {
    from {
        transform:rotate(360deg);
    }
    to {
        transform:rotate(0deg);
    }
}

div.vestas ul.devices div.image > div.selected.pending {
    -webkit-animation-name: spin;
    -webkit-animation-duration: 4000ms;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: spin;
    -moz-animation-duration: 4000ms;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: spin;
    -ms-animation-duration: 4000ms;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    animation-name: spin;
    animation-duration: 4000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.selected {
    background-image: url(../images/icons/vestas/selected.png);
}

div.vestas ul.devices input[type=checkbox]:not(:checked) ~ div.image > div.selected {
    background-image: url(../images/icons/vestas/not-selected.png);
}

div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.selected.pending.reboot {
    background-image: url(../images/icons/vestas/reboot.png);
}

div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.selected.pending.program {
    background-image: url(../images/icons/vestas/program.png);
}

div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.selected.success {
    background-image: url(../images/icons/vestas/success.png);
}

div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.selected.failed {
    background-image: url(../images/icons/vestas/failed.png);
}

div.vestas ul.devices.selection input[type=checkbox]:not([disabled]) ~ div.image > div.selected,
div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.dark-overlay,
div.vestas ul.devices input[type=checkbox]:checked ~ div.image > div.selected {
	display: block;
}

div.vestas ul.devices > li > ul > li > p {
	text-align: left;
	font-size: 0.8em;
}

div.vestas ul.devices > li > ul > li > p.name {
	position: relative;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.vestas ul.devices > li > ul > li > p.name > img {
    height: 0.7em;
    position: absolute;
    right: 0;
}

div.vestas ul.devices > li > ul > li > p > span:first-child {
	color: var(--light-gray-color);
}

div.vestas ul.devices > li > ul > li > p:not(.name) > span.yellow {
    font-weight: bold;
    background-color: #a29200;
    color: white;
    padding: 0.2em 0.3em 0.1em 0.3em;
}

div.vestas ul.devices > li > ul > li > p > span.red {
    font-weight: bold;
    background-color: red;
    color: white;
    padding: 0.2em 0.3em 0.1em 0.3em;
}

div.vestas ul.devices > li > ul > li > p > span.init-percentage {
    display: block;
    height: 3px;
    background-color: #ffa30c;
}

div.vestas ul.devices > li > ul > li > p > img {
    height: 0.7em;
}

div.vestas ul.devices div#zwave-graph {
    width: 100%;
}

div.vestas ul.devices div#zwave-graph > div.vis-network {
    outline: none;
}

div.vestas ul.devices p.zwave-warning, div.failed-scan-installer-guide p.warning {
    font-size: 0.9em;
    font-style: italic;
    padding: 0.3em 0.5em 0.3em 1.8em;
    color: #FFD54F;
    background-color: #ffff001f;
    background-image: url(../images/icons/vestas/warning.png);
    background-position: 0.5em 0.3em;
    background-repeat: no-repeat;
    background-size: 1em;
}

/* VESTA CHANGE PROJECT */

div.vesta ul#cp-steps {
	padding: 0;
}

div.vesta ul#cp-steps > li {
	margin-top: 0.5em;
}

div.vesta ul#cp-steps > li.doing {
	font-weight: bold;
}

div.vesta ul#cp-steps > li.hidden {
	display: none;
}

div.vesta ul#cp-steps > li > span.icon {
	width: 2em;
    height: 2em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5em;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

div.vesta ul#cp-steps > li > span.icon {
    background-image: url(../images/icons/vesta/todo.png);
}

div.vesta ul#cp-steps > li.doing > span.icon {
    background-image: url(../images/icons/shared/loading.gif);
    background-size: 80%;
}

div.vesta ul#cp-steps > li.done > span.icon {
    background-image: url(../images/icons/vesta/done.png);
}

div.vesta ul#cp-steps > li.done-error > span.icon {
    background-image: url(../images/icons/vesta/done-error.png);
}

div.vesta ul#cp-steps > li.done-error > p.error {
	margin: 0.5em 0;
}

/* SHOME GUIDE */

div.shome-guide p {
	line-height: 1.2em;
}

div.shome-guide strong {
	color: var(--strong-color);
}

div.shome-guide > div > img {
    display: block;
    margin: 1.5em auto;
    width: 70%;
}

/* FAULTY BOARD */

div.faulty-board div.linked-element-info {
    background-color: rgba(255,255,255,0.1);
    text-align: center;
    padding: 1em;
    margin: 0.5em 0;
    overflow-x: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

div.faulty-board div.linked-element-info > img {
    height: 3em;
    vertical-align: middle;
    margin-right: 1em;
}

div.faulty-board div.board-info {
    background-color: rgba(255,255,255,0.1);
    text-align: center;
    padding: 1em 0.5em 0.3em 0.5em;
    margin: 0.5em 0 1em 0;
}

div.faulty-board div.board-info > div.image {
    position: relative;
    width: 120px;
    height: 80px;
    margin: 0.3em;
    border: 1px solid gray;
    background-color: white;
    margin: 0 auto 0.8em auto;

    -webkit-box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
}

div.faulty-board div.board-info > div.image > img {
    max-width: 100%;
    max-height: 100%;
}

div.faulty-board div.board-info > p:nth-of-type(1) {
    font-weight: bold;
}

div.faulty-board ul {
    list-style-type: circle;
    margin: 0.5em;
    padding-left: 1em;
}

div.faulty-board ul > li {
    padding: 0.5em 0em;
}

body:not(.touch) div.faulty-board ul > li > a:hover {
    text-decoration: underline;
}

div.faulty-board p.electrical-warning {
    font-size: 0.9em;
    font-style: italic;
    padding: 0.3em 0.5em 0.3em 1.8em;
    color: #FFD54F;
    background-color: #ffff001f;
    background-image: url(../images/icons/vestas/warning.png);
    background-position: 0.5em 0.3em;
    background-repeat: no-repeat;
    background-size: 1em;
}

div.faulty-board img#gear-icon {
	height: 1.5em;
    margin: 0 0.1em;
    vertical-align: middle;
}

div.faulty-board strong {
	color: var(--strong-color);
}

/* BATTERY DEVICES */

div.battery-devices {
    background-image: url(../images/black-background.png);
    padding: 1em;
}

div.battery-devices ul {
	background-image: none;
    margin: 0;
    padding: 0;
}

div.battery-devices li.battery-device {
    margin: 1em;
    padding: 0;
    cursor: default;
}

body:not(.touch) div.battery-devices li.battery-device:hover {
	background: none;
}

div.battery-devices li.battery-device > div {
    display: inline-block;
    vertical-align: middle;
}

div.battery-devices li.battery-device > div.image {
    margin: 0;
}

div.battery-devices li.battery-device > div.battery-icon {
    font-size: 1.2em;
    margin: 0.5em 1.6em 0 1.2em;
    text-align: center;
}

div.battery-devices li.battery-device > div.battery-icon > img {
    width: 3em;
    display: block;
    margin-bottom: 0.5em;
    margin-left: -6px;
}

div.battery-devices li.battery-device ul > li {
    list-style-type: disc;
}

/* RAM LOGS */

div.ram_logs div.graphs > div {
	width: 930px;
	margin: 0 0 1em 0;
	padding: 1em;
}

div.ram_logs div[id$="-graph"] {
	width: 100%;
	height: 300px;
}

div.ram_logs input[type=checkbox] {
	cursor: pointer;
}

div.ram_logs label {
	margin-right: 1em;
	cursor: pointer;
}

/* VISUS SERIAL NUMBERS */

div.visus_serial_numbers > div {
	cursor: pointer;
	margin-top: 1em;
}

div.visus_serial_numbers div.sns, div.visus_serial_numbers ul.activations > li {
	margin: 0.3em 0;
}

div.visus_serial_numbers ul {
	padding: 0;
}

body:not(.touch) div.visus_serial_numbers > ul > li:hover {
	background: none!important;
	cursor: default;
}

div.visus_serial_numbers div.sns {
	background-image: url(../images/icons/visus_serial_numbers/license.png);
	background-repeat: no-repeat;
	min-height: 1em;
	padding-left: 22px;
}

div.visus_serial_numbers div.sns, div.visus_serial_numbers ul.activations p.input-code, div.visus_serial_numbers ul.activations p.activation-code {
	cursor: text;
	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.visus_serial_numbers p.activations_number {
	display: none;
}

div.visus_serial_numbers ul.activations > li {
	position: relative;
	padding: 0.1em 0.5em;
}

body:not(.touch) div.visus_serial_numbers ul.activations > li:hover {
	background-color: rgba(255,255,255,0.1);
}

div.visus_serial_numbers ul.activations > li > p.installation {
	background-image: url(../images/icons/visus_serial_numbers/installation.png);
	background-repeat: no-repeat;
	padding-left: 22px;
}

div.visus_serial_numbers ul.activations > li > p.user {
	background-image: url(../images/icons/visus_serial_numbers/user.png);
	background-repeat: no-repeat;
	padding-left: 22px;
}

div.visus_serial_numbers ul.activations > li > p > img {
	max-width: 16px;
	max-height: 16px;
}

div.visus_serial_numbers ul.activations > li > p > a + span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

div.visus_serial_numbers ul.activations > li > div.buttons {
	display: none;
	padding: 0;
	top: 1em;
	right: 1em;
}

body:not(.touch) div.visus_serial_numbers ul.activations > li:hover > div.buttons {
	display: block;
}

/* VISUS SERIAL NUMBER */

div.visus_serial_number > div {
	position: relative;
}

div.visus_serial_number > div > h3 {
	background-image: url(../images/icons/shared/tick.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 60px;
	line-height: 2em;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.visus_serial_number ul {
	list-style-type: decimal;
	cursor: text;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.visus_serial_number ul > li {
	margin: 0.5em 0;
}

/* COUPONS */

div.coupons > div {
	cursor: pointer;
	margin-top: 1em;
}

div.coupons div.value {
	margin: 0.3em 0;
	padding: 2px 0 0 22px;
}

div.coupons ul {
	padding: 0;
}

body:not(.touch) div.coupons > ul > li:hover {
	background: none!important;
	cursor: default;
}

div.coupons div.value {
	background-image: url(../images/icons/coupons/coupon.png);
	background-repeat: no-repeat;
	min-height: 1em;
	cursor: text;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.coupons ul.user > li {
	background-image: url(../images/icons/coupons/user.png);
	background-repeat: no-repeat;
}

div.coupons ul.user > li > a + span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

/* COUPON */

div.coupon > div {
	position: relative;
}

div.coupon > div > h3 {
	background-image: url(../images/icons/shared/tick.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 60px;
	line-height: 2em;
	border-bottom: 1px solid var(--border-bottom-color);
}

div.coupon ul {
	list-style-type: decimal;
	cursor: text;

	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.coupon ul > li {
	margin: 0.5em 0;
}

div.use-coupon h3 {
	margin-top: 0.5em;
}

div.use-coupon > div > p {
	line-height: 1.2em;
}

div.use-coupon p.center {
	text-align: center;
}

div.use-coupon strong {
	color: var(--strong-color);
}

div.use-coupon img.half {
	width: 49%;
	max-width: 12em;
}

div.use-coupon a {
	font-weight: bold;
}

div.use-coupon div#coupon-value, div.use-coupon div#coupon-value-used {
	padding: 0 2em 0 3.4em;
    line-height: 4.3em;
    font-size: 1.8em;
    text-align: center;
    font-family: monospace;
    font-weight: bold;
    letter-spacing: 0.2em;
    background-image: url(../images/icons/coupons/coupon-value.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    height: 4.5em;
    color: white;
}

div.use-coupon div#coupon-value-used {
    background-image: url(../images/icons/coupons/coupon-value-used.png);
    margin-bottom: 0.5em;
    color: #606060;
}

div.use-coupon ul#elegible-installations-list {
    margin: 0;
    padding: 0.1em 0.5em;
}

div.use-coupon ul#elegible-installations-list > li {
    background-image: url(../images/icons/coupons/home.png);
    background-repeat: no-repeat;
    background-position: 0.3em center;
    background-size: 1em;
    padding: 0.4em 0.3em 0.2em 1.6em;
    cursor: pointer;
}

div.use-coupon span#supervisor-button {
	display: inline-block;
}

div.use-coupon img.big-with-shadow {
	width: 60%;
    margin: 2em auto;
    display: block;
    
	-webkit-box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 50%);
    box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 50%);
}

div.use-coupon a.download-button {
	display: block;
    background-color: var(--link-color);
    color: white;
    font-size: 1.4em;
    text-align: center;
    font-family: "Font-Condensed";
    padding: 0.3em 3em 0.2em 3em;
    max-width: 25%;
    margin: 1em auto;
    text-decoration: none;
	background-image: url(../images/icons/support/downloads.png);
    background-size: 1em;
    background-position: 0.5em center;
    background-repeat: no-repeat;
}

/* SOFIA */

div.sofia > div > p, div.sofia > div > ul {
	line-height: 1.34em;
}

div.sofia ul {
	padding: 0 0 0 0.5em;
	margin: 0;
}

div.sofia ul.companies > li {
    padding-left: 2.8em;
    margin: 1em 0;
    background-size: 2em;
    background-position: left 0.3em;
    background-repeat: no-repeat;
}

div.sofia ul.companies > li#furlan {
	background-image: url(../images/icons/sofia/home.png);
}

div.sofia ul.companies > li#master {
	background-image: url(../images/icons/sofia/connections.png);
}

div.sofia ul.companies > li#ubware {
	background-image: url(../images/icons/sofia/brain.png);
}

div.sofia ul.examples > li {
	list-style-type: disc;
    margin: 1em;
}

div.sofia strong {
	color: var(--strong-color);
}

div.sofia h3 {
	border-bottom: 1px solid var(--border-bottom-color);
}

div.sofia form.form_sofia {
	margin-top: 1em;
}

div.sofia form.form_sofia input[type=checkbox] {
	margin-top: 4px;
}

div.sofia form.form_sofia label[for=sofia_user_enabled] {
	margin-right: 0;
	display: inline;
}

div.sofia form.form_sofia label[for=sofia_user_enabled] ~ span {
    line-height: 1.5em;
    vertical-align: top;
    margin-top: 2px;
}

div.sofia form.form_sofia ul.suspension > li {
	list-style-type: disc;
    margin: 0.2em 1em;
}

div.sofia form.form_sofia p.suspended {
	background-image: url(../images/icons/sofia/pause.png);
	background-repeat: no-repeat;
	background-position: 0.5em center;
	background-size: 1.2em;
    background-color: #bda100;
    padding: 0.35em 0.5em 0.25em 2em;
    display: inline;
    font-size: 0.9em;
}

/* WEDO */

div.wedo > div > p, div.wedo > div > ul {
	line-height: 1.34em;
}

div.wedo ul {
	padding: 0 0 0 0.5em;
	margin: 0;
}

div.wedo strong {
	color: var(--strong-color);
}

div.wedo h3 {
	border-bottom: 1px solid var(--border-bottom-color);
}

div.wedo form.form_wedo {
	margin-top: 1em;
}

div.wedo form.form_wedo input[type=checkbox] {
	margin-top: 4px;
}

div.wedo form.form_wedo label[for=wedo_user_enabled] {
	margin-right: 0;
	display: inline;
}

div.wedo form.form_wedo label[for=wedo_user_enabled] ~ span {
    line-height: 1.5em;
    vertical-align: top;
    margin-top: 2px;
}

/* SUPPORTO */

div.support > div {
	padding: 1em;
}

div.support ul {
	margin: 0;
	padding: 0;
}

div.support ul > li {
	padding: 0.7em 1em 1.3em 1em;
}

body:not(.touch) div.support ul > li:hover {
	background-color: rgba(255,255,255,0.1);
}

div.support ul > li a {
	color: white;
	text-decoration: none;
}

div.support ul h3, div.support ul p {
	margin: 0;
}

div.support img {
	max-width: 50px;
	margin: 0.4em 1em 0 0;
	float: left;
}

/* ASSISTENZA */

div.assistance > ul {
	text-align: center;
}

div.assistance > ul a {
	color: white;
	text-decoration: none;
	display: block;
}

div.assistance > ul li {
	display: inline-block;
	width: 28%;
	text-align: center;
	border: none;
}

body:not(.touch) div.assistance > ul li:hover {
	background-color: rgba(255,255,255,0.1);
}

div.assistance > ul li img {
	max-width: 60px;
}

div.assistance > p {
	text-align: center;
	color: white;
}

div.assistance > div > h3 {
	margin-top: 1em;
}

div.assistance > div > h3:first-child {
	margin-top: 0;
}

div.assistance strong {
	color: var(--strong-color);
}

/* PORT FORWARDING */

div.port-forwarding ul {
	margin: 0;
}

div.port-forwarding li {
	list-style-type: circle;
	margin-bottom: 0.5em;
}

div.port-forwarding a.test {
	display: block;
	background-color: var(--button-color);
	color: white;
	font-size: 1.4em;
	text-align: center;
	font-family: "Font-Condensed";
	padding: 0.3em 3em 0.2em 3em;
	max-width: 50%;
	margin: 1em auto;
	text-decoration: none;
}

body:not(.touch) div.port-forwarding a.test:hover {
	background-color: var(--button-hover-color);
}

div.port-forwarding span.underline {
	text-decoration: underline;
}

/* UNA VOICE REQUIREMENTS */

div.una_voice-requirements div#choose-assistant > ul {
	padding: 0;
}

div.una_voice-requirements div#choose-assistant > ul > li {
    background-color: rgba(255,255,255,0.15);
    list-style-type: none;
    padding: 2em;
    margin: 1em 0;
    text-align: center;
    cursor: pointer;
}

body:not(.touch) div.una_voice-requirements div#choose-assistant > ul > li:hover {
	background-color: rgba(255,255,255,0.4);
}

div.una_voice-requirements div#choose-assistant > ul > li > p {
	text-align: center;
	margin-bottom: 0;
}

div.una_voice-requirements div#choose-assistant > ul img {
    max-width: 36em;
    width: 90%;
}

div.una_voice-requirements div#chosen-assistant,
div.una_voice-requirements div#chosen-assistant .google-home-choice,
div.una_voice-requirements div#chosen-assistant .alexa-choice {
	display: none;
}

div.una_voice-requirements div#chosen-assistant strong {
	color: var(--strong-color);
}

div.una_voice-requirements div#chosen-assistant > h3 {
	margin-top: 1em;
	clear: both;
}

div.una_voice-requirements div#chosen-assistant > p {
	text-align: justify;
	line-height: 1.2em;
}

div.una_voice-requirements div#chosen-assistant ul > li {
	list-style-type: disc;
	margin: 1em 0;
}

div.una_voice-requirements div#chosen-assistant img.float-right {
	width: 15em;
    margin: 0 auto;
    display: block;
    float: right;
}

div.una_voice-requirements div#chosen-assistant > img.shome-semantic-example {
	margin: 1em;
    width: 16em;
    float: left;
}

div.una_voice-requirements div#chosen-assistant ul {
	padding-left: 2em;
}

div.una_voice-requirements div#chosen-assistant > img.shome-semantic-example ~ ul {
	padding-left: 20em;
}

div.una_voice-requirements div#chosen-assistant a.request, div.una_voice-order div#chosen-assistant a.finish,
div.una-voice-guide a#green-large-button, div.google-home-guide a#green-large-button {
	display: block;
	background-color: var(--link-color);
	color: white;
	font-size: 1.4em;
	text-align: center;
	font-family: "Font-Condensed";
	padding: 0.3em 3em 0.2em 3em;
	max-width: 50%;
	margin: 1em auto;
	text-decoration: none;
}

div.una_voice-requirements div#chosen-assistant a.request.disabled {
	background-color: var(--light-gray-color);
	color: gray;
}

/* GOOGLE HOME ORDER */

div.una_voice-order #paypal-button {
    margin: 1em auto;
    font-size: 1.2em;
    width: 13em;
    display: block;
    text-align: center;
}

/* GOOGLE FORM PIN */

form.una-voice-pin {
	text-align: center;
	padding: 1em 0;
    color: white;
}

form.una-voice-pin input[type=text] {
	background-color: white;
	border: 1px solid gray;
	font-size: 1.2em;
	color: black;
	text-align: center;
    padding: 0.5em 0 0.3em 0.3em;
    letter-spacing: 0.3em;
    font-weight: bold;
    display: block;
    margin: 0 auto 0.8em auto;
}

form.una-voice-pin p#google-warning {
    text-align: inherit;
    margin-top: 0;
}

/* ADDIN ACTIVATION */

div.addin-activation h3 {
	border-bottom: 1px solid var(--border-bottom-color);
}

div.addin-activation ul {
	padding: 0 1.5em;
}

div.addin-activation li {
    list-style-type: disc;
    margin: 1em 0;
}

div.addin-activation li > span {
	display: inline-block;
	min-width: 12em;
}

div.addin-activation li > p.waiting, div.addin-activation li span#processing-paypal, div.addin-activation li > p.paid {
	color: #383838;
	background-color: #bda100;
	padding: 0.2em;
	display: inline;
}

div.addin-activation li > p.paid {
	background-color: var(--link-color);
}

div.addin-activation img.addin-logo {
	height: 1em;
    margin-right: 0.5em;
    background-color: white;
    padding: 0.3em;
    vertical-align: middle;
}

div.addin-activation span#show-bank-details {
	color: var(--link-color);
	cursor: pointer;
}

div.addin-activation ul.bank-data {
	display: none;
}

div.addin-activation form[action*=paypal] {
    display: inline-block;
    vertical-align: middle;
    margin: 0.3em 0.5em 0 0.5em;
}

div.addin-activation form[action*=paypal] input {
    cursor: pointer;
}

div.addin-activation a#paypal-button {
    margin: -0.3em 0.5em 0 0.5em;
}

div.addin-activation img#processing-paypal {
	height: 1em;
	vertical-align: middle;
	margin-right: 0.3em;
}

div.addin-activation a.download_file {
	background-image: url(../images/icons/invoice/download.png);
	margin: 0;
}

/* UNA VOICE GUIDE */

div.una-voice-guide h3, div.una-voice-guide h4 {
	margin-top: 1em;
}

div.una-voice-guide h4 {
	color: var(--strong-color);
	font-weight: bold;
	font-size: 1.1em;
}

div.una-voice-guide strong {
	color: var(--strong-color);
}

div.una-voice-guide > div > p {
	line-height: 1.2em;
}

div.una-voice-guide div#guide-preview, div.una-voice-guide > div > img {
    display: block;
    margin: 1.5em auto;
}

div.una-voice-guide > div > em.voice-command {
	display: block;
	background-image: url(../images/icons/addin_activations/una_voice_guide/speaker.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 1em;
	font-family: "Font-Condensed";
	font-size: 1.3em;
    padding-left: 1.4em;
    margin-left: 0.5em;
}

div.una-voice-guide p#note {
	background-color: rgba(255,255,255,0.1);
	padding: 0.5em;
    border: 1px dashed;
}

div.una-voice-guide div#guide-preview {
    height: 15em;
    max-width: 400px;
    -webkit-mask-image: -webkit-gradient(linear, left center, left bottom, from(rgba(0,0,0,1)), to(rgba(0,0,0,0)));
}

div.una-voice-guide div#guide-preview img {
	display: block;
	width: 100%;
}

/* UNA VOICE EXAMPLES */

div.una-voice-examples ul {
	margin: 0;
	padding: 0 0.5em;
}

div.una-voice-examples ul li.element-name {
	margin: 0.5em 0;
    background-color: rgba(255,255,255,0.1);
    padding: 0.3em;
}

div.una-voice-examples ul li.element-name h2 {
	color: white;
	margin: 0;
}

div.una-voice-examples ul li:not(.element-name) {
	list-style-type: disc;
	margin-left: 1em;
    line-height: 1.2em;
}

div.una-voice-examples ul li span.invocation {
	color: #dfdfdf;
}

div.una-voice-examples ul li strong {
	color: var(--strong-color);
    font-weight: normal;
}

div.una-voice-examples ul img {
	height: 1.5em;
    vertical-align: middle;
    margin-right: 0.3em;
}

/* OFFLINE GUIDE */

div.offline-guide div#warning {
	display: block;
	width: auto;
}

div.offline-guide strong {
	color: var(--strong-color);
}

div.offline-guide > div > img {
    display: block;
    width: 100%;
    max-width: 30em;
    margin: 1.5em auto;
}

div.offline-guide img#shome-icon {
	height: 1.5em;
    margin: 0 0.1em;
    vertical-align: middle;
}

div.offline-guide h3 {
	margin-top: 1em;
}

div.offline-guide h3 > img {
	height: 0.7em;
    margin-right: 0.1em;
}

div.offline-guide ul {
	list-style-type: circle;
	margin: 0;
    padding: 0 1.5em;
}

div.offline-guide ul li {
	margin-bottom: 0.5em;
}

/* NOTIFICATIONS GUIDE */

div.notifications-guide strong {
	color: var(--strong-color);
}

div.notifications-guide > div > img {
    display: block;
    margin: 1.5em auto;
}

div.notifications-guide > div > img#app-screenshot {
	max-height: 7.5em;
}

div.notifications-guide h3:not(:first-of-type) {
	margin-top: 1em;
}

div.notifications-guide ul {
	list-style-type: circle;
	margin: 0;
    padding: 0 1.5em;
}

div.notifications-guide ul li {
	margin-bottom: 0.5em;
}

/* FAILED SCAN GUIDE */

div.failed-scan-user-guide h3, div.failed-scan-installer-guide h3 {
	margin-top: 1em;
    line-height: 1.2em;
}

div.failed-scan-user-guide strong, div.failed-scan-installer-guide strong {
	color: var(--strong-color);
}

div.failed-scan-user-guide > div > img, div.failed-scan-installer-guide > div > img {
    display: block;
    max-height: 10em;
    margin: 1.5em auto;
}

div.failed-scan-installer-guide ul {
	margin: 0;
	padding: 0;
}

div.failed-scan-installer-guide ul > li {
    list-style-type: disc;
    margin-left: 1em;
    line-height: 1.5em;
}

/* INVOICES */

div.invoices li > p:first-child {
    width: 16em;
    display: inline-block;
    margin-right: 1em;
}

div.invoices div.invoice-info {
	display: inline-block;
	width: 21em;
	padding: 2px 0 0 0;
    vertical-align: top;
}

div.invoices div.invoice-info > p {
	margin: 0 0 0.5em 0;
	padding-left: 22px;
	background-repeat: no-repeat;
}

div.invoices div.invoice-info > p.payment-method {
	background-image: url(../images/icons/invoices/payment-method.png);
}

div.invoices div.invoice-info > p.coupon-used {
	background-image: url(../images/icons/coupons/coupon.png);
}

div.invoices div.invoice-info > p.invoice-missing {
	color: #bda100;
}

div.invoices div.invoice-info > p.invoice-issued {
	background-image: url(../images/icons/invoices/invoice.png);
}

div.invoices div.invoice-info > p > span.paid {
	background-color: var(--positive-color);
	color: white;
    padding: 0.2em 0.5em;
}

div.invoices div.invoice-info > p > span.not_paid {
	background-color: #bda100;
	color: white;
    padding: 0.2em 0.5em;
}

/* INVOICE */

div.edit-invoice div#clipboard {
	padding: 0.5em;
    background-color: var(--button-light-color);
    color: white;
    cursor: pointer;
    display: block;
    width: 12em;
    text-align: center;
    margin-bottom: 0.5em;
}

body:not(.touch) div.edit-invoice div#clipboard:hover {
    background-color: var(--button-light-hover-color);
}

div.edit-invoice label {
	min-width: 11em!important;
}

div.edit-invoice input#invoice_paid_at {
	max-width: 9em;
}

div.edit-invoice input#invoice_paid_at + span {
	color: var(--light-gray-color);
	font-size: 0.8em;
}

div.edit-invoice ul {
	padding: 0 1.5em;
}

div.edit-invoice textarea {
	height: 0;
	opacity: 0;
}

div.edit-invoice ul.selectable {
	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

div.edit-invoice li {
    list-style-type: disc;
    margin: 1em 0;
}

div.edit-invoice li > span {
	display: inline-block;
	min-width: 12em;
}

div.edit-invoice input#invoice_delete_file {
	display: none;
}

div.edit-invoice a.download_file {
	background-image: url(../images/icons/invoice/download.png);
}

div.edit-invoice span.delete_file {
	background-image: url(../images/icons/invoice/cross.png);
}

form.form_invoice fieldset:nth-of-type(1) label {
	min-width: 120px;
}

form.form_invoice label[for^=invoice_recipient_type_] {
	margin: 0;
    vertical-align: middle;
    cursor: pointer;
}

form.form_invoice label[for^=invoice_recipient_type_]:after {
	content: none;
}

form.form_invoice div#invoice_payment_method input[type=radio] {
	display: none;
}

form.form_invoice div#invoice_payment_method label {
	background-color: rgba(255,255,255,0.2);
    padding: 0.5em 1em;
    line-height: 1em;
	border: 1px solid rgba(255,255,255,0.3);
	text-align: center;
	font-weight: bold;
	cursor: pointer;

	-webkit-border-radius: 8px;
	border-radius: 8px;
}

form.form_invoice div#invoice_payment_method label:after {
	content: none;
}

form.form_invoice div#invoice_payment_method input[type=radio]:checked + label {
	background-color: white;
	color: #2b2b2b;
}

form.form_invoice div#invoice_payment_method label > img {
	height: 2em;
	vertical-align: middle;
}

form.form_invoice div#invoice_payment_method label > img + span {
	margin-left: 1em;
	display: inline-block;
}

form.form_invoice fieldset.payment_methods span.valid-coupon, form.form_invoice fieldset.payment_methods span.used-coupon {
	margin-left: 0.3em;
    padding-left: 1.2em;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 1em;
}

form.form_invoice fieldset.payment_methods span.valid-coupon {
	background-image: url(../images/icons/invoice/valid-coupon.png);
}

form.form_invoice fieldset.payment_methods span.used-coupon {
	background-image: url(../images/icons/invoice/used-coupon.png);
}

form.form_invoice fieldset.invoice_summary ul {
	padding: 0 0 0 1em;
    list-style-type: disc;
}

form.form_invoice fieldset.invoice_summary li {
	margin: 1em 0;
}

form.form_invoice fieldset.invoice_summary li > span {
	color: var(--strong-color);
}

form.form_invoice fieldset.invoice_summary div#gift {
	display: inline-block;
	background-image: url(../images/icons/invoices/gift.png);
}

form.form_invoice fieldset.payment_methods div#invoice_payment_method label {
	margin: 0 1em 0 0;
}

form.form_invoice fieldset.payment_methods input#invoice_coupon {
	width: 200px;
	text-transform: uppercase;
}

form.form_invoice fieldset.payment_methods input#invoice_coupon + p {
	display: inline;
}

div ul.bank-data {
    background-color: rgba(255,255,255,0.7);
    border: 1px solid white;
    color: black;
    padding: 0.5em 1em;
    margin: 0.5em 0;
    word-wrap: break-word;
}

div ul.bank-data > li {
	margin: 0.3em 0;
	list-style-type: none!important;
}

div ul.bank-data > li > strong {
	min-width: 6em;
    display: inline-block;
}

#paypal-button {
    margin-top: -0.5em;
    width: 10em;
    background-color: #0255a6;
    padding: 0.5em 0 0.2em 0;
    font-weight: bold;
    font-size: 1em;
    font-style: italic;
    display: inline-block;
    cursor: pointer;
    color: white;
    text-align: center;

    -webkit-border-radius: 0.3em;
    border-radius: 0.3em;
    -webkit-box-shadow: 0 0.25em 0 0 #173755;
    box-shadow: 0 0.25em 0 0 #173755;
}

#paypal-button:hover {
    text-decoration: none;
}

/* STATISTICS */

div.statistics ul {
	margin: 0;
}

div.statistics ul > li {
	cursor: default;
	padding: 0;
	border-bottom: none;
}

body:not(.touch) div.statistics ul > li:hover {
	background: none;
}

div.statistics ul > li > span:not(.sent) {
	margin-right: 0.2em;
}

div.statistics ul.system-infos {
	padding: 1em;
	text-align: center;
}

div.statistics ul.system-infos > li {
	display: inline-block;
	width: 24%;
	text-align: center;
}

div.statistics ul.system-infos > li:nth-of-type(1) {
	width: 100%;
	margin-bottom: 2em;
}

div.statistics ul.system-infos div.graph {
	width: 100%;
	height: 200px;
	margin: 1em auto 0 auto;
}

div.statistics ul.system-infos > li:nth-of-type(1) div.graph {
	width: 100%;
	margin-top: 0;
}

div.statistics span.pieLabel > div {
	font-size: 0.7em!important;
}

div.statistics > div > ul:not(.system-infos) {
	list-style-type: circle;
	padding-left: 1em;
}

div.statistics > div > ul:not(.system-infos) > li {
	padding: 0.3em 0;
}

div.statistics div.last-offline {
	min-height: 16em;
}

div.statistics div.last-offline div.graph {
	width: 250px;
	height: 250px;
	margin: 1em 1em 0 0;
	float: right;
}

div.statistics div.sent-messages > p > span {
	font-size: 1.5em;
	margin: 0.5em;
	vertical-align: middle;
}

div.statistics div.sent-messages span.sent, div.statistics div.sent-messages span.not_sent {
	padding: 0.2em 0.3em;
	font-size: 0.8em;
	vertical-align: top;
	color: white;
}

div.statistics div.sent-messages span.sent {
	background-color: var(--positive-color);
	color: white;
}

div.statistics div.sent-messages span.not_sent {
	background-color: #971c1c;
	color: white;
}

div.statistics div.sent-messages div.graph {
	width: 250px;
	height: 250px;
	margin: 0 auto;
	float: right;
}

div.statistics div.list-google-home span.open, div.statistics div.list-google-home span.offline, div.statistics div.list-google-home span.closed {
	padding: 0.2em 0.3em;
	font-size: 0.8em;
	vertical-align: top;
	color: white;
}

div.statistics div.list-google-home span.open {
	background-color: var(--positive-color);
	color: white;
}

div.statistics div.list-google-home span.offline {
	background-color: #bda100;
	color: white;
}

div.statistics div.list-google-home span.closed {
	background-color: #971c1c;
	color: white;
}

/* WIZARDS */

div.wizard p {
	line-height: 1.2em;
}

div.wizard strong {
	color: var(--strong-color);
}

div.wizard img {
	display: block;
	margin: 1em auto;
	max-width: 70%;
    max-height: 8em;
}

div.wizard h4.mail {
	background-image: url(../images/icons/wizards/siderahome/email.png);
	background-repeat: no-repeat;
	background-position: left 2px;
	padding-left: 2em;
	font-size: 1.2em;
	margin: 1em;
}

div.wizard a#green-large-button {
	display: block;
	background-color: var(--link-color);
	color: white;
	font-size: 1.4em;
	text-align: center;
	font-family: "Font-Condensed";
	padding: 0.3em 3em 0.2em 3em;
	max-width: 50%;
	margin: 1em auto;
	text-decoration: none;
}

div.wizard div#notes {
	margin-top: 1.5em;
}

div.wizard ul.generic-list {
	margin: 0;
	padding: 0;
}

div.wizard ul.generic-list > li {
	margin: 0.5em 0;
    background-color: rgba(255,255,255,0.1);
    padding: 0.5em 0.5em 0.7em 0.5em;
    cursor: pointer;
}

body:not(.touch) div.wizard ul.generic-list > li:not(.active):hover {
    background-color: rgba(255,255,255,0.3);
}

body:not(.touch) div.wizard ul.generic-list > li:not(.active):active {
    background-color: rgba(255,255,255,0.5);
}

div.wizard ul.generic-list > li.active {
    background-color: rgba(255,255,255,0.3);
}

div.wizard ul.generic-list li input[type=radio] + label {
    margin-right: 0.5em;
}

div.wizard ul#installation-list > li > span.owner {
	background-image: url(../images/icons/installations/owner.png);
	background-repeat: no-repeat;
    padding-left: 1.1em;
    margin-left: 0.5em;
}

div.wizard ul#installation-list li.new {
    padding-top: 0.1em;
    padding-bottom: 0.3em;
}

div.wizard ul#installation-list li.new label {
    display: inline;
    line-height: 1.7em;
    vertical-align: middle;
    margin-right: 0.5em;
}

div.wizard ul#map-scene-list > li:not(:last-child) {
    display: inline-block;
    width: 8.4em;
    vertical-align: top;
    padding: 1em;
    margin: 0.5em;
    text-align: center;
}

div.wizard ul#map-scene-list img {
    max-width: 6em;
    max-height: 6em;
    margin: 0 auto 1em auto;
}

div.wizard ul#map-scene-list > li:not(:last-child) input[type=radio] {
	display: none;
}

/* WIZARD SIDERAHOME */

div.wizard ul#es-steps {
	padding: 0;
}

div.wizard ul#es-steps > li {
	margin-top: 0.5em;
}

div.wizard ul#es-steps > li.doing {
	font-weight: bold;
}

div.wizard ul#es-steps > li > span.icon {
	width: 2em;
    height: 2em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5em;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

div.wizard ul#es-steps > li > span.icon {
    background-image: url(../images/icons/wizards/siderahome/todo.png);
}

div.wizard ul#es-steps > li.doing > span.icon {
    background-image: url(../images/icons/shared/loading.gif);
    background-size: 80%;
}

div.wizard ul#es-steps > li.done > span.icon {
    background-image: url(../images/icons/wizards/siderahome/done.png);
}

div.wizard ul#es-steps > li.done-error > span.icon {
    background-image: url(../images/icons/wizards/siderahome/done-error.png);
}

div.wizard ul#es-steps > li.done-error > p.error {
	margin: 0.5em 0;
}

div.wizard p#tick {
	background-image: url(../images/icons/shared/tick.png);
    background-repeat: no-repeat;
    background-position: left center;
    display: inline-block;
    padding: 1em 0 1em 60px;
    margin: 0;
    margin-bottom: 1em;
}

div.wizard ul#remote-control-options {
    padding: 0;
    margin: 0;
}

div.wizard ul#remote-control-options li {
	list-style-type: disc;
    margin: 1em 0 1em 1em;
}

div.wizard ul#es-steps ~ a {
	display: none;
}

/* WIZARD THERMOSTAT */

div.wizard a.installation {
	display: block;
    margin: 0.3em;
    background-image: url(../images/icons/wizards/thermostat/home.png);
    background-repeat: no-repeat;
    background-position: 0.3em center;
    background-size: 1em;
    padding: 0.4em 0.3em 0.2em 1.6em;
    cursor: pointer;
}

/* ACCESS DENIED */

div.access_denied > div {
	min-height: 8.3em;
	padding-left: 6.5em;
}

div.access_denied p {
	margin-top: 3em;
}

div.access_denied img {
	max-width: 100px;
	max-height: 100px;
	float: left;
	margin: 2em;
}

/* ERRORE */

div.errors > div {
	min-height: 8.3em;
	padding-left: 6.5em;
}

div.errors p {
	margin-top: 3em;
}

div.errors img {
	max-width: 100px;
	max-height: 100px;
	float: left;
	margin: 2em;
}

/* VIDEO */

div.youtube-video {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    padding-top: 25px;
    height: 0;
}

div.youtube-video > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* HOTEL */

div.hotel-overview {
    display: inline-block;
    width: 27.5em;
    margin: 0.5em;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 1em;
    vertical-align: top;
    text-align: center;
}

div.hotel-overview:nth-of-type(2n+1) {
    margin-right: 0;
}

div.hotel-overview:nth-of-type(2n) {
    margin-left: 0;
}

div.hotel-overview > h3 {
    text-align: center;
}

div.hotel-overview > div {
    position: relative;
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.2);
    width: 12.75em;
    margin: 0.5em;
    height: 5em;
    color: white;
    text-align: center;
    cursor: pointer;
}

body:not(.touch) div.hotel-overview > div:hover {
    background-color: rgba(255,255,255,0.3);
}

div.hotel-overview > div > span.value {
    height: 2.5em;
    padding-right: 0.5em;
    display: inline-block;
    line-height: 2.5em;
    font-size: 2em;
    text-align: center;
}

div.hotel-overview > div > h4 {
    line-height: 5em;
    display: inline;
    vertical-align: top;
    font-weight: bold;
}

div.hotel-overview div.alert-dot {
    height: 12px;
    width: 12px;
    background-color: yellow;
    position: absolute;
    top: 1em;
    right: 1em;
    display: none;
}

div.no-rooms, div#no-result {
    margin: 1em 0;
    padding: 1em 1.5em;
    background-image: url(../images/black-background.png);
}

div#no-result {
    display: none;
}

div#hotel-filters {
    margin-bottom: 1em
}

div#hotel-filters div#filter {
    position: relative;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 1em;
    border-radius: 1em;
}

div#hotel-filters div#filter > span#search {
    position: relative;
    background-image: url(../images/icons/hotel/search.png);
    background-size: 1.8em;
    background-repeat: no-repeat;
    background-position: center left;
    display: inline-block;
    width: 100%;
    height: 2em;
    box-sizing: border-box;
    vertical-align: 0.4em;
    padding-left: 2.5em;
    padding-right: 8.5em;
    margin-bottom: 1em;
}

div#hotel-filters div#filter > span#search > input[type=text] {
    background: none;
    border: none;
    width: 10em;
    padding: 0.3em 0.5em;
    color: white;
    font-family: "Font";
    width: 100%;
    height: 2em;
    vertical-align: -0.5em;
}

div#hotel-filters div#filter > span#search > input[type=text]::placeholder {
    color: #BCC4C4;
}

div#hotel-filters div#filter > span#search > input[type=text]:focus::placeholder {
    color: rgba(255,255,255,0);
}

div#hotel-filters div#filter > span#search > div#clear-hotel-filters {
    position: absolute;
    top: 0;
    right: 5em;
    background-image: url(../images/icons/hotel/clear-filter.png);
    background-size: 1.5em;
    background-repeat: no-repeat;
    background-position: center;
    width: 2em;
    height: 2em;
    cursor: pointer;
}

div#hotel-filters div#filter select {
    margin: 0 0.5em;
    width: 13.5em;
}

div#hotel-filters div#filter div#toggle-hotel-show-filters {
    position: absolute;
    top: 1em;
    right: 3.5em;
    background-image: url(../images/icons/hotel/down-arrow.png);
    background-size: 1.5em;
    background-repeat: no-repeat;
    background-position: center;
    height: 2em;
    width: 2em;
    cursor: pointer;
}

div#hotel-filters div#filter div#toggle-hotel-show-filters.active {
    background-image: url(../images/icons/hotel/up-arrow.png);
}

div#hotel-filters div#filter div#hotel-preferred-views {
    position: absolute;
    top: 1em;
    right: 1em;
    background-image: url(../images/icons/hotel/star-full.png);
    background-size: 2em;
    background-repeat: no-repeat;
    background-position: center;
    width: 2em;
    height: 2em;
    cursor: pointer;
}

div#hotel-filters div#filter div#hotel-preferred-views.active {
    background-position: top right;
    padding: 0.5em;
    padding-top: 2.5em;
    width: auto;
    height: auto;
    background-color: rgb(28,28,28,0.95);
    border-radius: 12px;
}

div#hotel-filters div#filter div#hotel-preferred-views > div {
    display: none;
}

div#hotel-filters div#filter div#hotel-preferred-views.active > div {
    display: block;
    background-color: rgba(255, 255, 255, 0.1);
    margin-top: 0.3em;
    min-width: 6em;
    padding: 0 0.2em;
}

body:not(.touch) div#hotel-filters div#filter div#hotel-preferred-views.active > div:not(.active):hover {
    background-color: rgba(255, 255, 255, 0.2);
}

div#hotel-filters div#filter div#hotel-preferred-views.active > div.active {
    background-color: rgba(255, 255, 255, 0.3);
}

div#hotel-filters div#filter div#hotel-preferred-views.active > div > div.star {
    background-image: url(../images/icons/hotel/star-empty.png);
    background-size: 1.5em;
    background-repeat: no-repeat;
    background-position: center;
    height: 1.8em;
    width: 1.8em;
    display: inline-block;
    opacity: 0.5;
    vertical-align: middle;
}

div#hotel-filters div#filter div#hotel-preferred-views.active > div.default > div.star {
    background-image: url(../images/icons/hotel/star-full.png);
    opacity: 1;
}

div#hotel-filters div#filter div#hotel-preferred-views > div > input[type=text] {
    background: none;
    border: none;
    color: white;
    font-size: 1em;
    font-family: "Font";
    vertical-align: top;
    cursor: pointer;
    pointer-events: none;
    height: 1.8em;
    line-height: 1.8em;
    margin: 0.2em 0;
    vertical-align: -1px;
}

div#hotel-filters div#filter div#hotel-preferred-views > div.add-new {
    background-image: url(../images/icons/hotel/new.png);
    background-size: 1em;
    background-repeat: no-repeat;
    background-position: 0.5em center;
    padding-left: 1.8em;
}

div#hotel-filters div#filter div#hotel-preferred-views > div > input[type=text].editing {
    pointer-events: inherit;
}

div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-edit,
div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-ok {
    background-image: url(../images/icons/hotel/edit.png);
    background-size: 1.2em;
    background-repeat: no-repeat;
    background-position: center;
    height: 1.8em;
    width: 1.8em;
    display: inline-block;
    opacity: 0.5;
    vertical-align: middle;
}

div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-ok {
    background-image: url(../images/icons/hotel/ok.png);
    display: none;
}

div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-bin {
    background-image: url(../images/icons/hotel/bin.png);
    background-size: 0.8em;
    background-repeat: no-repeat;
    background-position: center;
    height: 1.8em;
    width: 1.8em;
    display: inline-block;
    opacity: 0.5;
    vertical-align: middle;
}

body:not(.touch) div#hotel-filters div#filter div#hotel-preferred-views > div > div.star:hover,
body:not(.touch) div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-edit:hover,
body:not(.touch) div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-ok:hover,
body:not(.touch) div#hotel-filters div#filter div#hotel-preferred-views > div > div.view-bin:hover {
    opacity: 1;
}

div#hotel-filters div#show {
    background-color: rgba(0, 0, 0, 0.2);
    margin: 0 1em;
    padding: 1em;
    border-radius: 0 0 1.5em 1.5em;
    display: none;
}

div#hotel-filters div#show > div {
    display: inline-block;
    width: 85%;
    margin: -0.5em 2%;
    vertical-align: top;
}

div#hotel-filters div#show > div > span {
    display: inline-block;
    padding-left: 0.3em;
}

div#hotel-filters div#show > div > span > input[type=checkbox] {
    height: 1.5em;
    width: 1.5em;
    margin-right: 0.8em;
    vertical-align: -7px;
    cursor: pointer;
}

div#hotel-filters div#show > div > span > label {
    height: 2.2em;
    cursor: pointer;
    width: 12em;
    display: inline-block;
    vertical-align: middle;
    line-height: 2.4em;
}

body:not(.touch) div#hotel-filters div#show > div > span:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

div#hotel-filters div#show > div > span:active {
    background-color: rgba(255, 255, 255, 0.3);
}

div#hotel-filters div#show > div > span > label > span.icon {
    display: inline-block;
    width: 1.5em;
    text-align: center;
    margin-right: 0.5em;
}

div#hotel-filters div#show > div > span > label > span.icon > img {
    height: 1.5em;
    vertical-align: -7px;
}

div.floor {
    background-color: rgba(255, 255, 255, 0.05);
    padding: 0.5em 1em;
    margin-bottom: 1em;
    border-radius: 1.5em!important;
}

div.room.search-filtered, div.room.sector-filtered, div.floor.floor-filtered, div.room.room-template-filtered, div.room.statuses-filtered {
    display: none!important;
}

div.room > div > *.hidden, div.room.minimal div.icon-status.hidden, div.room.minimal div.status > span.hidden, div.room.minimal div.action > span.hidden,
div.room.minimal p.last-update {
    display: none;
}

div.floor > p {
    text-align: center;
}

div.floor > div {
    padding-bottom: 0.5em;
}

div.h-scrollable {
    overflow-x: auto;
}

div.h-scrollable.disabled {
    touch-action: none;
}

div.h-scrollable > div, ul.room-notes > li {
    white-space: nowrap;
}

div.h-scrollable > div > * {
    white-space: initial;
}

div.room {
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 1.5em !important;
    display: inline-block;
    padding: 12px;
    vertical-align: top;
    font-size: 0.9em;
    width: 234px;
    margin-left: 16px;
}

div.room:first-of-type, div.room.first {
    margin-left: 0;
}

div.room > h1 {
    font-size: 1.5em;
    margin: 0 0.3em 0.5em 0.3em;
    background-image: url(../images/icons/hotel/hotel.png);
    background-size: 0.9em;
    background-repeat: no-repeat;
    background-position: 0.1em;
    padding-left: 1.5em;
    padding-top: 0.2em;
}

div.room.alert > h1 {
    background-image: url(../images/icons/hotel/alert.png);
}

div.room.minimal {
    position: relative;
    width: auto;
    white-space: normal;
}

div.room.minimal div.spin {
    position: absolute;
    right: 0;
    left: 50%;
    margin-left: -15px;
}

div.room.minimal > div[id^=hotel] {
    width: 96px;
    margin: 0 auto;
}

div.room.minimal div.status:not(.hidden), div.room.minimal div.action:not(.hidden) {
    width: 48px;
    display: inline-block;
    vertical-align: top;
    text-align: center;
}

div.room.minimal div.status > span {
    justify-content: center;
}

div.room.minimal[--data-statuses-count="1"] div.status:not(.hidden), div.room.minimal[--data-statuses-count="1"] div.action:not(.hidden) {
    zoom: 2;
}

div.room.minimal div.icon-status, div.room.minimal div.icon-action {
    float: none;
    margin: 0 auto;
}

/* BORDER RADIUS */

div.content *:not(img, input, h1, h2, h3, table, table *, div.sub-content > *, div.online-status, li, div.online-status > div,
	div.installations li > div, div.installations div.owner, div.installations div.installer, div.command_logs div.user, div.image,
	div.maps-level div, div.probe-speed, div.rgb-color, div#sidebar, a.load *, .go-back, canvas, div.mce-tinymce, div.mce-tinymce *,
	ul.devices p.name, div.sent_reset_password > h4, div.dark-overlay, div.floor > div),
div.rapid-links > a, div.buttons input[type=submit], div.graphs > *, div.wizard li, div.errors > div, div.maps-level, div#sidebar, 
div#sidebar *:not(p, a, img, span.go-back, div.probe-speed, div.rgb-color, table *),
ul.home, ul.home li, ul.home + div.last_post, div#categories > div#cat-types, div#categories > div#cat-elements,
div#categories > div#cat-types li, div#categories > div#cat-elements > div, div#choose-assistant li, 
a.load > div, div.current-histogram, div.consumptions ~ div.download, div.una-voice-examples ul li.element-name, 
div.downloads ul#last-downloads > li > ul li, div.support ul > li, ul.activations > li, div.admin li, div.offline-guide > div, 
div.use-coupon > div, div.notifications-guide > div, div.failed-scan-user-guide > div, div.failed-scan-installer-guide > div,
div.wizard > div, form input[type=file], input[type=submit], a.up {
    border-radius: 6px;
}

div::-webkit-scrollbar-thumb {
    border-radius: 5px;
}

form input[type=text], form input[type=email], form input[type=password], form input[type=number], form textarea, div:not(.wrapper) form select,
div.content > div > input, div.list-header > input[type=text] {
	border-radius: 3px!important;
}

input[type=range], input[type=date], input[type=time], input[type=datetime-local] {
	border-radius: 3px;
}

.go-back {
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
}

div.sub-content > ul:not(.home) {
	overflow: hidden; /* per eventuale bordo inferiore dei <li> interni */
}