@media print {
  .visible-print {
    display: inherit !important;
  }
  .hidden-print {
    display: none !important;
  }
}

body {
	text-rendering: optimizeLegibility;
}


/**
 * Notification
 **/
.notification-icon {
	position: absolute;
	top: 0;
	right: 0;
	padding: 23px 10px;
	display: none;
	font-size: 1rem;
	cursor: pointer;
	opacity: .7;
}
	.notification-icon:hover {
		background: rgba(0,0,0,.2);
		opacity: 1;
	}

/**
 * Menu -> Bottom box
 **/
#sidebar-info {
	min-height: 59px;
	background: #2ecc71;
	color: #fff;
	line-height: 35px;
	font-size: 2em;
	/*border-bottom: 1px solid rgba(255,255,255,.1);*/
	position: relative;
	box-sizing: border-box;
	padding: 10px;
	text-align: center;
}

/**
 * Menu -> Activity
 **/
#activity-box { }
	.activity {
		-webkit-transition: all .5s ease-in-out;
		color: #fff;
		font-size: .8em;
		position: relative;
	}
		.activity.out {
			-webkit-transform: translate(-130%, 0);
		}
		
		.activity .progress {
			height: 10px;
			background: #1b1b1b;
			position: relative;
			margin: 5px 0;
		}
		
		.activity .progress > .status {
			height: 10px;
			background: #3976e1;
			position: absolute;
			left: 0;
		}
		
	
/**
 * Content
 **/
/* #content { */
/* 	margin: 0 0 0 220px; */
/* 	display: block; */
/* 	-webkit-box-sizing: border-box; */
/*     -moz-box-sizing: border-box; */
/*     box-sizing: border-box; */
/*     position: relative; */
/* } */

/**
 * Minimal
 **/
.minimal .toggle-sidebar {
	display: block !important;
}

.minimal #content {
	margin-left: 0;
}
.minimal aside.sidebar {
	display: none;
}
	
.hidden { display: none !important; }
.paddedUnlessBottom {padding: 1rem 1rem .5rem 1rem; }
.padded { padding: 1rem !important; }
.padded10 { padding: .5rem;}
.padded-left { padding-left: 1rem; }
.padded h2:first-child {
    margin-top: 0;
}

span.error,
p.error { 
	background: #e74c3c;
	padding: 10px;
	color: #fff; 
	text-align: center;
}
.remove-margin-top,
p.error.first { margin-top :0 !important; }

/* */
.node circle {
  cursor: pointer;
  fill: #fff;
  stroke: #ccc;
  stroke-width: 2px;
}
.node text { cursor: pointer; }

.node-pratica.node-fill circle { fill: #1f77b4; }
.node-nodo.node-fill circle { fill: #17becf; }
.node-attivita.node-fill circle { fill: #ff7f0e; }

.node text {
  /*font-size: 11px;*/
}

path.link {
  fill: none;
  stroke: #ccc;
  stroke-width: 1.5px;
}
/*
* Solo se la larghezza è minore di 1200px
*/
@media screen and (max-device-width: 1200px) {
	.padded {
		padding: 1% !important;
	}
}

/**
 * ALERT
 **/
.alert-danger, .alert-error {
	color: #fff;
	background: #e74c3c;
	padding: 10px;
	text-align: center;
}

.yaxis .domain { display: none; }

.d3-tip {
  line-height: 1;
  font-weight: bold;
  padding: 12px;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  border-radius: 2px;
}

.d3-tip:after {
  box-sizing: border-box;
  display: inline;
  font-size: 10px;
  width: 100%;
  line-height: 1;
  color: rgba(0, 0, 0, 0.8);
  content: "\25BC";
  position: absolute;
  text-align: center;
}

.d3-tip.n:after {
  margin: -1px 0 0 0;
  top: 100%;
  left: 0;
}

.text-orange { color: orange !important; }

/**
 * Callout
 **/
.callout {
	margin: 20px 0;
	padding: 20px;
	border-left: 3px solid #eee;
	position: relative;
}
	.callout h4 { margin: 0 0 10px 0;}

.callout-icon {
	position: absolute;
	top: 0;
	right: 0;
	padding: 10px;
	color: #fff;
	cursor: pointer;
}	

.callout.danger {
	background-color: #fdf7f7;
	border-color: #d9534f;
}
	.callout.danger h4 { color: #d9534f; }
	
	
.callout.info {
	background-color: #f4f8fa;
	border-color: #5bc0de;
}
	.callout.info h4 { color: #5bc0de; }
	
.callout.warning {
	background-color: #fcf8f2;
	border-color: #f0ad4e;
}
	.callout.warning h4 { color: #f0ad4e; }
	
.callout.success {
	background-color: #e8f7ed;
	border-color: #63cb89;
}
	.callout.success h4 { color: #63cb89; }
	
.margin-top-5 {
	margin-top: 5px;
}
.margin-0-0 {
    margin: 0px !important;
}
.margin-top-10 {
	margin-top: 10px;
}
.margin-bottom-10 {
	margin-bottom: 10px;
}
.margin-bottom-20 {
	margin-bottom: 20px;
}
.margin-20-0 {
	margin-top: 20px;
	margin-bottom: 20px;
}
.margin-checkbox {
	margin: 10px 0 20px 10px;
}

.padding-10 {
	padding: 10px;
}

.cellStyleNames {
	position: relative;
}

.pos-relative {
	position: relative;
}

.cell-popup {
	position: absolute;
	padding: 20px 40px 20px 20px;
	box-shadow: rgba(0,0,0,.2) 0 10px 10px;
	z-index: 9;
	right: 0;
    text-align: left;
    transition: all ease-in-out .25s;
    transform: translate(0,0);
    visibility: visible;
    opacity:1;
}
.cell-popup.close {
	 transform: translate(0,-20px);
	  opacity:0;
	 visibility: hidden;
}
.cell-popup i { 
	float: left; 
	margin-top: 2px;
}
.cell-popup-content {
    padding-left: 30px;
}

.cell-pointer { cursor: pointer; }

/**
 * Label
 **/
.titleLabel {
    padding: 0.2em 0.6em 3em;
    font-size: 0.9vw;
    font-weight: 500;
    line-height: 0;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
}
.label.default,
.cell-popup.default { background-color: #999; }
.label.primary,
.cell-popup.primary { background-color: #428bca; }
.label.success,
.cell-popup.success { background-color: #5cb85c; }
.label.info,
.cell-popup.info { background-color: #5bc0de; }
.label.warning,
.cell-popup.warning { background-color: #f0ad4e; }
.label.danger,
.cell-popup.danger { background-color: #d9534f; }

.label-block .label {
	display: block;
    padding: .4em .6em;
}

/**
 * Link
 **/
a.link {
	color: #3498db;
	text-decoration: underline;
}

.pointer {
	cursor: pointer;
}

/**
 * Bottom Alert
 **/
.bottom-alert {
	display: flex;
	align-items: center;
	
	position: absolute;
	bottom: 40px;
	width: 70%;
	max-width: 700px;
	left: 0;
	right: 0;
	border-width: 1px 1px 3px 1px;
	border-style: solid;
	margin: 0 auto;
	z-index: 9999;
	opacity: 0;
	color: #333;
	box-shadow: rgba(0,0,0,.4) 0 2px 4px;
	
	transition: all .3s ease-in-out;
	-webkit-transform: translate(0, 50px);
	-moz-transform: translate(0, 50px);
	-ms-transform: translate(0, 50px);
	transform: translate(0, 50px);
}
	.bottom-alert.show {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		-moz-transform: translate(0, 0);
		-ms-transform: translate(0, 0);
		transform: translate(0, 0);
	}
	.bottom-alert .status-text {
		padding: 20px 0px;
		flex: 1;
	}
	.bottom-alert .status-icon,
	.bottom-alert .close-icon {
		padding: 12px 10px;
	}
	
	.bottom-alert .close-icon {
		cursor: pointer;
		color: #ccc;
	}
	.bottom-alert .close-icon:hover {
		color: #000;
	}
	
	.bottom-alert.info {
		background: #e9f4ff;
		border-color: #7cb2e7;
	}
	.bottom-alert.info .status-icon { color: #e9f4ff; }
	
	.bottom-alert.success {
		background: #e8f7ed;
		border-color: #63cb89;
	}
	.bottom-alert.success .status-icon { color: #63cb89; }
	
	.bottom-alert.warning {
		background: #ffffcc;
		border-color: #f1c40f;
	}
	.bottom-alert.warning .status-icon { color: #f1c40f; }
	
	.bottom-alert.error {
		background: #ffebff;
		border-color: #e74c3c;
	}
	.bottom-alert.error .status-icon { color: #e74c3c; }
	
	
.reset-top-margin,
.reset-top {
	margin-top: 0 !important;
}

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

.whiteBoldText {
	color: white;
    font-size: 2vw;
    font-weight: bold;
}
.redText {
	color: #de0703;
    font-size: 1.4vw;
}
.ricerca-label { position: relative; }
.ricerca-label:after {
	content: '\f002';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: 18px;
	line-height: 1em;
	position: absolute;
	padding: 0px 7px;
	top: 0;
	left: 0;
	color: #999;
}
	.ricerca-label input {
		border: 0;
		outline: none;
		font-size: 1.3em;
		padding-left: 30px;
	}
	
.vr-list-personale,
.vr-list-personale ul {
	margin-top: 10px;
}
.vr-list-personale label { 
	margin-bottom: 5px;
	display: block; 
}
.vr-list-personale li {
	background: #eee;
	position: relative;
	padding: 5px 20px 5px 5px;
	margin-bottom: 5px;
	user-select: none;
}
	.vr-list-personale li:hover {
		background: #ccc;
	}
	.vr-list-personale li i,
	.vr-list-personale li input { 
		position: absolute;
		top: 6px;
		right: 5px; 
	}
	.vr-list-personale.reverse li {
		background: #2ecc71;
		color: #fff;
		padding: 5px 5px 5px 22px;
	}
	.vr-list-personale li i { cursor: pointer; }
	.vr-list-personale li input { top: 8px; }
	.vr-list-personale.reverse li i,
	.vr-list-personale.reverse li input {
		left: 5px;
		right: auto; 
	}
	.vr-list-personale.scroll li { margin-right: 5px; }
	
	
	.documento-approvato-icon {
		font-size: 20px;
		margin-left: 20px;
		color: green;
	}
	
.relative {
	position: relative;
}

.flex { display: flex; }
.flex-align-justify {
	justify-content: space-between;
	align-items: center;
}
.flex-align-center {
	justify-content: center;
	align-items: center;
}
.flex-item-border-bottom {
	border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
    padding-bottom: 10px;
}
.flex-toolbar {
	display: flex;
	padding: 5px;
	background: #f7f7f7;
	margin-bottom: 10px;
}
	.flex-auto { flex: auto; }
	.flex-item { flex: 1 1; }
	input.flex-item { outline: none; }
	
	.flex-g-2 { flex-grow: 2; }

.text-center { text-align: center; }
.text-right { text-align: right; }

span.evidenzia {
	background: #f5f5f5;
	padding: 1px 3px;
}

.info-panel {
	background: #3498db;
	color: #fff;
	padding: 10px;
}

.info-utente {
	padding: 20px;
	background: #f7f7f7;
}

.traduzioni-table > div {
	margin-bottom: 10px;
}

.li-upload-multiplo a {
	padding: 5px 15px;
    display: inline-block;
}

.col-infoLabelWidget { font-weight: bold; }

.cliente-card {
	background: #009688;
    width: 150px;
    height: 100px;
    float: left;
    margin: 5px;
    overflow: hidden;
    padding: 10px;
    color: white;
    cursor: pointer;
    position: relative;
    border-radius:5px;
	box-shadow: 3px 2px 7px -2px #7b776d;
}
	.cliente-card:after {
	    content: "\f2c2";
	    font-family: "Font Awesome 5 Free";
	    position: absolute;
	    right: 12px;
	    bottom: 6px;
	    font-size: 3em;
	    line-height: 1em;
	    color: rgba(0, 0, 0, 0.2);
    }
	
.dashboardManut-card {
    background: #4093B1;
    width: 30%;
    height: 11em;
    margin: 5px;
    overflow: hidden;
    padding: 1em;
    position: relative;
    border-radius: 5px;
}
	.dashboardManut-card:hover {
		color: #fff; 
	}
	.dashboardManut-card:after {
	    font-family: "Font Awesome 5 Free";
	    position: absolute;
	    right: 12px;
	    bottom: 6px;
	    font-size: 3em;
	    line-height: 1em;
	    color: rgba(0, 0, 0, 0.2);
    }
	
	
.search-toolbar {
	background: #eee;
	padding: 5px;
	display: flex;
}

.ipertech-hr {
	border-top: 1px solid #ccc;
}

.iframe-stampa-pass, .iframe-stampa-pass iframe  {
	width: 100%;
	height: 100%;
}
.iframe-stampa-pass iframe {
	border: none;
}

.modal-popup-print-button {
	position: absolute;
	right: 0;
	top: 0;
}

.full-width {
	width:100%;
}

.full-height {
	height: 100%;
}

.pad-li-icon {
	margin-left: 10px;
    cursor: pointer;
}

.col-din-note {
    display: inline-block;
    padding: 5px 10px;
/*     background: #009688c2; */
    border-radius: 4px;
    margin-top: 1px;
    margin-bottom: 10px;
    font-style: italic;
/*     box-shadow: 2px 2px 3px 0px #607D8B; */
    margin-bottom: 10px;
    color: #4caf50;
}

.ipertech-sf-box {
	cursor: pointer;
    display: block;
    padding: 20px;
    margin: 5px 0;
    background: #fff;
}
	.ipertech-sf-box i {
		color: #ccc;
		font-size: 3em;
		display: block;
		padding-bottom: 20px;
	}
	.ipertech-sf-box:hover,
	.ipertech-sf-box:hover i { color: #000; }
	
	.ipertech-sf-box.selected {
		color: #fff;
	}
		.ipertech-sf-box.selected i { color: #fff; }
		
		
.code {
	margin: 0 2px;
	padding: 0 5px;
	white-space: nowrap;
	border: 1px solid #eaeaea;
	background-color: #f8f8f8;
	border-radius: 3px;
}

.p-10-30 {
	padding: 10px 30px;
}

.step-container {
	background: #f7f7f7;
	border-left: 1px solid #ccc;
	flex: auto;
	flex-grow: 4;
	overflow-y: auto;
}
	.step-container h2,
	.step-container h1 {
		font-weight: 300;
	}

.step-list {
	padding: 0;
	margin: 1.2em 0;
	list-style: none;
	position: relative;
}
.step-list:before {
	left: 16px;
    bottom: 20px;
    width: 1px;
    background: #ccc;
    top: 20px;
    content: ' ';
    position: absolute;
}

.step-list li {
	counter-increment: step-counter;
	line-height: 3.5em;
	color: #999;
}

.step-list li:before{
	content: counter(step-counter);
    border: 2px solid #ccc;
    border-radius: 50%;
    padding: 5px 10px;
    margin-right: 10px;
    position: relative;
    background: #fff;
}

.step-list li.action { current: pointer; }
.step-list li.done,
.step-list li.current {
	color: #000;
}
	.step-list li.done:before,
	.step-list li.current:before {
		border-color: #333;
		font-weight: 600;
	}

.li-fiera {
	display: inline-block;
	margin: 10px;
	padding: 10px;
	padding-top: 20px;
	border: 1px solid #ccc;
	background: #fff;
	width: 185px;
	min-height: 170px;
	text-align: center;
	position: relative;
}
	.li-fiera i {
		font-size: 4em;
		color: #ccc;
		margin: 10px 0 20px;
	}
	.li-fiera p { margin: 0; }
	.li-fiera button { 
		width: 80%; 
		position: absolute;
		left: 10%;
		bottom: 10px;
	}

.li-checkbox {
	line-height: 1.2em;
}
	.li-checkbox > * { cursor: pointer; }
	
.margin-top-40 {
	margin-top: 40px;
}

.box-des-pratica {
	padding: 10px;
	background: #f3f3f3;
	margin-top: 0; 
	border-radius: 10px;
}

.title-uppercase {
	font-size: 1em;
    text-transform: uppercase;
    margin-top: 0;
}

.role-list-item {
	padding: 10px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
}
.selected {
	background: #eee;
}

.drag-wrapper {
	position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,.5);
    z-index: 99;
    box-sizing: border-box;
    padding: 40px;
    opacity: 0;
    display: none;
    transition: all .2s;
}
.drag-wrapper.visible {
	display: block;
}
.drag-wrapper.show {
	opacity: 1;
}
.drag-text {
	display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    text-align: center;
    color: #fff;
    font-size: 3em;
    border: 5px dashed rgba(255,255,255,.5);
}

.sendErrorAlert {
	text-decoration: underline;
    float: right;
    font-weight: bold;
    font-variant-caps: petite-caps;
    font-size: 1.2em;
}

/*
* sidebar style
*/
*::-webkit-scrollbar-track {
    background-color: #fff;
}

*::-webkit-scrollbar {
    background-color: #fff;
    height: 6px;
    width: 12px;
}

*::-webkit-scrollbar-thumb {
    background-color: #babac0;
    border-radius: 5px
}

*::-webkit-scrollbar-track {
    background-color: #fff;
}


/*
* PopupPanel style
*/

.paddingTableMan {
	padding: 0 15px
}

/*
ViewActionsButton style
*/
.viewActionsButton {
	position: fixed;
	right: 26px;
	bottom: 50px;
	padding: 0;
	margin: 0;
	border: 0;
    z-index: 994;
}

/*
Material Footer
*/
.footerRow {
    left: 0;
    right: 0;
    padding-top: 5px !important;
    position: fixed;
    bottom: 0px;
    transform: translate3d(0px, 0px, 0px);
    z-index: 994;
} 

.categoriaItem{
	border: 1px solid white;
    height: 45px; 
    font-size: 14px; 
    text-align:center;
    
    display: flex !important;
    flex-direction: column !important;
    justify-content: center;
}

.prodottoItem{
	height: 55px;
    font-size: 13px;
    border-radius: 5px;
    border: 1px solid white;
    margin-left: 0px; 
    text-align:center;
    
    display: flex !important;
    flex-direction: column !important;
    justify-content: center;
}

select {
	display: unset !important;
	width: auto;
}
select.gwt-ListBox.initialized {
	display: none !important;
}

/* MENU SIDEBAR */

.side-nav a:hover {
    border-left: 1px solid #FF5722;
    border-left-style: dashed;
}

.side-nav .collapsible-header.active > a,
.side-nav .collapsible-header:hover {
    border-left: 2px solid #FF5722;
    background-color: #37474f !important;
}

.side-nav .collapsible-body > ul > li.active > a {
    border-left: 1px solid red;
    border-left-style: dashed;
}

.animationForPanel {
   transition: 0.4s all !important;
   -webkit-transition: 0.4s all !important;
   -moz-transition: 0.4s all !important;
}

.headerTitle {
	font-size: 2vw !important;
}
#splashscreen {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: fixed;
	background: #ffffff !important;
	-webkit-flex-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	color: #fff;
	font-family: Roboto, sans-serif;
	z-index: 9999;
	display: flex;
}

#splashscreen div {
	display: block;
	text-align: center;
	width: 100%
}

#splashscreen img {
	width: 250px;
}

#splashscreen .progress {
	margin: 0;
	position: absolute;
	bottom: 2px;
	height: 8px
}

#splashscreen span.title {
	font-size: 1.5em;
	font-weight: 200;
	color: grey;
	display: block
}

.pac-container {
	z-index: 5000;
}

.overlayInfo {
 	font-size: 0.8em;
    bottom: 0px;
    width: 100%;
    display: table-cell;
    color: #fff;
    position: absolute;
}
.character-counter {
	line-height: 0px !important;
	margin-top: -6px !important;
}

/*MEDIA mobile*/
@media only screen and (max-width: 480px) {
	footer .row div {
		padding: 0px 3px !important;
	}
}

/* HEADER */
@media only screen and ( max-width : 820px) and ( min-width: 421px ) {
	.headerTitle {
		font-size: 3vw !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
}

@media only screen and (max-width: 480px) {
	.headerTitle {
		font-size: 4vw !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
}

.infoTextBox {
	height: 25px;
	min-height: 25px !important;
}

.infoTextBox input {
	width: 55% !important;
	background: rgba(0, 0, 0, 0.02) !important;
	border-radius: 4px 4px 0 0 !important;
	min-height: 20px;
	height: 20px !important;
	text-align: right;
}

.infoTextBox label {
	width: 45% !important;
	top: 0 !important;
	display: block !important;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}