@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Roboto:ital,wght@0,300;0,400;0,500;1,300;1,500&display=swap');

body{
	font-family: 'Noto sans jp', sans-serif;
	font-weight: 400;
	font-size: 14px;
	color: #000;
	background-color: #fafafa;
}

.nigthMode{
	filter: invert(100%) hue-rotate(180deg);
}
body,html{
  height:100%;
}
label{
	margin-bottom: .1rem;
}
.ui-datepicker{ z-index: 9999 !important;}
@-webkit-keyframes pulsating{
	from {opacity:0;}
	to {opacity:1;}
} /* Safari and Chrome */

@keyframes pulsating
{
	from {opacity:0;}
	to {opacity:1;}
}
h1, h2, h3, h4{
	padding-left: 0px;
	font-weight: 300;
}
h2{
	line-height: 34px;
}

h3{
	line-height: 26px;
	margin-top: 5px;
	margin-bottom: 10px;
}

h4{
	line-height: 24px;
	margin-top: 3px;
	margin-bottom: 3px;
	font-size: 1.2rem;
}

h5{
	line-height: 1.1rem;
	margin-bottom: 1px;
	margin-top: 1px;
	font-weight: 600;
}

h6{
	line-height: 1rem;
	margin-bottom: 2px;
	margin-top: 2px;
	font-weight: 600;
	font-size: 0.9rem;
}

a{
	color: #333;
}
a:hover{
	color: #c50000;
	text-decoration: none;
}
#background{
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-image: url("../images/carbon2.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	z-index: 1;
	
	padding: 20px;
	padding-top: 70px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
#content{
	position: absolute;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100%;
}


.login_content{
		position: fixed;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		align-content: center;
		z-index: 2;
}
#logged_in{
	float: right;
	margin-right: 2px;
	background-size: cover;
	opacity: 0.7;
}

#logged_in:hover{
	opacity: 1;
}
.alert{
  -webkit-border-radius: 0px;
     -moz-border-radius: 0px;
          border-radius: 0px;
}
.btn{
	background-color: #ff161f;
	background-image: inherit;
	color: #fff;
	border: 0px;
  -webkit-border-radius: 0px;
     -moz-border-radius: 0px;
          border-radius: 0px;
}

.login_error{
  background-color: #fcf8e3;
  border: 1px solid #fbeed5;

}

.login_avatar{
	display: inline-block;
	width: 128px;
	height: 128px;
	background-size: cover;
  -webkit-border-radius: 64px;
     -moz-border-radius: 64px;
          border-radius: 64px;
}

.login_text{
	min-height: 150px;
	text-align: center;
	
}

#panel_container{
	position: absolute;
	z-index: 11;
	top: 0px;
	left: 0px;
	margin: 0px;
	padding: 0px;
}

.username_fix{
	position: absolute;
	color: #fff;
	left: 250px;
	line-height: 41px;
	font-size: 16px;
	font-weight: 600;
}

#menu{
	position: fixed;
	z-index: 299;
	width: 360px;
	right: -480px;
  -webkit-transition: 0.2s ease-out;
     -moz-transition: 0.2s ease-out;
      -ms-transition: 0.2s ease-out;
       -o-transition: 0.2s ease-out;
          transition: 0.2s ease-out;
		 /*background-image: url(../images/menu_back.png); */
		 background-color: #fff;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
			 
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	
	padding-top: 0px;
	padding-bottom: 15px;
	padding-left: 0px;
	height: 100%;
	overflow: auto;
}

#menu .icon, #menu .iconb{
	color: #000 !important; 
}
#menu.opened{
	right: 0px;
}

.menu_cont_user{
	display: block;
	width: 100%;
	position: relative;
	top: 0px;
	background-color: #ed3240;
	height: 100px;
	color: #333;
	text-align: center;
	position: sticky;
	z-index: 9999;
}
.menu_cont_user_title{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	padding-top: 50px;
	padding-left: 20px;
}

.menu_avatar{
	position: relative;
	display: block;
	color: #fff;
	font-weight: 600;
	width: 64px;
	height: 64px;
	min-width: 64px;
	min-height: 64px;
	text-align: center;
	line-height: 64px;
	font-size: 24px;
	background-size: cover;
  -webkit-border-radius: 32px;
     -moz-border-radius: 32px;
          border-radius: 32px;
}
.menu_avatar.medium{
	width: 42px;
	height: 42px;
	min-width: 42px;
	min-height: 42px;
}
.menu_avatar.medium .subicon{
	top: 4px;
	left:18px;
}

.menu_username{
	padding-left: 5px;
	font-size: 16px;
	color: #fff;
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	text-align: left;
	padding-left: 10px;
}
.menu_user_sub{
	display: block;
	font-size: 13px;
	font-weight: 400;
	
}
.menu_elements{
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	padding: 10px 20px 45px 20px;
	text-align: center;
	color: #000;
	font-size: 18px;
}
.menu_elements a{
	color: #000;
}
.menu_bottom{
	position: sticky;
	bottom: -12px;
	height: 47px;
	text-align: right;
	padding: 5px;
	display: flex;
	flex-direction: row-reverse;
	background-color: #fff;
	width: 100%;
}
.moodal{
	position: fixed;
	margin: 0px;
	padding: 20px;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	border-top: 50px solid #123a64;
	
	background-color: #fff;
	background-color: rgba(255, 255, 255, 0.8);
	color: 333;		 
	
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
  -webkit-transition: 0.2s ease-out;
     -moz-transition: 0.2s ease-out;
      -ms-transition: 0.2s ease-out;
       -o-transition: 0.2s ease-out;
          transition: 0.2s ease-out;

}
.modal_spegni{
	position: absolute !important;
	top: 0px;
	right: 0px;
	background-image: url(../images/icons_48_black.png) !important;
	opacity: .9 !important;
}

.moodal .inner{
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	top:52px;
	left: 5px;
	right: 5px;
	bottom: 15px;
	position: fixed;
	background-color: #fff;
	border: 1px solid #999;
}
.moodal .title{
	color: #333;
	font-size: 20px;
	font-weight: 300;
	padding-left: 10px;
	padding-right: 36px;
	height:48px;
	line-height: 48px;
	background-color: #f6f6f6;
}

.moodal .text{
	
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	
	/* height: 100%; */
	overflow: scroll;
	overflow-x: hidden;
	margin: 0px;
	margin-bottom: 0px;
	padding-top: 5px;
	padding: 10px;
	padding-left: 15px;
	padding-right: 10px;
	padding-bottom: 10px;
	max-height: calc(100vh - 142px);
	
	/*
	background-color: #ffff00;
	overflow-y: scroll;
	padding: 5px;
	width: 100%;
	*/
}

.moodal_scroller{
	display: block;
	width: 100%;
	overflow: auto !important;	
}

.moodal .text:after{
	content: ' ';
	display: block;
	height: 100px;
}
.moodal .small_text{
	font-size: 14px;
	line-height: 16px;
}
.modal_bottom_spacer{
	display: block;
	width: 100%;
	height: 1px;
	
}
.moodal .buttons{
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	width: 100%;
	margin-left: 0px;
	margin-right:0px;
	padding-left: 5px;
	padding-top: 5px;
	padding-right: 5px;
	position: absolute;
	bottom: 0px;
	height: 50px;
	text-align: center;
	background-color: #fff;
}

.moodal .buttons .btn{
  -webkit-border-radius: 0px;
     -moz-border-radius: 0px;
          border-radius: 0px;
		  border-radius: 24px;
	
}
.main_logo{
	top: 0px;
	left: 0px;
	position: fixed;
	z-index: 9999999;
}
#toolbar{
	top: 0px;
	left: 0px;
	position: fixed;
	z-index: 298;
	width: 100%;
	background-color: #123a64;
	height: 50px;
	color: #333;
	
	 -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.5s ease-out;
     -moz-transition: 0.5s ease-out;
      -ms-transition: 0.5s ease-out;
       -o-transition: 0.5s ease-out;
          transition: 0.5s ease-out;
}
.quantity_container {
	display: inline-block;
	position: relative;
}

.quantity{
	display: inline-block;
	position: absolute;
	top: 50%;
	margin-top: -16px;
	right: 10px;
	width: 32px;
	height: 32px;
	line-height: 32px;
	font-weight: 600;
	font-size: 12px;
	color: #333;
	text-decoration: none;
	background: #ffde16;
	text-align: center;
  -webkit-border-radius: 16px;
     -moz-border-radius: 16px;
          border-radius: 16px;
	border: 1px solid #fff;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
.quantity_container .quantity{
	top: inherit;
	right: inherit;
	position: initial;
}

.quantity.bk-red{
	color: #fff;
}

.label_marign45 > .quantity{
	right: -3px;
	top: -3px;
}
.icons > .quantity{
	top: 12px;
	left: 28px;
}

.button > .quantity{
	top: 10px;
	right: -6px;
}
.button.small > .quantity{
	width: 24px;
	height: 24px;
	line-height: 24px;
}
.subicon{
	top: -12px;
	right: -12px;
	position: relative;
	background-color: #ff161f;
	color: #fff;
	padding-top: 2px;
	padding-left: 2px;
	padding-right: 2px;
	text-decoration: none;
	text-align: center;
	background-image: url(../images/icons_48.png) !important;
}
/*
.small > .quantity{
	top: 12px;
	left: 16px;
	min-width: 22px;
	width: min-content;
	height: 22px;
	line-height: 22px;
	font-size: 12px;
	padding: 0px 5px;
	
}

.subicon{
	display: inline-block;
	position: relative;
	top: -4px;
	left: 16px;
	min-width: 28px;
	height: 28px;
	font-weight: 600;
	font-size: 12px;
	color: #fff;
	padding-top: 2px;
	padding-left: 2px;
	padding-right: 2px;
	text-decoration: none;
	text-align: center;
  -webkit-border-radius: 16px;
     -moz-border-radius: 16px;
          border-radius: 16px;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box;      
	background-image: url(../images/icons_48.png);
	background-size: 640px 160px;
	background-color: #ff161f;
}
*/

.subicon.corner_tl{
	left: -8px;
}
.subicon.corner_bl{
	top: 22px;
	left: -8px;
}
.subicon.corner_br{
	top: 22px;
}
.small .subicon, .micro{
	top: -10px;
	right: -12px;
	width: 16px;
	height: 16px;
	background-size: 320px 80px;
	line-height: 16px;
	font-size: 12px;
	padding-top: 0px;
	vertical-align: text-bottom;
	overflow: hidden;
}

.pulsating{
	animation: pulsating 2s infinite alternate;
	-webkit-animation: pulsating 2s infinite alternate;
}
.little_box_wrapper{
	position: relative;
	width: 0px;
	height: 0px;
	display: inline;
	display: inline-block;
}
.little_box{
	position: absolute;
	z-index: 99;
}
.little_box_inner{
	display: block;
	color: #333;
	overflow: auto;
	max-height: 360px;
	width: 400px;
	background-color: #fff;
	margin: 5px 0px;
	border: 1px solid #ddd;
	padding: 3px 5px 6px 5px;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}

.little_arrow{
	border:solid;
	border-color:#fff transparent;
	content:"";
	display:block;
	position:absolute;
	z-index:99;
}
.little_arrow.top{
	border-width:0px 12px 12px 12px;
}
.little_arrow.bottom{
	border-width:12px 12px 0 12px;
}

.little_box_buttons{
	position: absolute;
	z-index: 99;
	top: -16px;
	right: -16px;
}

.table_container{
	display: block;
	width: 100%;
	overflow: auto;
}
.lists{
	width: 100%;
	font-size: 14px;
	position: relative;
}
.lists th{
	text-align: left;
	font-weight: 600;
	margin-bottom: 2px;
	background: #123a64;
	color: #fff;
	border-bottom: 1px solid #eaeaea;
	border-right: 1px solid #eaeaea;
	vertical-align: middle;
	position: sticky;
	top: 0;
	z-index: 2;
}
.lists th, .nowrap{
    white-space:nowrap;
}
.wrap {
    white-space:normal !important;
	vertical-align: top !important;
}

.min100{
	min-width: 102px;
}
.max40{
	max-width: 52px;
	overflow: hidden;
	min-width: 50px;
}
.max60{
	max-width: 72px;
	overflow: hidden;
	min-width: 70px;
}
.max100{
	max-width: 98px;
	overflow: hidden;
	min-width: 90px;
}
.max100:hover{
	overflow: auto;
	width: auto;
	z-index: 999;
	position: relative;
}
.minmax200{
	min-width: 80px;
	width: 15% !important;
	max-width: 180px;
}
.minmax300{
	min-width: 110px;
	width: 25% !important;
	max-width: 340px;
}
.lists td.right, .lists th.right{
	text-align: right;
}

.lists td.left, .lists th.left{
	text-align: left;
}

.lists td, .lists th{
	padding: 2px;
	padding-left: 4px;
	width: auto;
	/* height: 45px; */
	border-bottom: 1px solid #eaeaea;
	border-right: 1px solid #eaeaea;
	vertical-align: top;

	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
.lists th:first-child{
	border-top-left-radius: 4px;
}
.lists th:last-child{
	border-top-right-radius: 4px;
}
.lists tr:nth-child(odd) {
	background: #fefefe;
}
.lists tr:nth-child(odd):hover {
	background: #e2f2f3;
}

.lists tr:nth-child(even) {
	background: #e0efff;
}
.lists tr:nth-child(even):hover {
	background: #e2f2f3;
}
.lists tr th:last-child, .lists tr td:last-child {
	white-space:nowrap;
}
/*
.lists tr:hover td:last-child{
	position: absolute;
	right: 64px;
}
*/
.lists tr.warning:nth-child(odd), .lists tr:nth-child(odd) td.warning {
	background-color: #df8089;
	color: #fff;
}
.lists tr.warning:nth-child(even), .lists tr:nth-child(even) td.warning {
	background-color: #bf6a72;
	color: #fff;
}
.lists tr.warning:hover, .lists td.warning:hover, .lists tr:nth-child(odd):hover td.warning, .lists tr:nth-child(even):hover td.warning {
	background-color: #F9E5E5;
	color: #333;
}

.lists tr.success:nth-child(odd), .lists tr:nth-child(odd) td.success{
	background-color: #DFF0D8;
	background-color: #00b772;
	color: #fff;
}
.lists tr.success:nth-child(even), .lists tr:nth-child(even) td.success{
	background-color: #00ca80;
	color: #fff;
}
.lists tr.success:hover, .lists td.success:hover, .lists tr:nth-child(odd):hover td.success, .lists tr:nth-child(even):hover td.success  {
	background-color: #ECF7E8;
	color: #333;
}

.lists tr.alert, .lists td.alert {
	background-color: #FBD335;
	border-radius: 0px;
}
.lists tr.alert:hover, .lists td.alert:hover, .lists tr:hover .alert  {
	background-color: #FBD335;
}

.lists tr.alerts, .lists td.alerts {
	background-color: #FBD335;
}
.lists tr.alerts:hover, .lists td.alerts:hover, .lists tr:hover .alerts  {
	background-color: #FBD335;
}

.lists tr.gray:nth-child(odd), .lists tr:nth-child(odd) td.gray {
	background-color: #343a40;
}
.lists tr.gray:nth-child(even), .lists tr:nth-child(even) td.gray {
	background-color: #32383e;
}
.lists tr.gray:hover, .lists td.gray:hover, .lists tr:nth-child(odd):hover td.gray, .lists tr:nth-child(even):hover td.gray  {
	background-color: #475360;
}

.lists tr.violet:nth-child(odd), .lists tr:nth-child(odd) td.violet {
	background-color: #9F7EC6;
}
.lists tr.violet:nth-child(even), .lists tr:nth-child(even) td.violet {
	background-color: #917EC6;
}
.lists tr.violet:hover, .lists td.violet:hover, .lists tr:nth-child(odd):hover td.violet, .lists tr:nth-child(even):hover td.violet  {
	background-color: #9D8AE1;
}

.lists tr.blue:nth-child(odd), .lists tr:nth-child(odd) td.blue {
	background-color: #6DA5E1;
}
.lists tr.blue:nth-child(even), .lists tr:nth-child(even) td.blue {
	background-color: #5295DD;
}
.lists tr.blue:hover, .lists td.blue:hover, .lists tr:nth-child(odd):hover td.blue, .lists tr:nth-child(even):hover td.blue  {
	background-color: #A5C6EA;
}


.lists tr.subheader, .lists td.subheader {
	background-color: #63abed;
}
.table_fixed_header{
	top:50px;
	position:absolute;

	table-layout:fixed;
	border:none;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
.tool_btn{
	display: block;
	float: right;
	margin-top: 0px;
	width: 48px;
	height: 48px;
	background-image: url(../images/icons_48.png) !important;
	background-size: 960px 240px;
	margin-left: 3px;
	cursor: pointer;
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
  -webkit-border-radius: 24px;
     -moz-border-radius: 24px;
          border-radius: 24px;
}

.tool_btn .quantity{
	position: relative;
	top: 21px !important;
	right: 8px !important;
	border: 2px solid #323234;
}

.panel_buttons .quantity{
	position: relative;
	top: 12px;
	right: 12px;
	border: 2px solid #474749;
	width: 24px;
	height: 24px;
	line-height: 22px;
}
.icon, .iconb{
	display: inline-block;
	position: relative;
	width: 320px;
	height: 48px;
	text-align: left;
	cursor: pointer;
	text-decoration: none;
	font-size: 22px;
	font-weight: 300;
	color: #888;
	line-height: 48px;
	margin-bottom: 5px;
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
  -webkit-border-radius: 24px;
     -moz-border-radius: 24px;
          border-radius: 24px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	white-space: nowrap;
}

.icon:hover, .iconb:hover{
	background-color: #26578a;
	color: #fff;
}

.icon:hover > .icons, .iconb:hover > .icons{
	background-color: #26578a;
	color: #fff;
	background-image: url(../images/icons_48.png);
}
.icon > .icons, .iconb > .icons{
	display: block;
	float:left;
	margin-right: 5px;
}

.icon_text{
	overflow: hidden;
	max-width: 250px;
	/* display: inline-block; */
	text-overflow: ellipsis;
	display: inline-block;
	padding-right: 10px;
	width: 80%;
}

.icon .more, .iconb .more{
	font-size: 14px;
	display: none;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
		  padding: 2px 5px 2px 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;   
	box-sizing: border-box; 
}
.icon:hover .more, .iconb:hover .more{
	display: block;
	position: absolute;
	bottom: -44px;
	background-color: #EF0000;
	color: #fff;
	height: 48px;
	overflow: hidden;
	z-index: 2;
	
}

.icon.small, .iconb.small{
	margin-left: 0px;
	width: 168px;
	height: 32px;
	font-size: 16px;
	padding: 0px;
	line-height: 32px;
}
.icons, .big_icons{
	display: inline-block;
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	text-align: center;
	background-image: url(../images/icons_48_black.png);
	background-size: 960px 240px;
  -webkit-border-radius: 24px;
     -moz-border-radius: 24px;
          border-radius: 24px;
		  
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
		  position: relative;
}
.rotate45{
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Safari */
	 transform: rotate(45deg);
}


.big_icons{
	width: 96px;
	height: 96px;
	background-size: 1920px 192px;
}
.text_button{
	display: inline-block;
	cursor: pointer;
	min-width: 24px;
	height: 24px;
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	background-color: #ff161f;
	margin-right: 1px;
	vertical-align: middle;
	overflow: hidden;
	font-weight: 600;
	font-size: 13px;
	color: #fff;
	text-align: center;
	padding: 2px;
}

.button, .subicon{
	display: inline-block;
	width: 48px;
	height: 48px;
	
	background-image: url(../images/icons_48_black.png);
	background-size: 960px 240px;
	color: #333;
	cursor: pointer;
	border-radius: 24px;
	
	text-align: center;
	font-weight: 600;
	font-size: 24px;
	line-height: 48px;
	/* line-height: 48px; */
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
  -webkit-border-radius: 24px;
     -moz-border-radius: 24px;
          border-radius: 24px;
	/* background-color: #ff161f; */
	margin-right: 1px;
	vertical-align: middle;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	position: relative;
}

.button.small, .subicon{
	font-size: 12px;
}
.button_text{
	font-size: 0px;
	overflow: hidden;
	width: 0px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
.button:hover .button_text{
	display: block;
	display: inline-block;
	position: absolute;
	font-size: 14px;
	color: #ffffff;
	width: 200px;
	height: 48px;
	background-color: #5a5a5c;
	position: relative;
	left: -196px;
	padding-left: 3px;
	padding-top: 0px;
	margin-top: -18px;
  -webkit-border-radius: 24px;
     -moz-border-radius: 24px;
          border-radius: 24px;
}
.white{
	background-color: #fff;
}
/*Sezione Icone */
.default_avatar, .avatar, .icon_image{
	display: inline-block;
	width: 48px;
	height: 48px;
	background-size: cover;
  -webkit-border-radius: 24px;
     -moz-border-radius: 24px;
          border-radius: 24px;
}

.big_avatar, .big_image{
	display: inline-block;
	width: 128px;
	height: 128px;
	background-size: cover;
  -webkit-border-radius: 64px;
     -moz-border-radius: 64px;
          border-radius: 64px;
}

.big_avatar > .button, .big_image > .button{
	display: none;
}
.big_avatar .quantity, .big_image .quantity{
	right: -10px;
	top: 4px;
	width: 42px;
	height: 42px;
	border-radius: 21px;
	line-height: 42px;
	font-size: 14px;
}

.big_avatar:hover  > .button, .big_image:hover  > .button, .big_image_cont_touch .button{
	display: block;
	float: right;
}
.big_image_outer{
	display: inline-block;
}
.big_image_info{
	display: none;
	overflow: hidden;
	width: 132px;
}

.big_image_placeholder{
	width: 132px;
	height: 132px;
	display: none;
	background-color: #ff0000;
}
.big_image_container{
	display: inline-block;
	z-index: 1;
	position: relative;
}
.big_image_container:hover .big_image_outer, .big_image_cont_touch .big_image_outer{
	position: absolute;
	margin-top: -30px;
	/*margin-left: -34px;*/
	/*
	top: 45px;
	*/
	padding: 5px;
	background-color: #fff;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	z-index: 9999;
}
.border_green{
	box-shadow: inset 0 0 25px #389c3f;
}
.border_green:hover{
	box-shadow: 0 0 0 0 #389c3f;
}

.float_hover{
	position: absolute;
	left: 32px;
}
.small.avatar , .small.default_avatar{
	width: 32px;
	height: 32px;
	background-size: cover !important;
	border-radius: 16px;
}

.default_avatar{
	background-image: url(../images/avatar.png);
}


/* VECCHIA GESTIONE FOTO */
.nic_container{
	display: inline-block;
	margin: 2px;
	position: relative;
	width: 132px;
	height: 100px;
	cursor: pointer; /* hack per quella chiavica di ios */
}
.nic_container.small{
	width: 48px;
	height: 48px;
}

.nic_buttons{
	display: none;
}
.nic_info{
	overflow: hidden;
	width:100%;
	max-height: 32px;
	padding: 0px;
	position: absolute;
	bottom: 0px;
	background: linear-gradient(to top, rgba(255,255,255, 1) 0%, rgba(255,255,255, 1) 70%, rgba(255,255,255,0.8) 9%,rgba(255,255,255,0) 100%);
	color: #333;
	padding-top: 4px;
	text-overflow: ellipsis;
}
.nic_image{
	width: 132px;
	height: 100px;
	background-size: cover;
	background-color: #fff;
	background-repeat: no-repeat; 
	background-image: url(../images/no_file.png);
	background-position: center;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
}

.nic_container.small .nic_image{
	width: 48px;
	height: 48px;
}

.nic_placeholder{
	display: none;
}
.nic_message{
	display: block;
	float: right;
	position: relative;
	top: -8px;
	right: -8px;
	width: 24px;
	height: 24px;
	background-image: url(../images/icons_48.png);
	background-size: 480px 120px;
	background-position: -240px 0px;
  -webkit-border-radius: 12px;
     -moz-border-radius: 12px;
          border-radius: 12px;
	background-color: #c50000;
	border: 1px solid #fff;
}
/* hovering */
.nic_container:hover .nic_image, .nic_container.nic_fix .nic_image{
	width: 200px;
	height: 180px;
}
.nic_container:hover .nic_big_block, .nic_container.nic_fix .nic_big_block{
	position: absolute;
	margin-top: -30px;
	/*
	top: 45px;
	*/
	padding: 5px;
	background-color: #fff;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	z-index: 9999;
}
.nic_container:hover .nic_buttons, .nic_container.nic_fix .nic_buttons{
	display: inherit;
	position: absolute;
	right: 4px;
	top: 5px;
} 
.nic_container:hover .nic_info, .nic_container.nic_fix .nic_info {
	display: inherit;
	max-height: inherit;
	height: inherit;
	position: initial;
}
.nic_buttons .button{
	background-color: rgba(255, 255, 255, 0.3);
}
.drag-drop-upload-area{
	width: 100%;
	min-height: 64px;
	border: 2px solid #FFF;
	border-radius: 6px;
	position: relative;
}
.drag-drop-upload-area.highlight {
	border: 2px dotted #333;
	
}



/* NUOVA GESTIONE FOTO */
.img_container{
	display:inline-block;
	width: 160px;
	height: 148px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	margin: 5px;
	position: relative;
	cursor: pointer;
}
.img_btn{
	display: none;
	
}
.img_content{
	display: block;
	width: 160px;
	height: 148px;
	border: 5px solid #FFFFFF;
	border-bottom: 25px solid #FFFFFF;
	background-color: #fff;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	background-size: cover;
	background-position: center center;
	background-image: url(../images/no_file.png);
}
.img_extra{
	position: absolute;
	left: 0px;
	bottom: 0px;
	font-size: 12px;
	font-weight: 600;
	padding: 3px 10px;
	
}

.close_image_zoom{
	position: absolute;
	left: 0px;
}
.photo_zoom{
	position: fixed;
	width: 100%;
	height: 100%;
	margin: 0px;
	padding: 0px;
	top: 0px;
	left: 0px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	background: rgba(255, 255, 255, 0.9);
	overflow: scroll;
	z-index: 99999997;
	background-position: center center;
	background-image: url(../images/spinner.svg);
	background-size: 160px 160px;
	background-repeat: no-repeat;
}
.photo_zoom_content{
    position: absolute;
	display: inline-block;
    margin: auto;
    top: 0px;
    left: 0px;
	z-index: 99999998;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}
.photo_zoom_btn{
	position: fixed;
	z-index: 99999999;
	width: 100%;
	height: 50px;
	top: 0px;
	right: 0px;
	text-align: right;
	background-color: #FFF;
}
/* fine nuova gestione foto */

form{
	margin-top: 2px;
	width: 100%;
}

.button.small, .icon.small > .icons, .iconb.small > .icons, .btn > .icons{


	width: 32px;
	height: 32px;
	background-size: 640px 160px;
	line-height: 32px;
}

.btn > .icons{
	/* margin-top: 2px; */
	margin-right: 5px;
}

.button.micro, .subicon.micro{
	width: 24px;
	height: 24px;
	background-size: 480px 120px;
	line-height: 24px;
}
.subicon.small{
	width: 24px;
	height: 24px;
	background-size: 480px 120px;
	line-height: 24px;
	top: -12px;
	right: -24px;
	filter: drop-shadow(1px 1px 0px #fdfdfd) drop-shadow(-1px -1px 0px #fff) drop-shadow(1px -1px 0px #fff) drop-shadow(-1px 1px 0px #fff);
}

.button .subicon.small{
	top: 8px;
	right: -10px;
}
/*
.small{
	width: 32px;
	height: 32px;
	background-size: 640px 160px;
	line-height: 32px;
	font-size: 14px;
}
.micro{
	width: 16px;
	height: 16px;
	background-size: 320px 80px;
}
*/

.btn_text{
	width: auto;
	min-width: 32px;
	height: 32px;
	padding-left: 8px;
	padding-right: 8px;
    white-space:nowrap;
	overflow: visible;
	font-size: 14px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
/* icone half height */

.xsmall{
	width: 24px;
	height: 24px;
	background-size: 480px 120px;
}

.micro.accept{
	background-position: -272px -16px;
}
.micro.not_checked{
	background-position: -288px -16px;
}


.big{
	width: 64px;
	height: 64px;
	background-size: 1280px 128px;
}
.icon.big{
	width: 340px;
}

.tags{
	display: inline-block;
	cursor: pointer;
	color: #333;
	height: 32px;
	min-width: 140px;
	background-color: #d6d9db;
  -webkit-border-radius: 16px;
     -moz-border-radius: 16px;
          border-radius: 16px;
	margin-right: 2px;
	margin-bottom: 10px;
	padding: 0px 4px 0px 1px;
}

.tags .button{
	border: 0px;
	background-image: url(../images/icons_48.png);
	 -webkit-box-shadow: inherit;
	    -moz-box-shadow: inherit;
	         box-shadow: inherit;
	vertical-align: middle;
	margin: 0px;
	margin-right: 4px;
}
.small_tag{
	display: inline-block;
	width: 12px;
	height: 14px;
	padding: 0px;
	margin: 0px;
	border-radius: 12px;
	color: #fff;
	position: relative;
}
.small_tag:hover{
	height: 18px;
}
.small_tag span{
	display: none;
}
.small_tag:hover span{
	display: block;
	width: auto;
	min-width: 140px;
	padding: 0px 5px;
	position: absolute;
	background-color: #333;
	top: -28px;
	border-radius: 12px;
	padding: 0px 5px;
	line-height: 24px;
	height: 24px;
	text-align: center;
	font-weight: 400;
	font-size: 14px;
}
/*
.small_tag:hover::before{
	content: ' ';
	width: 24px;
	display: inline-block;
	height: 24px;
}
*/
.small_tag.status{
	height: 10px;
}
.small_tag.status::before{
	height: 10px;
	width: 0px;
	display: inline;
}
.small_tag.red{
	background-color: #dc3545;
}
.small_tag.yellow{
	background-color: #ffde16;
}
.small_tag.green{
	background-color: #5aa03d;
}

#alerts{
	float: right;
	margin-right: 2px;
	background-position: -288px 0px;
}
#messages{
	float: right;
	margin-right: 2px;
	background-position: -48px 0px;
}
#logged_in{
	float: right;
	margin-right: 2px;
	background-size: cover;
	opacity: 0.7;
}
#logged_in:hover{
	opacity: 1;
}
.text{
	padding: 5px;
	font-size: 14px;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
}

.btn{
	font-weight: 300;
	font-size: 18px;
	text-align: center !important;
}

.btn_group{
	border-top-left-radius: 0px !important;
	border-bottom-left-radius: 0px !important; 
	border-top-right-radius: 10px !important;
	border-bottom-right-radius: 10px !important; 
}

.gt_tips {
	display: block;
    position: fixed;
	z-index: 9999;
	top: -36px;
	max-width: 300px;
	height: auto;
	white-space: normal;
	padding: 8px;
	font-size: 14px;
	text-align: left;
	
	color: #333;
	background-color: #fff;
	border-left: 1px solid #c50000;
  -webkit-border-radius: 1px;
     -moz-border-radius: 1px;
          border-radius: 1px;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
}

.mappe_big{
	width: 100%;
	height: 500px;
	background-color: #b7d7f2;
	margin: 0px auto;
	padding: 0px;
}

.mappe_small{
	width: 100%;
	height: 300px;
	background-color: #b7d7f2;
	margin: 0px auto;
	padding: 0px;
}
.mappe_big img, .mappe_small img{max-width: inherit;}

.live_hidden, .hidden{
	display:none !important;
	width: 100%;
}

/*
.panels{
	width: 100%;
	min-height: 100%;
	height: auto;
	overflow: scroll;
	background-color: #fff;
	position: absolute;
	margin: 0px;
	padding: 0px;
	z-index: 1;
	left: 0px;
	top: 0px;
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
			 
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;         
	padding-top: 65px;
}
*/

.panels{
	background-color: #fff;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	overflow: scroll;
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
			 
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;         
	padding-top: 100px;
}
.panels .wrapper{
	/* margin-top: 70px; */
	height: 100%;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}
/*
.panels h2{
	padding-left: 20px;
	font-weight: 300;
}
*/

.panels .text{
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 50px;
	padding-top: 10px;
	min-height: 100%;
	display: absolute;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}

.panels .text_full{
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	margin: 0px;
	width: 100%; 
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}

.panels .panel_buttons{
	top: 50px;
	left: 0px;
	position: fixed;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	z-index: 999;
	width: 100%;
	background-color: #60686a;
	height: 50px;
	color: #fff;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	
	 -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}
.panels .panel_buttons .button{
	background-image: url(../images/icons_48.png);
	color: #fff;
}
.panels .panel_buttons .title{
	color: #fff;
	font-size: 20px;
	position: absolute;
	left: 5px;
	top: 0px;
	line-height: 50px;
}
/* Nuova sezione dedicata alle opzioni di un pannello */
.upper_box{
	/* rimane nella posizione originale e non si muove */
	position: fixed;
	top: 50px;
	left: 0px;
	z-index: 8;
	height: 26px;
	font-size: 15px;
	font-weight: 600;
	line-height: 26px;
	width: 100%;
	color: #333;
	background-color: rgba(255, 255, 255, 0.70);
	padding-left: 3px;
	padding-right: 3px;
	 -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;  
	overflow: hidden;
	text-overflow: ellipsis;
}

/* espansione dell'upper box per maggiori contentuti */
.upper_box.expand{
	height: 50%;
}

.under_box{
	position: fixed;
	bottom: 16px;
	left: 0px;
	height: 30px;
	overflow: hidden;
	width: 100%;
	border-top: 1px solid #666;
	background-color: rgba(33, 33, 37, 0.95);
	background-color: rgba(245, 246, 248, 0.95);
	
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;  
	padding: 20px;
	padding-top: 30px;
	margin: 0px;
	 -webkit-box-shadow: 0 -2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 -2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 -2px 3px rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
	z-index: 2;
	
}
.under_box_updown{
	display: inline-block;
	cursor: pointer;
	width: 48px;
	height: 48px;
	position: absolute;
	top: -10px;
	left: 50%;
  -webkit-transition: 0.3s ease-out;
     -moz-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
       -o-transition: 0.3s ease-out;
          transition: 0.3s ease-out;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	/*background-color: #ff161f; */ 
	margin-left: -24px;
	background-image: url(../images/icons_48_black.png);
	background-size: 960px 240px;
	background-position: -624px -48px;
}
.under_box.fix{
	height: auto;
	max-height: 55%;
	overflow: auto;
}
.under_padding{
	padding-bottom: 500px;
}
.detail_box{
	display: none;
	position: fixed;
	top: 0px;
	right: -100%;
	height: 100%;
	width: 50%;
	background-color: #fff;
	padding: 0px;
	margin: 0px;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;
}

.detail_box.horizontal{
	width: 100%;
	height: 50%;
}
.detail_box .text{
	overflow: scroll;
	height: 100%;
	padding-top: 130px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}

.detail_box::-webkit-scrollbar { 
    display: none; 
}
.detail_buttons{
	position: absolute;
	width: 100%;
	top: 100px;
	left: 0px;
	z-index: 2;
	color: #333;
	font-size: 15px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	/* background-color: #5a5a5c; */
	/* background-color: #d76445; */
	height: 50px;
	line-height: 50px;
	padding-left: 10px;
}
.detail_buttons .button{
	background-image: url('../images/icons_48_black.png') !important;
	float: right;
}
.floating_bottom{
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: 3;
	padding: 10px;
	background: #f8f8f8;
	background-color: rgba(25, 25, 25, 0.4);
	min-height: 100px;
	width: 100%;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}
.opened{
	display: inherit;
	right: 0px;
}
.opened.detail_left{
	left: 0px;
}

.opened.detail_bottom{
	top: 50%;
}
.opened.detail_bottom .text{
	padding-top: 20px;
}
.opened.detail_bottom .detail_buttons{
	top: -24px;
}

.opened.detail_full{
	width:100%;
	height: 100%;
}
.pre_loading{
	position: fixed;
	left: 50%;
	width: 48px;
	height: 48px;
	margin-left: -24px;
	background-color: #fff;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box; 
	line-height: 48px;
	text-align: center;
	font-size: 32px;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	border-radius: 24px;
}

.loading{
	position: absolute;
	width: 160px;
	height: 160px;
	top: 50%;
	margin-top: -80px;
	left: 50%;
	margin-left: -80px;
	background-image: url(../images/spinner.svg);
	background-size: 160px 160px;
	z-index: 999;
}
.mini_loading{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	box-sizing: border-box;
	background-image: url(../images/spinner.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;       
	display: inline-block;
	overflow: hidden;
	text-align: center;
	font-size: 30px;
	line-height: 148px;
	color: #ff0000;
}
.loaded_none{
	background-image: url(../images/no_file.png);
	background-position: center center;
	background-size: cover;
}
.alert  .icons{
	margin-top: -14px;
	margin-left: -15px;
}

.alert  .icons.small{
	margin-top: -6px;
	margin-left: -14px;
}
.alert .alert-buttons{
	border-top: 1px solid rgba(250, 250, 250, .5);
	margin-top: 3px;
}

.alert .alert-buttons .icons{
	margin-left: 0px;
}
.alert  h2  .icons{
	margin-top: -5px;
	margin-left: 0px;
}

.alert{
	margin-bottom: 5px;
	margin-top: 5px;
	border-radius: 24px;
	padding-left: 18px;
}
.alert h2{
	padding-left: 0px;
}

.msg_box{
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	padding: 3px;
	margin-bottom: 3px;
	position: relative;
}

.to_read{
	border-left: 10px solid #333;
}

.msg_box h3{
	font-size: 18px;
	margin: 0px;
	padding: 0px;
}
.msg_avatar{
	float: left;
}
.msg_txt{
	width: 330px;
	font-size: 14px;
	float: right;
}
.msg_box h6{
	clear: both;
}
.msg_buttons{
	position: absolute;
	bottom: 2px;
	right: 2px;
	z-index: 2;
}
.msg_out{
	background-color: #F5FFF9;
}
.msg_out .msg_avatar{
	float: right;
}
.msg_out .msg_txt{
	float: left;
}
/* Sezione prenotazione */
.hour_box{
	width: 100%;
	min-height: 48px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 0px;
	margin-top: 0px;
	display: block;
}
.hour_box h3{
	float: left;
	margin: 0px;
	margin-right: 5px;
}



.charts{
	display: inline-block;
	width: 100%;
	height: 180px;
}
.firma_holder{
	width: 98%;
	margin: auto;
	height: 300px;
	border: 1px solid #ddd;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
	 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}
.inline_flex_cont{
	display: flex;
	justify-content: space-around;
	align-items: stretch;
	flex-direction: row;
	align-content: center;
	flex-wrap: wrap;
}
.inline_box.flex{
	height: auto;
	margin: 3px;
}
.inline_box{
	width: 32.5%;
	margin: 0px;
	display: inline;
	display: inline-block;
	height: 300px;
	/*
	background-color: #fff;
	border: 1px solid #ddd;
	*/
	 -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 2px;
     -moz-border-radius: 2px;
          border-radius: 2px;
		  
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;   
	
	padding: 5px;
	padding-top: 2px;
	overflow: hidden;
	position: relative;
}
.inline_text{
	width: 32%;
	margin: 3px;
	display: inline;
	display: inline-block;
	height: 300px;
	background-color: #fff;
	
	 -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 2px;
     -moz-border-radius: 2px;
          border-radius: 2px;
		  
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;   
	
	padding: 5px;
	padding-top: 0px;
	overflow: hidden;
	position: relative;
	padding-top: 30px;
}

.inline_box.half, 
.inline_text.half, 
.detail_box .inline_box, 
.moodal .inline_box{
	width: 49%;
}

.inline_box.auto{
	min-height: 250px;
	height: auto;
	vertical-align: top;
}

.inline_box.long{
	height: 380px;
}

.inline_box.long2{
	height: 460px;
}
.inline_box.long3{
	height: 560px;
}
.inline_box.fullsize{
	width: 100%;	
}
.inline_box.scroll{
	overflow: auto;
}
.inline_box.error{
  background-color: #E5D1CD;
}
.inline_box.expand{
	width: 100%;	
	height: auto;
	min-height: 64px;
	overflow: auto;
}
.detail_box .inline_box.fullsize{
	width: 100%;
	height: 200px;
	overflow: auto;
}

.text_error{
	font-weight: bold;
	color: #b51717;
}
.text_alert{
	font-weight: bold;
	color: #c77036;
}
.text_big_error, .text_big_ok, .text_big_alert, .text_big_info, .text_big_white{
	display: inline-block;
	font-weight: bold;
	color: #fff;
	background-color: #ea1515;
	padding-left: 8px;
	padding-right: 8px;
  -webkit-border-radius: 8px;
     -moz-border-radius: 8px;
          border-radius: 8px;
	min-height: 8px;
}
.text_big_ok{
	background-color: #00b772;
}
.text_big_alert{
	color: #333;
	background-color: #ffde16;
}
.text_big_info{
	background-color: #007bff;
}
.text_big_white{
	color: #007bff;
	background-color: #fff;
}
.not-sel{
	cursor: pointer;
	user-select: none;
}

.new_form_error{
	position: fixed;
	z-index: 999999;
	top: 50%;
	left: 50%;
	margin-left: -37.5%;
	min-height:  70px;
	width: 75%;
	box-sizing: border-box;
	transform: translateY(-50%);
}
.new_form_error_close{
	position: absolute;
	right: -15px;
	top: -15px;
}
.iframe_domus{
	display:block;
	width: 1010px;
	height: 680px;
	margin: 0px auto;
	border: 1px solid #dddddd;
}
.list_box_cont{
	align-items: stretch;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
	align-content: flex-start;
	
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	
    width: 100%;
	margin: 0px;
}

.list_box{
	position: relative;
	width: 49%;
	/*
	max-width: 530px;
	min-width: 350px;
	*/
	height: auto;
	padding: 2px;
	margin: 2px;
	margin-bottom: 6px;
	
	background-color: #fff;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
	
	 -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	         box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
			 
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	flex-grow: 1;
	overflow-x: auto;
}
.list_box.fullsize{
	width: 60%;
	max-width: 100%;
	min-width: 60%;
	flex-grow: 2; 
}

.list_box.closed{
	max-height: 300px;
	overflow-y: hidden;
}

.list_box_button{
	display: inline-block;
	width: 32px;
	height: 32px;
	background-image: url(../images/icons_48_black.png);
	background-size: 640px 160px;
	overflow: hidden;
	opacity: 0.6;
	position: absolute;
	right: 2px;
	top: 2px;
}

.list_box_button:hover{
	opacity: 1;
}

.list_box_button.close{
	background-position: -128px 0px;
}

.list_box_button.open{
	background-position: -544px 0px;
}

/* Gestione NOTE */
.box_note{
	position: relative;
	height: auto;
	padding: 2px;
	
	background-color: #fff;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box; 
			 
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	overflow-x: auto;
	
	width: 100%;
	padding: 2px;
	padding-bottom: 4px;
	margin: 0px;
	margin-bottom: 3px;
	
	 -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	         box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}

.box_note.closed{
	height: 45px;
	overflow-y: hidden;
}

.box_note h5{
	padding-top: 3px;
	padding-bottom: 3px;
	font-size: 13px;
}
.nota_removed{
	background-color: #eeeeee;
}

.box_note.nota_not_accepted{
	background-color: #f2dede;
	color: #b94a48;
}
.box_note.nota_accepted{
	background-color: #dff0d8;
	color: #468847;
}
.main_circle{
	width:400px;
	height: 300px;
	
}
.circle_cont {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
}
.circle_main_cont{
	width: 400px;
}

progress {
	background-color: transparent !important;
	border: 0;
	width: calc(100% - 120px);
	height: 4px;
}
progress::-webkit-progress-bar {
	background-color: #f3f3f3;
}
progress::-webkit-progress-value {
	background: #cdeb8e;
	-webkit-transition : width 1s ease;
   -moz-transition : width 1s ease;
     -o-transition : width 1s ease;
        transition : width 1s ease;
}
progress::-moz-progress-bar {
	background: #cdeb8e;
}
.progress_bar_container{
	width: 100%;
}
.progress_bar_percent{
	font-size: 32px;
	display: inline-block;
	width: 120px;
	text-align: right;
}

.btn_calendar{
	opacity: 0.6;
	color: #fdfdfd !important;
	border: 2px solid #fff !important;
}
.btn_calendar.selected{
	opacity: 1;
	color: #fff !important;
	border: 2px solid #333  !important;
}
.calendar_block{
	cursor: pointer;
}
.calendar_block_view{
	color: #fff;
	width: 64px !important;
	height: 32px;
	overflow: hidden;
	font-weight: 600;
	text-overflow: ellipsis;
	text-align: center;
	line-height: 32px;
}
.calendar_table{
	table-layout: fixed;
}

.calendar_name {
	vertical-align: center;
}

.calendar_title, .calendar_names, .calendar_select {
	width: 160px !important;
}
.calendar_select {
	border: 0px;
	font-weight: bold;
	background-color: transparent;
	text-align: left;
	padding: 0;
	margin: 0;
}

.onlyNumberPlus{
	text-align: right;
}
.input_right{
	text-align: right;
}
.form-control{
	padding: 0px !important;
	padding-left: 2px !important;
	padding-right: 2px !important;
}

select[multiple]{
	height: 95px;
}
select{
	color: #000 !important;
}
input{
	color: #000 !important;
}
textarea{
	width: 100%;
	color: #000 !important;
}
@media (max-width: 480px) {
	#menu{
		width: 100%;
	}
	.icon, .iconb{
		width: 280px;
		font-size: 18px;
	}
	.little_box{
		width: 300px;
	}
	.msg_txt{
		width: 230px;
	}
	.panels{
		margin-left: 0px;
		width: 100%;
	}
	.panels h2{
		padding-left: 5px;
		font-weight: 300;
	}
	.panels .text{
		padding-left: 5px;
		padding-right: 5px;
	}
	
	.detail_left{
		display: none;
	}
	.detail_right{
		display: none;
	}
	#detail_container{
		margin-right: 0px;
	}
	
	.login_text{
		width: 85%;
		font-size: 14px;
	}
	.login_text h2{
		font-size: 20px;
	}
	
	.inline_box{
		width: 100%;
	}
	.inline_box.fullsize{
		width: 100%;	
	}
	.lists td{
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
		max-width: 200px;
	}

	.username_fix{
		visibility: hidden;
	}
}

@media (max-width: 800px){
	.inline_box{
		width: 100%;
	}
	.inline_box.fullsize{
		width: 100%;	
	}
	.inline_box.half{
		width: 100%;
	}
	.list_box{
		width: 100%;
	}
	
	.panels .panel_buttons .title{
		color: #fff;
		font-size: 16px;
		position: absolute;
		left: 5px;
	}
	
}

@media (max-width: 1024px){
	.inline_box{
		width: 100%;
	}
	.inline_box.fullsize{
		width: 100%;	
	}
	.inline_box.half{
		width: 100%;
	}
	.list_box{
		width: 100%;
	}
	
	.detail_box{
		width: 100%;
		z-index: 99999 !important;
		
	}
	
	.detail_buttons{
		top: 50px;
		height: 50px;
		background-color: #474749;
		color: #fff;
	}
	
	.detail_buttons .button{
		background-image: url('../images/icons_48.png') !important;
	}
}

@media (max-height: 480px) {


}

@media (max-width: 1280px){
	#background{
		background-image: url("../images/carbon2_low.jpg");
	}
	.bigger_image:hover, .bigger_touch{
		width: 164px;
		height: 164px;
	}
	
	.detail_box .inline_box, .moodal .inline_box{
		width: 100%;
	}
}

@media (min-width: 1920px){

	.list_box{
		width: 32%;
	}
	
	.box_note{
		width: 100%;
	}
}


.pulltorefresh {
  overflow: auto;
  overscroll-behavior: contain;
  height: 300px;
}

.new_form_error {
	background-color: #fff; 
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
	border-radius: 16px;
	border: 1px solid #d2d9e0;
	padding: 10px;
	padding-bottom: 15px;
}

.new_form_error .alert-danger{
	background-color: #f8d7da; 
}

.new_form_error .alert-warning{
	background-color: #fff3cd; 
}

.form_ajax_error{
	color: #c50000;
}

.input-group-text{
	background-color: #fff;
    color: #000;
    border-bottom-left-radius: 0px;
    border-top-left-radius: 0px;
	border-left: 0px;
}

.input-group-append > .form-control{
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	border-right: 0px;
}

.input-group-text.icon_help {
	padding: 0px;
}

input.form-control.big_input {
	height: 52px;
}

.btn.fullsize{
	width: 100%;
	margin-bottom: 4px;	
}

.inline_btn{
	margin-bottom: 4px;
}
.ui-autocomplete{
	z-index: 99999 !important;
}

.stream_progress_header{
	width: 100%;
	background-color: #fff;
	min-height: 60px;
	display: block;
	position: sticky;
	top:0px;
	left: 0px;
	z-index: 999;
	padding-bottom: 10px;
}

body.dark{
	filter: invert(0.8) hue-rotate(180deg);
}

.pagination{
	padding-top: 5px;
}
.page-link{
	color: #123a64;
}
.page-item.active .page-link{
	background-color: #123a64;
	border-color: #123a64;
}
.select2-container .select2-selection--single{
	height: calc(2.25rem + 2px) !important;
	border: 1px solid #ced4da !important;
	font-size: 1rem;
	line-height: 1.5;
	padding: 0px !important;
	padding-left: 2px !important;
}


@media (prefers-color-scheme: dark) {
	
}
