
:root {
	--color_main: #333D85;
	--color_light: rgba(152,164,211,0.20); 
	--color_light2: #98A4D3; 
	--color_header_top: #E5E5E5;
	--color_red: #FF0000;
	--color_white: #FFFFFF;
	--color_header_menu: #FFFFFF;
	--color_header_menu_btn: #e3e3e8;
	--color_header_menu_btnfont: #333D85;
	--color_header_menu_btnhbg: #333D85;
	--color_header_menu_btnh: #FFFFFF;
	--color_form: hsla(228,40%,71%,0.20);
	--color_bg: #ededed;
	
	--color_btnbg_filtri: #FF7900;
	--color_btn_filtri: #FFFFFF;
	--color_btnhbg_filtri: #E45600;
	--color_btnh_filtri: #FFFFFF;
	--color_btnbg_print: #22B573;
	--color_btn_print: #FFFFFF;
	--color_btnhbg_print: #0B6F42;
	--color_btnh_print: #FFFFFF;
	--color_btnbg_action: #FF0000;
	--color_btn_action: #FFFFFF;
	--color_btnhbg_action: #A70000;
	--color_btnh_action: #FFFFFF;
	--color_btnbg_ext: rgba(152,164,211,0.20);;
	--color_btn_ext: #333D85;
	--color_btnhbg_ext: #333D85;
	--color_btnh_ext: #FFFFFF;
}

body {
	margin: 0px;
	padding: 0px;
	background-color: var(--color_bg);
}

.container {
	display: grid;
	width: 100%;
	font-family: 'Lato', sans-serif;
	color: var(--color_main);
	background-color: var(--color_bg);
}
a {
	color: var(--color_main);
	text-decoration: none;
}
.container.main {
	margin: 82px 0 100px 0; /*sopra l'altezza dell'header e sotto quella del footer*/
	/*border-top: 2px solid var(--color_main);*/
}
.content {
	display: table;
	width: 95%;
	max-width: 1240px;
	margin: 0 auto;
}
.content.actionbar {
	position: relative;
}
.content.main {
	padding: 45px 0 0 0;
}

.ajax-content {
	margin: 100px 0 0 0;
}

.btn {
	display: inline-block;
	height: 45px;
	line-height: 45px;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 12px;
	text-decoration: none;
	padding: 0 10px;
}
/* x lightbox */
.featherlight-content {
	width: calc(100% - 200px)!important;
	margin: 0 auto!important;
}
.box_container {
	visibility: hidden;
	z-index: 200;
	position: fixed;
	display: inline-table;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.80);
	overflow: auto;
}
.box_container.visible {
	visibility: visible;
}
.box_container.login {
	visibility: visible;
	background-color: rgba(0,0,0,0.90);
}
.media-boxes-load-more-button.media-boxes-no-more-entries {
	display: none;
}


#ajaxloader {
	z-index:300;
	position:fixed; 
	top:0px; 
	width:100%; 
	height:100%; 
	background-color:rgba(0,0,0,0.81);  
	display:none
}
#ajaxloaderimg {
	position:absolute; 
	top:calc(50% - 20px); 
	left:calc(50% - 20px); 
	width:40px; 
	height:40px
}
div.loader_items {
	position:absolute; 
	top:0; 
	left:0; 
	width:100%; 
	height:40px; 
	background-color:#FFFFFF;
	background-image: url(images/preloader_01.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 26px;
}
div.loader_items2 {
	width:100%; 
	height:40px; 
	background-color:#FFFFFF;
	background-image: url(images/preloader_01.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 26px;
}
.hide {
	display: none;
}
.table_footer {
	display: table-footer-group;
}

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
	width: auto!important;
}

/* ############################## BOX ################################# */

.box_title {
	font-family: 'Lato', sans-serif;
	text-transform: uppercase;
    font-size: 20px;
    font-weight: 700;
    padding: 0 5px 0 0;
}
.box_progetto {
	display: block;
	font-family: 'Lato', sans-serif;
	text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    padding: 6px 0;
}

/* ############################## LOGIN ################################# */

.container.login {
	z-index: 100;
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
	background-color: #353ca8;
	background-image: url("images/sfondo_login_01.png");
	background-repeat: repeat-x;
}
#login_sfondoimg {
	z-index: 101;
	position: fixed;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	/*background-image: url("images/sandbox_login_bg_02.png");*/
	background-image: url("images/sfondo_login_02.png");
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: contain;
}
.login.log {
	z-index: 102;
	position: absolute;
	width: 500px;
	display: flex;
	flex-direction: column;
    top: calc(50% - 290px); /*alto 420*/
    left: calc(50% - 250px);
}
.login.reg {
	z-index: 102;
	position: absolute;
	width: 500px;
    top: calc(50% - 310px);
    left: calc(50% - 250px);
}
#login_logo {
	width: 148px;
	height: 90px;
	background-image: url("images/LOGO_Login.png");
	background-repeat: no-repeat;
	margin: 10px auto;
}
p.login_sottologo {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 20px;
	text-align: center;
	color: #FFFFFF;
	margin: 30px auto;
}
.InputfieldForm h2 { display: none; }
p.login_form_label {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 16px;
	text-align: center;
	color: rgba(255,255,255,0.5);
	margin: 10px auto;
}
.login_form_input {
	display: flex;
	flex-direction: column;
}
.login_form_input input {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 16px;
	width: 300px;
	height: 40px;
	border: none;
	margin: 0 auto 2px auto;
	background-color: #ECECEC;
	padding: 0 15px;
	color: #565656;
}
.login_form_btn_container {
	display: flex;
    flex-direction: column;
    width: 330px;
    margin: 20px auto;
    align-items: end;
}
.login_form_input button {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 15px;
	width: 330px;
	height: 45px;
	border: none;
	margin: 30px auto 6px;
	background-color: #182a71;
	color: #FFFFFF;
	padding: 0 15px;
	cursor: pointer;
	text-transform: uppercase;
}
.login_form_link {
	max-width: 376px !important;
	display: flex;
	justify-content: flex-end;
	margin: 0 0 20px 0;
}
.login_form_link li {
	display: inline-block;
}
.login_form_link li a {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 12px;
	color: white !important;
}
.login_form_btn {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 15px;
	width: 330px;
	height: 45px;
	border: none;
	margin: 0 0 6px 0;
	background-color: #182a71;
	color: #FFFFFF;
	padding: 0 15px;
	cursor: pointer;
}
.login_form_btn:hover,
.login_form_btn.registrati:hover {
	background-color: #0E1946;
}
.login_form_btn.registrati {
	font-weight: 700;
	font-size: 15px;
	width: 330px;
	box-sizing: border-box;
	height: 45px;
	line-height: 45px;
	margin: 0px auto;
	border: none;
	/* background-color: #5c77e6; */
	background-color: #182a71;
	color: #FFFFFF;
	cursor: pointer;
	text-align: center;
}
.login_form_description {
	margin: 0 0 10px 0;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 13px;
	font-style: italic;
	color: rgba(255,255,255,0.5);
	text-align: center;
}
.ProcessForgotPassword {
	color: rgba(255,255,255,0.5);
}

/* ############################## ALERT ################################# */

.alert-msg {
	z-index: 200;
	position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100px;
	line-height: 100px;
    text-align: center;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 18px;
}
.errormsg {
    background-color: #FF0000;
    color: #FFFFFF;
}
.okmsg {
    background-color: #6be08e;
    color: rgb(41, 143, 71);
}



/* ############################## DATATABLE ################################# */

.dt_head {
	background-color: #343b83;
	color: var(--color_white);
	font-size: 14px;
	font-weight: 700;
	text-align: left;
}
.dt_head th {
	padding: 16px 10px!important;
}
.dt_tr {
	font-size: 12px;
	font-weight: 400;
}
.dt_tr:hover {
	background-color: var(--color_light2)!important;
	color: var(--color_white);
}
.dt_tr.even {
	background-color: #dcdfe8;
}


/* ############################## HEADER ################################# */

.container.header {
	z-index: 100;
	position: fixed;
	top: 0px;
	left: 0px;
}
#header_top {
	width: 100%;
	height: 30px;
	line-height: 30px;
	/*background-color: var(--color_header_top);*/
	background-color: #FF0000;
	font-weight: 700;
	font-size: 12px;
}
#header_menu_logo_container {
	float: left;
}
#header_menu_logo {
	position: absolute;
	top: 0;
	left: 0;
	/*float: left;*/
	width: 214px;
	height: 50px;
	margin: 25px 0 0 0;
	/*background-image: url("images/logo_tpeye_sandbox_02@2x.png");*/
	background-image: url(images/logo_tpeye.png);
	background-size: contain;
	background-repeat: no-repeat;
}
#header_menu_logo_title_container {
	float: left;
	margin: 15px 0 0 0;
}
#header_menu_logo_title {
	font-size: 11px;
	font-weight: 700;
	padding: 0 0 0 10px;
}
#header_menu_logo_ver {
	font-size: 7px;
	font-weight: 400;
	padding: 0 0 0 10px;
	color: #7E7E7D;
}
#header_top_right {
	float: right;
}
.header_top_right_inside {
	float: left;
	border-right: 1px solid var(--color_main);
}
#header_top_btn_user_hover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background-color: var(--color_red);
	color: var(--color_white);
	text-align: center;
	text-decoration: none;
}
.header_top_right_inside.icon {
	height: 30px;
	color: #828282;
}
.header_top_right_inside.icon:hover {
	color: var(--color_main);
}
#header_menu {
	position: relative;
	width: 100%;
	height: 100px;
	background-color: #FFFFFF;
	/*background-image: url("images/sandbox_header_bg_02.png");*/
	/*background-color: var(--color_header_menu);*/
	/*border-top: 1px solid var(--color_main);*/
	/*border-bottom: 1px solid var(--color_main);*/
}
#header_menu_dx {
	/*float: right;*/
	display: table;
	margin: 25px auto;
	line-height: 50px;
}
.header_menu_btn {
	font-weight: 400;
	font-size: 14px;
	padding: 10px 20px;
	margin: 0 10px;
	text-decoration: none;
	color: var(--color_header_menu_btnfont);
	border-bottom: 5px solid var(--color_header_menu_btn);
}
.header_menu_btn:hover,
.header_menu_btn.focus {
	border-bottom: 5px solid var(--color_header_menu_btnhbg);
	color: var(--color_header_menu_btnhbg);
	font-weight: 700;
}

#header_menu_user {
	position: absolute;
	top: 35px;
	right: 0px;
}
#header_menu_user,
#header_menu_user a {
	color: var(--color_header_menu_btnhbg);
}

/* ############################## PULSANTI ################################# */

.btn.filtri {
	/*background-color: var(--color_btnbg_filtri);*/
	color: var(--color_btn_filtri);
	margin: 0px;
}
.btn.filtri:hover,
.btn.filtri:hover svg {
	background-color: var(--color_bg);
	color: var(--color_main)!important;
}
.btn.print {
	/*background-color: var(--color_btnbg_print);*/
	color: var(--color_btn_print);
	margin: 0px;
}
.btn.print:hover,
.btn.print:hover svg {
	background-color: var(--color_bg);
	color: var(--color_main)!important;
}
.feel-wrap.btn {
	padding: 0px;
}
.btn.action a {
	display: inline-block;
	color: var(--color_btn_print)!important;
	margin: 0px;
	padding: 0 10px;
}
.btn.action a:hover,
.btn.action a:hover svg {
	background-color: var(--color_bg);
	color: var(--color_main)!important;
}
[data-feel] {
	color: var(--color_btn_print)!important;
	opacity: 1!important;
}
[data-feel]:hover {
	background-color: var(--color_bg);
	color: var(--color_main)!important;
}
.borderdx {
	border-right:1px solid #8C93E3;
}
.bordersx {
	border-left:1px solid #8C93E3;
}
.btn.ext {
	display: inline;
	background-color: #B6BBED;
	color: var(--color_main);
	font-size: 26px;
	margin: 0 6px 0 0;
	padding: 4px 8px;
}
.btn.ext:hover,
.btn.ext:hover svg {
	background-color: var(--color_main);
	color: #FFFFFF!important;
}
.btn.altro {
	color: var(--color_btn_print);
	margin: 0px;
}
.btn.altro:hover,
.btn.altro:hover svg {
	background-color: var(--color_bg);
	color: var(--color_main)!important;
}
.btn.delete {
	color: var(--color_btn_print);
	margin: 0px;
}
.btn.delete:hover,
.btn.delete:hover svg {
	background-color: #FF0000;
	color: #FFFFFF!important;
}
.btn.avanzata {
	display: inline;
	background-color: #343B83;
	color: #FFFFFF;
	padding: 6px 10px;
	margin: 10px 0 0 0;
	border: 1px solid #343B83;
}
.btn.avanzata:hover {
	background-color: var(--color_bg);
	color: #343B83;
}

.btn.periodo_filtri {
	border: none;
	margin: 10px auto;
	height: 30px!important;
	line-height: 30px!important;
	background-color: var(--color_btnbg_print);
	color: var(--color_white)!important;
	cursor: pointer;
}
.btn.periodo_filtri:hover {
	background-color: var(--color_btnhbg_print);
}


/* ############################## FILTRI ################################# */

.actionbar_container,
.filtri_container {
	position: fixed;
	top: 100px;
	left: 0px;
	width: 100%;
	height: 45px;
	padding: 0px;
	background-color: #343B83;
	z-index: 100;
}
.filtri_container_sx {
	position: absolute;
	left: 0px;
	top: 0px;
}
.filtri_container_centro {
	width: 30%;
	max-width: 500px;
	margin: 5px auto;
}
.filtri_container_dx {
	position: absolute;
	right: 0px;
	top: 0px;
}
.filtri_cerca {

	width: 100%;
	height: 35px;
	line-height: 35px;
	background-color: var(--color_bg);
	color: #5d5d5d;
	font-size: 14px;
	font-weight: 700;
	text-indent: 15px;
	/*padding: 0 15px;*/
	border: none;
	padding: 0px;
}
.filtri_app_container {
	display: inline-table;
	position: relative;
	width: 100%;
	height: calc(32px - 6px);
	padding: 50px 0 0 0;
	/*border-bottom: 1px solid var(--color_main);*/
	font-size: 11px;
	font-weight: 700;
}
.filtri_app_btn {
	display: inline-block;
	height: 20px;
	line-height: 20px;
	padding: 0 6px;
	margin: 0 0 6px 6px;
	text-transform: uppercase;
	background-color: var(--color_light);
}
.venoframe, 
.vbox-inline {
	height: 100%!important;
}
.vbox-content {
	margin: 40px 0 0 0!important;
}
.box_content,
.box_content.fornitori {
	position: relative;
	z-index: 201;
	width: calc(100% - 100px);
	max-width: 1198px;
	min-height: 200px;
	margin: 50px auto;
	background-color: var(--color_white);
	/*border: 6px solid var(--color_btnbg_filtri);*/
	padding: 15px;
	font-family: 'Lato', sans-serif;
	font-size: 11px;
	font-weight: 700;
}
.box_filtri_titolo {
	font-family: 'Lato', sans-serif;
	font-size: 14px;
	font-weight: 900;
	font-style: italic;
	color: var(--color_main);
	padding: 0 0 5px 0;
}
/*X CHEKBOX*/
.chekbox_container {
  	display: block;
  	position: relative;
  	padding: 0 10px 0 26px;
  	margin-top: 6px;
  	cursor: pointer;
	text-transform: none;
	letter-spacing: normal;
	font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: 12px;
	line-height: 22px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.chekbox_container input { /* Hide the browser's default checkbox */
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.chekbox_checkmark { /* Create a custom checkbox */
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: var(--color_white);
  border: 1px solid var(--color_main);
}
.chekbox_container:hover input ~ .chekbox_checkmark { /* On mouse-over, add a grey background color */
  background-color: var(--color_main);
}
.chekbox_container input:checked ~ .chekbox_checkmark { /* When the checkbox is checked, add a color background */
  background-color: var(--color_main);
}
.chekbox_checkmark:after { /* Create the checkmark/indicator (hidden when not checked) */
  content: "";
  position: absolute;
  display: none;
}
.chekbox_container input:checked ~ .chekbox_checkmark:after { /* Show the checkmark when checked */
  display: block;
}
.chekbox_container .chekbox_checkmark:after { /* Style the checkmark/indicator */
  left: 6px;
  top: 1px;
  width: 6px;
  height: 12px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.box_filtri_tag_titolo {
	background-color: #98A4D3;
	padding: 6px 10px;
	color: var(--color_white);
	font-size: 12px;
	font-weight: 400;
	border-radius: none;
}
.box_filtri_tag_children {
	background-color: rgba(152,164,211,0.20);
	padding: 5px 10px 10px;
}
.btn.box_filtri {
	border: none;
	margin: 0px auto;
	background-color: var(--color_btnbg_print);
	color: var(--color_white)!important;
	cursor: pointer;
}
a.btn.box_filtri {
	color: var(--color_white)!important;
}
.btn.box_filtri:hover {
	background-color: var(--color_btnhbg_print);
}


/* ############################## ACTION ################################# */

.box_content.action {
	z-index: 201;
	width: calc(100% -42px);
	max-width: 1198px;
	min-height: 200px;
	margin: 130px auto 0;
	background-color: var(--color_white);
	border: 6px solid var(--color_btnbg_action);
	padding: 15px;
}

.msg_ok {
	padding: 15px;
	background-color: rgba(53,174,107,1.00);
	font-size: 14px;
	font-weight: 700;
	color: #FFFFFF;
	text-align: center;
	margin: 15px 0 0 0;
}

/* ############################## HOME ################################# */

.home_sx {
	float: left;
	width: calc(100% - 320px);
	padding: 0px;
	margin: 20px 0;
}

.home_dx {
	float: left;
	width: 300px;
	padding: 0px;
	margin: 20px 0 0 20px;
}

.gn_td {
	font-size: 16px;
	font-weight: 400;
	padding: 0 20px 0 0;
}
.gn_tdh {
	font-size: 20px;
	font-weight: 700;
}

/* ############################## ITEM PERIODO ################################# */

.item_periodo {
	width: 100%;
	padding: 8px 0;
	margin: 0 0 15px 0;
	text-align: center;
	border-top: 1px solid var(--color_main);
	border-bottom: 1px solid var(--color_main);
	background-color: #FFFFFF;
	font-family: 'Lato', sans-serif;
    font-size: 12px;
}
.item_periodo.home {
	margin: 15px 0 0 0;
}
.item_periodo_a {
	padding: 0 6px;
	font-weight: 400;
}
.item_periodo_a:hover,
.item_periodo_a.active {
	font-weight: 700;
	border-bottom: 2px solid var(--color_main);
}
.item_periodo_item {
	line-height: 26px;
}
.item_periodo_item span {
	text-transform: uppercase;
}

/* ############################## FORNITORI ################################# */


.media-box-image {
	background-color: #FFFFFF;
	/*border: 2px solid var(--color_main);*/
}
.media-box-content {
	padding: 0 10px!important;
	color: var(--color_main);
}
.media-box-content.gruppo {
	background-color: var(--color_main);
	color: #FFFFFF;
}
.media-box-content.infobyform {
	border-left: 1px solid rgb(253, 204, 98);
	border-right: 1px solid rgb(253, 204, 98);
	background-color: rgb(255, 241, 211);
}
.grid_fornitori_titolo {
	font-size: 14px;
	font-weight: 700;
	padding: 6px 0 0 0;
	
}
.grid_fornitori_cat {
	font-size: 12px;
	font-weight: 400;
	font-style: italic;
	padding: 0 0 10px 0;
	
}

.mostra_datatable {
	float: left;
	width:18px; 
	height:18px;
	background-image: url(images/icon_datatable@2x.png);
	background-size: contain;
	background-repeat: no-repeat;
	margin: 0 10px 0 0;
}
.mostra_datatable:hover,
.mostra_datatable.selected {
	background-image: url(images/icon_datatable_hover@2x.png);
}
.mostra_boxes {
	float: left;
	width:18px; 
	height:18px;
	background-image: url(images/icon_mediaboxes@2x.png);
	background-size: contain;
	background-repeat: no-repeat;
}
.mostra_boxes:hover,
.mostra_boxes.selected {
	background-image: url(images/icon_mediaboxes_hover@2x.png);
}

.items_unpub {
	background-color: #FF0000;
	color: #FFFFFF;
	padding: 8px;
	font-size: 10px;
}
.items_unpub_datatable,
.items_datatable_incorso,
.items_datatable_nofinal {
	display: inline;
	color: #FFFFFF;
	padding: 3px 6px;
	font-size: 8px;
	border-radius: 10px;
}
.items_unpub_datatable {
	background-color: #FF0000;
	margin: 0 0 0 10px;
}
.items_datatable_incorso {
	background-color: #FF8000;
}
.items_datatable_nofinal {
	background-color: #A615C8;
}

/* ############################## FORNITORE ################################# */

.progetto_cliente {
	font-size: 40px;
	font-weight: 700;
	text-transform: uppercase;
}
.progetto_cliente_gruppo {
	float: left;
	padding: 6px 15px;
	background-color: var(--color_main);
	color: #FFFFFF;
	margin: 35px 15px 0 0;
}
.content_columns {
	display: flex;
}
.fornitore_sx {
	/* float: left; */
	min-width: 200px;
	background-color: #FFFFFF;
	padding: 0 0 15px 15px;
	margin: 0 15px 0 0;
}
/* .fornitore_centro {
	float: left; 
	width: calc(100% - 462px);
} */
.fornitore_dx {
	/* float: left; */
	min-width: 200px;
	border-left: 1px solid var(--color_main);
	padding: 0 0 0 15px;
	margin: 0 0 0 15px;
	min-height: 100%;
}
.fornitore_logo {
	width: calc(100% - 15px);
	margin: 15px 0 0 0;
}
.fornitore_sx h3 {
	font-size: 16px;
	font-weight: 700;
	background-color: #FFFFFF;
	padding: 6px 0 6px 15px;
	margin: 10px 15px 0px -15px;
	color: #98A4D3;
}
.fornitore_sx_itemparent {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 6px 0;
	color: var(--color_main);
}
.fornitore_sx_item {
	display: table;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	background-color: var(--color_main);
	border: 1px solid var(--color_main);
	padding: 3px 5px;
	margin: 0 0 2px 0;
	color: #FFF;
}
.fornitore_sx_item:hover {
	background-color: #FFF;
	border: 1px solid #98A4D3;
	color: var(--color_main);
}
.fornitore_dx_item {
	border-bottom: 1px solid var(--color_main);
	padding: 0 0 15px 0;
	margin: 0 0 15px 0;
}
.fornitore_dx_item h3 {
	margin: 0 0 15px 0;
}
.progetto_cat_dx {
	display: inline-block;
	background-color: var(--color_main);
	border-radius: 4px;
	padding: 3px 0 3px 6px;
	color: var(--color_light2);
	font-size: 11px;
	margin: 0 0 3px 0;
}
.progetto_cat_dx_num {
	background-color: var(--color_light2);
	border-radius: 4px;
	padding: 3px 6px;
	color: var(--color_main);
	margin: 0 0 0 6px;
}
.progetto_cat_dx:hover {
	background-color: var(--color_light2);
	color: var(--color_main);
}

.link:hover {
	color: rgba(255,92,0,1.00);
}

/* ############################## FORNITORE - FORM CONTRACTOR ################################# */

.cform_submit_container {
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	margin: 10px 0;
}
.cform_submit_container.sotto {
	justify-content: center;
}
.cform_submit {
	border: 0px;
	background-color: var(--color_main);
	color: white;
	padding: 10px 20px;
	font-family: 'Lato', sans-serif;
    font-weight: 700;
    font-size: 16px;
	cursor: pointer;
}
.cform_submit:hover {
	background-color: rgba(152,164,211,0.50);
	color: var(--color_main);
}
.cform_legend {
	font-style: italic !important;
	font-size: 13px !important;
}
.cform_titolo {
	font-family: 'Lato', sans-serif;
    font-size: 14px;
    font-weight: 900;
    font-style: italic;
    color: var(--color_main);
    padding: 0 0 5px 0;
    margin: 40px 0 15px 0;
}
.cform_input_container {
	display: flex;
	margin: 0 0 6px 0;
}
.cform_input_name {
	min-width: 150px;
	padding: 0 15px 0 0;
	font-weight: 700;
	font-size: 14px;
	line-height: 30px;
	color: var(--color_main);
	text-align: right;
	white-space: nowrap;
}
.cform_input_div {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.cform_input {
    width: 100%;
	color: var(--color_main);
    border: none;
    padding: 3px 6px;
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
	box-sizing: border-box;
}
.cform_input:focus,
.cform_input.changed {
	outline: none;
	border-left: 1px solid var(--color_main) !important;
	background-color: rgb(212, 231, 248) !important;
}
.cform_input {
	border-left: 1px solid var(--color_main);
	background-color: aliceblue;
}
.cform_input.req.unfilled {
	border-left: 1px solid rgb(253, 204, 98);
	background-color: rgb(255, 241, 211);
}
label.error {
	display: inline-block;
	background-color: red;
    padding: 6px 16px 6px 10px;
    color: white;
    font-size: 11px;
    border-radius: 0 15px 15px 0;
    margin: 3px 0 0 0;
    text-transform: uppercase;
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: rgb(182, 179, 179) !important;
	font-style: italic !important;
	font-size: 13px !important;
}
::-moz-placeholder { /* Firefox 19+ */
	color: rgb(182, 179, 179) !important;
	font-style: italic !important;
	font-size: 13px !important;
}
:-ms-input-placeholder{ /* IE 10+ */
	color: rgb(182, 179, 179) !important;
	font-style: italic !important;
	font-size: 13px !important;
}
:-moz-placeholder { /* Firefox 18- */
	color: rgb(182, 179, 179) !important;
	font-style: italic !important;
	font-size: 13px !important;
}
.cform_select_label {
	font-style: italic !important;
	font-size: 13px !important;
}
.select2-container {
	margin: 6px 0 0 0 !important;
}
.select2-container--default .select2-selection--multiple {
	border-radius: 0px !important;
	border-color: var(--color_main) !important;
}
.select2-container--default .select2-results__option--selectable {
	font-family: 'Lato', sans-serif !important;
	color: var(--color_main) !important;
}
.select2-container--default .select2-results__option--highlighted {
	background-color: var(--color_main) !important;
	color: white !important;
}

/* ############################## FORNITORE ITEM - CONTATTI ################################# */

.contatti_label_container {
	clear: both;
	display: table;
}
.contatti_label {
	float: left;
	width: 109px;
	padding: 0 15px 0 0;
	font-weight: 700;
	font-size: 12px;
	line-height: 30px;
	color: var(--color_main);
	text-align: right;
	border-right: 1px solid var(--color_main);
}
.contatti_label_dx {
	float: left;
	padding: 0 0 0 15px;
	font-weight: 400;
	font-size: 12px;
	line-height: 30px;
	color: var(--color_main);
}


/* ############################## RICERCA AVANZATA ################################# */

.content_sx {
	float: left;
	background-color: var(--color_bg);
}
.content_dx {
	float: left;
	background-color: var(--color_bg);
}
.content_sx.avanzata {
	width: 300px;
	padding: 15px 15px 0 0;
}
.content_dx.avanzata {
	width: calc(100% - 315px);
	padding: 0px;
}
.avanzata_titolo {
	width: 300px;
	height: 75px;
	line-height: 75px;
	background-color: var(--color_light2);
	color: var(--color_white);
	font-size: 21px;
	font-weight: 700;
	text-align: center;
}
.avanzata_filtri_sx {
	float: left;
	width: 119px;
	border-right: 1px solid var(--color_main);
	margin: 0 0 15px 0;
	padding: 15px;
}
.avanzata_filtri_dx {
	float: left;
	padding: 15px;
}
.avanzata_filtri {
	display: table;
	height: 20px;
	line-height: 20px;
	padding: 0 6px;
	margin: 6px 0;
	text-transform: uppercase;
	background-color: var(--color_light);
	font-size: 11px;
	font-weight: 700;
}
.avanzata_filtri:hover {
	background-color: var(--color_red);
	color: var(--color_white);
}

/* ############################## CLIENTI ################################# */

.catclienti_btn {
	display: inline-block;
	height: 20px;
	line-height: 20px;
	padding: 0 6px;
	margin: 0 0 6px 6px;
	text-transform: uppercase;
	background-color: #FFFFFF;
	color: var(--color_main);
}
.catclienti_btn:hover,
.catclienti_btn.active {
	background-color: var(--color_main);
	color: var(--color_white);
}

/* ############################## CLIENTE ################################# */

.progetto_cliente {
	font-size: 40px;
	font-weight: 700;
	text-transform: uppercase;
}
.cliente_sx {
	float: left;
	width: 200px;
	background-color: #FFFFFF;
	padding: 0 0 15px 0;
	margin: 0 15px 0 0;
}
.cliente_centro {
	float: left;
	width: calc(100% - 462px);
}
.cliente_dx {
	float: left;
	width: 200px;
	border-left: 1px solid var(--color_main);
	padding: 0 0 0 15px;
	margin: 0 0 0 15px;
	min-height: 100%;
}
.cliente_logo {
	width: 100%;
	margin: 0px;
	border-bottom: 1px solid var(--color_main);
}
.cliente_sx h3 {
	font-size: 16px;
	font-weight: 700;
	background-color: #FFFFFF;
	padding: 6px 0 6px 15px;
	margin: 10px 15px 0px 0px;
	color: #98A4D3;
	text-transform: uppercase;
}
.cliente_sx_itemparent {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 10px 0;
	color: var(--color_main);
}
.cliente_sx_item {
	display: table;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	background-color: var(--color_main);
	padding: 3px 5px;
	margin: 0 0 2px 15px;
	color: #FFF;
	border: 1px solid var(--color_main);
}
a.cliente_sx_item:hover {
	background-color: #FFF;
	border: 1px solid var(--color_main);
	color: var(--color_main);
}
.cliente_sx_item span {
	margin: 0 0 0 5px;
}
.cliente_dx_item {
	border-bottom: 1px solid var(--color_main);
	padding: 0 0 15px 0;
	margin: 0 0 15px 0;
}
.cliente_dx_item h3 {
	margin: 0 0 15px 0;
}

.cliente_gb_label {
	font-size: 12px;
    font-weight: 400;
    font-style: italic;
    margin: 0px;
}
.cliente_gb_value {
	font-size: 30px;
    font-weight: 700;
    margin: 0 0 5px 0;	
}
.cliente_gb_perc {
	font-size: 20px;
    font-weight: 700;
    margin: 0 0 10px 0;	
}

.item_dx_a {
	display: table;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    background-color: var(--color_main);
    padding: 3px 5px;
    margin: 0 0 4px 0;
    color: #FFF;
    border: 1px solid var(--color_main);
}
.item_dx_a:hover {
    background-color: #FFFFFF;
    color: var(--color_main);
    border: 1px solid var(--color_main);
}
.cliente_brand_a {
	display: block;
	width: 100%;
	height: 102px;
	margin: 0 0 2px 0;
}
.cliente_brand_a:hover {
	background-color: var(--color_main);
}
.cliente_brand_img {
	width: 100px;
	height: 100px;
	padding: 0px;
	margin: 0 0 0 15px;
	border: 1px solid var(--color_main);
}
.cliente_brand_default {
	width: 95px;
    height: 100px;
    background-color: var(--color_main);
    margin: 0 0 0 15px;
    /*line-height: 100px;*/
    color: #FFFFFF;
    padding: 0 0 0 5px;
    text-transform: uppercase;
    font-size: 12px;
	border: 1px solid var(--color_main);
}
.cliente_brand_default span {
	display: table-cell;
	height: 100px;
	vertical-align: middle;
}
.cliente_brand_a:hover .cliente_brand_default {
	background-color: #FFFFFF;
	color: var(--color_main);
}

/*################## CLIENTE ITEMS ####################*/

.item_filtri {
	padding: 10px;
	margin: 0 0 15px 0;
	background-color: aliceblue;
}
.item_filtri select {
	-webkit-appearance: none;
	border-radius: 0px;
	padding: 6px;
	border: 1px solid var(--color_main);
	cursor: pointer;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 10px;
	background-color: #FFFFFF;
}
.item_filtri button,
.item_filtri a,
.item_filtri div {
	border-radius: 0px;
	padding: 6px;
	margin: 0 0 0 10px;
	border: 1px solid var(--color_main);
	cursor: pointer;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 10px;
	background-color: #FFFFFF;
}
.item_filtri button:hover,
.item_filtri a:hover,
.item_filtri div:hover {
	border: 1px solid var(--color_main);
	background-color: var(--color_main);
	color: #FFFFFF;
}

/*################## CLIENTE ITEM: FORNITORI ####################*/

.cliente_fornitori_titolo {
	float: left;
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 700;
	padding: 0 5px 0 0;
}
.cliente_fornitori_tot {
	font-weight: 700;
	color: #21abf1;
}
.cliente_fornitori_progtot {
	color: #fc9727;
	font-style: italic;
	padding: 4px 0 6px 0;
	font-size: 12px;
}
.cliente_fornitori_graph {
	/*padding: 0 0 15px 0;*/
	border-bottom: 1px solid #333D85;
	margin: 0 0 30px 0;
}



/* ############################## PROGETTO ################################# */

.progetto_date {
	width: 100%;
    padding: 20px 0;
    background-color: var(--color_main);
    margin: 0 0 20px 0;
	color: #FFFFFF;
	font-size: 12px;
}
.progetto_date_inizio {
	float: left;
}
.progetto_date_i {
	float: left;
	font-size: 26px;
    margin: -8px 15px 0;
}
.progetto_date span {
	font-style: italic;
	font-weight: bold;
	font-size: 14px;
}
.progetto_date_fine {
	float: right;
}
.progetto_sx {
	float: left;
	width: 150px;
	background-color: #FFFFFF;
	padding: 0 0 15px 0;
	margin: 0 15px 0 0;
}
.progetto_sx h3 {
	font-size: 16px;
	font-weight: 700;
	background-color: #FFFFFF;
	padding: 6px 0 6px 15px;
	margin: 10px 15px 0px 0;
	color: #98A4D3;
}
.progetto_centro {
	/*position: relative;*/
	float: left;
	width: calc(100% - 165px)
}

.btn.action.nuovo {
	position: relative;
	cursor: pointer;
}
#nuovo_container {
	display: none;
	position: absolute;
	top: 33px;
	left: 0;
	background-color: #FF0000;
	z-index: 100;
	padding: 6px 0;
}
#nuovo_container.visible {
	display: block;
}
.nuovo_item {
	font-size: 12px;
	font-weight: 600;
	color: #FFFFFF;
	white-space: nowrap;
	padding: 0 20px;
}
.nuovo_item:hover {
	background-color: #A20000;
}
.nuovo_divisorio {
	height: 1px;
	margin: 6px 20px;
	background-color: #FFFFFF;
}

.progetto_titolo {
	font-size: 40px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 20px 0;
}
.progetto_cat {
	display: inline-block;
	background-color: var(--color_light);
	padding: 6px 20px;
	margin: 0 0 20px 0;
	font-size: 13px;
	font-weight: 700;
}
.progetto_cat:hover {
	background-color: var(--color_main);
	color: var(--color_white);
}

/* ############################## ITEM ################################# */


.item_container {
	background-color: #FFFFFF;
	padding: 0px;
	margin: 0 0 20px 0;
}
.item_content {
	border-bottom: 4px solid rgba(152,164,211,0.20);
	border-top: 1px solid rgba(152,164,211,0.20);
}
.item_content.fornitori {
	position:relative; 
	padding:10px 0 0 0; 
	display:grid;
}
.item_titolo,
.item_titolo_form {
	background-color: #FFFFFF;
	padding: 0px;
	margin: 0px;
	cursor: pointer;
}
.item_titolo:hover {
	background-color: rgba(152,164,211,0.50);
}
.item_titolo_i,
.item_titolo_form {
	float:left; 
	font-size:20px; 
	margin:0 10px; 
	line-height:37px;
}
.item_titolo_tipo {
	float:left; 
	font-size:10px; 
	font-weight:700; 
	text-transform: uppercase;
	margin:0 10px 0 0; 
	padding:0 10px 0 0; 
	border-right:1px solid var(--color_main);
}
.item_titolo_titolo {
	float:left; 
	font-size:14px; 
	font-weight:700;
	text-transform: uppercase;
	padding: 0 10px 0 0;
}
.item_titolo_titolo2 {
	float:left; 
	font-size:12px; 
	font-weight:400;
	font-style: italic;
}
.item_titolo_toggle {
	float:right; 
	padding: 0 15px; 
	/*border-left:1px solid var(--color_main);*/
}
.item_content {
	padding: 20px;
}
.item_btn {
	float: right;
	padding: 0 15px;
	font-size: 12px;
	font-weight: 700;
	border-left: 1px solid #FFFFFF;
}
.item_btn.verde {
	background-color: var(--color_btnbg_print);
	color: var(--color_btn_print);
}
.item_btn.verde:hover {
	background-color: var(--color_btnhbg_print);
	color: var(--color_btnh_print);
}

/* ############################## PROGETTO ITEM : GLOBAL BUDGET ################################# */

.progetto_item_label {
	font-size: 12px;
	font-weight: 400;
	font-style: italic;
	margin: 0px;
}
.progetto_item_value {
	font-size: 30px;
	font-weight: 700;
	margin: 0 0 0 0;
}
.progetto_item_value_perc {
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 0 0;
}
.progetto_item_value.green,
.progetto_item_value_perc.green {
	color: #8fc152;
}
.progetto_item_value.red,
.progetto_item_value_perc.red {
	color: #FF0000;
}

.progetto_gb_fase {
	float: left;
	width: calc((100% - 48px) / 4);
}
.borderl {
	padding: 0  0 0 15px;
	border-left: 1px solid #333D85;
}
.progetto_gb_fase h3 {
	font-size: 13px;
	margin: 0px;
}
.progetto_gb_fase_content {
	display: table;
	margin: 0 auto;
}
.progetto_db_total {
	font-size: 30px;
	font-weight: 700;
	margin: 0px;
}
.progetto_db_link {
	display: inline-block;
	font-size: 10px;
	margin: 0px;
	padding: 4px 15px;
	background-color: rgba(152,164,211,0.20);
	border-radius: 10px;
	/*border: 1px solid #333D85;*/
	color: #333D85;
	cursor: pointer;
}
.progetto_db_link:hover {
	background-color: #333D85;
	color: #FFFFFF;
}
.progetto_db_link.clona {
	margin: 0 6px 0 0;
}
.progetto_db_link.clona:hover {
	background-color: #FF0000;
	color: #FFFFFF;
}
.progetto_db_link.rational {
	margin: 0 6px 12px 0;
	background-color: #FFFFFF;
	border: 1px solid #333D85;
}
.progetto_db_link.rational:hover {
	background-color: #333D85;
	color: #FFFFFF;
}
.progetto_db_link.num {
	position: relative;
	padding: 4px 15px 4px 30px!important;
}
.progetto_db_link_num {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 10px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 10px;
	background-color: #98A4D3;
	color: #FFFFFF;
}
.progetto_gb_chart {
	clear: both;
	display: table;
	margin: 0 auto;
	padding: 20px 0 0 0;
}
.progetto_gb_chart_view {
	display: grid;
	border-top: 1px solid #333D85;
}
.progetto_gb_chart_view_item {
	float: left;
    padding: 10px 20px;
    font-size: 10px;
    margin: 10px 5px 0 5px;
    border: 1px solid #333D85;
	cursor: pointer;
}
.progetto_gb_chart_view_item:hover,
.progetto_gb_chart_view_item.active {
	background-color: #333D85;
	color: #FFFFFF;
}

.budget_nota {
	border-top: 1px solid #333D85;
	padding: 0 10px;
	margin: 10px 0 0 0;
}

/* ############################## ITEM : DETAILED BUDGET ################################# */

.item_db {
	font-size: 11px;
	font-weight: 400;
}
.item_db td {
	min-width: 15px;
	padding: 3px 6px;
}

/* ############################## PROGETTO ITEM : REPORT ################################# */

.report_cat {
	display: inline-block;
	background-color: var(--color_light);
	padding: 6px 20px;
	margin: 0 3px 20px 0;
	font-size: 13px;
	font-weight: 700;
}

/* ############################## PROGETTO ITEM : SAVINGS ################################# */

.progetto_item_agr_container {
	float: left;
	width: 33%;
	padding: 20px 0;
	font-size: 20px;
	font-weight: 700;
}
.progetto_item_agrtot_container {
	clear: both;
	width: 100%;
	display: table;
	padding: 20px 0;
	text-align: center;
	border-top: 1px solid var(--color_main);
}



/* ############################## CLIENTE ITEM : GLOBAL BUDGET ################################# */

.cliente_item_gb_anno {
	display: inline-block;
	background-color: var(--color_light);
	padding: 4px 8px;
	margin: 0 6px 0 0;
	font-size: 11px;
}
.cliente_item_gb_anno:hover,
.cliente_item_gb_anno.active {
	background-color: var(--color_main);
	color: var(--color_white);
}

/* ############################## PROGETTO ITEM : FORNITORI ################################# */

.progetto_fornitori_item {
	float: left;
    padding: 10px 20px;
    font-size: 11px;
	font-weight: 700;
}
.progetto_fornitori_item:hover,
.progetto_fornitori_item.active {
	background-color: #dee1f0;
	color: #333D85;
}

.ratio_form {
	width: 500px;
	margin: 0 auto;
}
.ratio_input {
	display: block;
    padding: 10px;
    width: calc(100% - 20px);
    font-size: 14px;
	border: none;
	background-color: #D9DDED;
	margin: 0 0 2px 0;
}
.ratio_input.var {
	margin: 0 0 2px 20px;
	width: calc(100% - 40px);
	padding: 5px 10px;
}
.ratio_button {
	display: block;
	width: 100%;
	padding: 10px;
	margin: 15px 0;
	background-color: #333D85;
	color: #FFFFFF;
	border: none;
	font-size: 14px;
}

/* ############################## FOOTER ################################# */

.container.footer {
	z-index: -1;
	position: fixed;
	bottom: 0;
	left: 0;
	background-color: #49494a;
	min-height: 100px;
}



/* ############################## PROCESSWIRE ################################# */
.mfp-iframe-holder .mfp-content { height: 100%; } /*max altezza per feel*/
.mfp-bg { opacity:0.9!important } /*sfondo feel*/
/*.mfp-close { display:none!important } /*tasto chiudi feel*/
.mfp-content {
    vertical-align: top!important;
    margin: 25px auto 0!important;
}
.Inputfields .InputfieldRepeater>.InputfieldContent .InputfieldRepeaterItem>.InputfieldHeader {
	background: #FF0000!important;
}
