/* Reset */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,code,del,dfn,em,img,q,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,dialog,figure,footer,header,hgroup,nav,section{margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline}article,aside,dialog,figure,footer,header,hgroup,nav,section{display:block}body{line-height:1}a img{border:none}table{border-collapse:separate;border-spacing:0}caption,th,td{text-align:left;font-weight:normal}table,td,th{vertical-align:middle}blockquote:before,blockquote:after,q:before,q:after{content:""}blockquote,q{quotes:""""}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}button::-moz-focus-inner{border:0}

html{
	
}

html,body{
	height:100%;
}

body{
	font-family:'QuickSand',arial,sans-serif;
	
	overflow-x:hidden;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
	color:#000;
	background-color:#fff;
	
}


div.clear-left{
	clear:left;
	height:0px;
	line-height:0px;
	margin:0;
	padding:0
}

div.clear-both{
	clear:both;
	height:0px;
	line-height:0px;
	margin:0;
	padding:0
}

.overlay{
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:1;
	
}

header{
	position:relative;
	height:50px;
	background-color:#003366;
}

header h1{
	display:inline-block;
	line-height:50px;
	color:#fff;
	font-weight:600;
	padding:0 0 0 1.5em;
}

header h1 a{
	text-decoration:none;
	color:#fff;
}



header h1 small{
	color:#888;
	display:inline-block;
	margin-left:.5em;
	text-transform:uppercase;
}

header .page-title {
    display: inline-block;
    top: 0;
    height: 100%;
    color: #fff;
    font-size: 1em;
    font-weight: 500;
    line-height: 50px;
}

header .restricted-area{
	position:absolute;
	right: 0;
	top:0;
	height:100%;
}

header .restricted{
	display:inline-block;
	padding:0 1.5em;
	height:100%;
	line-height:50px;
	background-color:#016abf;
	color:#fff;
	cursor:pointer;
	margin-left:1px;
}

header .restricted span{
	font-weight:600;
}

header .restricted a{
	text-decoration:none;
	color:#fff;
}



.main-container{
	padding:2em;
	padding-bottom:170px;
	background-color:#fff;
	text-align:center;
}

.main-container .form-panel{
	display:inline-block;
	max-width:1220px;
	text-align:left;
	padding-bottom:2em;
}

.detail{
	line-height:1.365em;
	margin-bottom:.5em;
}

.detail span{
	display:inline-block;
	vertical-align:top;
	
}

.detail span.label{
	width:300px;
	font-weight:600;
}

.detail span.value{
	width:calc(100% - 300px);
}

.detail span.value a{
	display:inline-block;
	padding-bottom:.1em;
	text-decoration:none;
	color:blue;
	border-bottom:dotted 1px blue;
	margin-bottom:.2em;
}

.detail span.value a:hover{
	color:blue;
	border-bottom:dotted 1px blue;
}


.main-container .riquadri{
	padding:10em 0;
}

.main-container .riquadro{
	color:#fff;
	font-size:1.365em;
	display:inline-block;
	background-color:#016abf;
	width:400px;
	margin:0 1em;
	padding:2em 0;
	text-align:center;
	cursor:pointer;
	text-decoration:none;
	
}

.main-container .riquadro:hover{
	background-color:#003366;
}

.main-container .riquadro i{
	font-size:1.5em;
	display:inline-block;
	margin-bottom:.75em;
}
	
	

ul.main-menu{
	position:absolute;
	right:1.5em;
	top:0;
	list-style:none;
}

ul.main-menu li{
	display:inline-block;
	
	font-weight:600;
	line-height:50px;
	text-transform:uppercase;
	margin-left:1.5em;
	color:#47a3da;
}

ul.main-menu li a{
	text-decoration:none;
	
	color:#becbd2;
}

ul.main-menu li a:hover{
	color:#768e9d;
}

ul.main-menu li a.logout{
	color:#f00;
}

ul.main-menu li a.logout:hover{
	color:#c00;
}

footer{
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 130px;
	background-color:#fbfbfb;
	border-top:solid 1px #ddd;
}

.page-container{
	position:relative;
	min-height: 100vh;
}




footer .column-left{
	float:left;
	padding:30px 2em 0 2em;
}

footer h1{
	color:#003366;
	font-weight:600;
	font-size:1.1em;
	padding-bottom:.75em;
}

footer .text{
	font-size:.9em;
	line-height:1.1em;
}

footer .column-right{
	float:right;
	padding:20px 2em;
}

footer ul{
	list-style:none;
	
}

footer ul.link{
	font-size:.85em;
	padding-top:1em;
}
footer ul.link li{
	display:inline-block;
	margin-right:.5em;
}
footer ul.link li a{
	text-decoration:underline;
	color:#000;
}

footer ul.logos li{
	display:inline-block;
	margin-left:1.5em;
	vertical-align:top;
}

footer ul.logos li img{
	max-height:100px;
	width:auto;
}



.panel{
	position:fixed;
	width:360px;
	left:50%;
	margin-left:-180px;
	top:50%;
	
	margin-top:-250px;
	color:#fff;
	text-align:center;
}

.panel .logo-container{
	min-height:80px;
}

#toast {
  display:none;
  width: 340px;
  margin-left: -180px;
  background-color: #000;
  color: #fff;
  text-align: center;
  border-radius: 25px;
  padding:1em 10px;
  position: fixed;
  z-index: 1;
  left: 50%;
  top: 40px;
  font-size: 1.37rem;
  z-index:10000001;
  
}

#toast.ok{
	background-color: #080;
}

#toast.ko{
	background-color: #c00;
}

div#loading{
  display:none;
  position:fixed;
  z-index:10000000001;
  top:0;
  left:0;
  bottom:0;
  right:0;
  background-color:rgba(255,255,255,.60);
  background-image:url(../images/ellipsis.gif);
  background-position:center center;
  background-repeat:no-repeat;
  
}




.panel .link{
	margin-top:1.5em;
}

.panel a{
	color:#fff;
	text-decoration:none;
	
}

.panel .main-logo{
	
}

.panel .controls{
	padding:1em 0;
}

.panel .controls .input{
	margin-top:1em;
	position:relative;
	
	font-weight:600;
	color:#000;
}

.panel .controls .button{
	margin-top:1.5em;
}

.panel .controls .input .toggle-psw{
	position:absolute;
	top:.70em;
	right:20px;
}

.panel .controls .input .toggle-psw i{
	cursor:pointer;
}

input[type="text"],input[type="password"],textarea{
	display:inline-block;
	background-color:#fff;
	border:none;
	border-radius:25px;
	
	width:calc(100% - 70px);
	font-family:'QuickSand',arial,sans-serif;
	font-weight:600;
	color:#000;
	padding:.5em 35px;
	line-height:1.5em;
}

input::-ms-reveal,
input::-ms-clear {
	display: none;
}

button, .button{
	display:inline-block;
	background-color:#000;
	border:none;
	border-radius:2px;
	
	
	font-family:'QuickSand',arial,sans-serif;
	font-weight:600;
	color:#fff;
	padding:.6em 0;
	line-height:1.5em;
	cursor:pointer;
}

.button {
	padding:.6em 1em;
	text-decoration:none;
}

.table-container{
	padding:3em 2em 220px 2em;
	background-color:#fff;
}

table.display{
	width:100% !important;
	
}



table.dataTable tbody th, table.dataTable tbody td {
    padding: 1em;
}


table.dataTable thead th, table.dataTable thead td {
    padding: 1em;
}

table.dataTable tfoot th, table.dataTable tfoot td {
    padding: 1em;
}

table.dataTable.pointer tbody tr{
	cursor:pointer;
}

table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
  background-color: #016abf;
  color:#fff;
}

table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
  background-color: #015ea9;
}

.dataTables_wrapper .dataTables_length select {
    border: none;
    border-radius: 4px;
    background-color: #f0f0f0;
    padding: 8px;
	
}

.dataTables_wrapper .dataTables_filter input {
    border: none;
    border-radius: 4px;
    padding: 8px;
    background-color: #f0f0f0;
    margin-left: 5px;
	
}


.cellcontent-green{
	color:#52bb5f
}

.cellcontent-red{
	color:#f00
}

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

div.dt-buttons {
float: right;
}



span.link{
	display:inline-block;
	cursor:pointer;
	border-bottom:dotted 1px #000;
	padding-bottom:.2em;
	margin-bottom:.2em;
	color:#000;
}

span.link:hover{
	border-bottom:dotted 1px #0075ff;
	color:#0075ff;
}

.search-panel{
	margin-bottom:2em;
	border:solid 1px #f0f0f0;
	background-color:#fbfbfb;
	padding:1em;
	
}

.search-panel .legend{
	padding-bottom:1em;
}

.search-panel .form-error{
	font-weight:500;
	color:#f00;
}

.search-panel label{
	display:inline-block;
	
}

.search-panel label.right{
	margin-right:1em;
}

.search-panel label.left{
	margin-left:1em;
}

.search-panel .input{
	display:inline-block;
	padding-bottom:1em;
	padding-right:1em;
}

.search-panel .input.block{
	display:block;
	padding-right:0;
	padding-top:.75em;
}

.search-panel input[type=checkbox]{
	
}

.checkboxOverride input[type="checkbox"]:checked + label:after {
  opacity: 1;
}
.checkboxOverride label {
  background: none repeat scroll 0 0 #EEEEEE;
  border: 1px solid #DDDDDD;
  cursor: pointer;
  height: 25px;
  left: 0;
  position: absolute;
  top: 0;
  width: 25px;
}
.checkboxOverride label:after {
  border-style: none none solid solid;
  content: "";
  height: 5px;
  left: 6px;
  opacity: 0;
  position: absolute;
  top: 7px;
  -ms-transform:rotate(-45deg); /* IE 9 */
  -webkit-transform:rotate(-45deg); /* Safari and Chrome */
  transform:rotate(-45deg);
  width: 10px;
}

.search-panel input[type=text],.search-panel textarea{
	display:inline-block;
	color: #000;
    font-weight:500;
    background-color: #f0f0f0 !important;
    background-image: none !important;
    border: none !important;
    border-radius:4px;
	padding: .5em .5em;
	font-size:1em;
	
}

.search-panel textarea{
	display:block;
	
	margin-top:1em;
	margin-left:1em;
	height:200px;
}

.search-panel input.short{
	width:6em;
}

.search-panel input.medium{
	width:18em;
}

.search-panel button#search{
	margin-left:2em;
}

.search-panel button{
	padding:.5em;
	font-weight:400;
	font-size:1em;
	width:6em;
}

.search-panel button.large{
	width:14em;
	white-space:nowrap;
}

.search-panel button i{
	font-weight:400;
}

.search-panel button[type=button],.search-panel button[type=submit], .search-panel .button{
	background-color:#016abf
}

.search-panel button[type=reset]{
	background-color:#f00
}

.search-panel button.red{
	background-color:#f00
}

.search-panel button.black{
	background-color:black
}

.search-panel button.green{
	background-color:green
}

.search-panel button.yellow{
	background-color:#FFD133;
	color:#000;
}

.search-panel button.margin{
	margin:0 .5em;
}

#charleft{
	text-align:right;
	padding-right:40px;
	padding-top:5px;
}

.richtext{
	display:inline-block;
	text-align:justify;
	max-width:1000px;
	font-size:1.1em;
	padding:1em 0;
}

.richtext h1{
	font-weight:bold;
	font-size:1.5em;
	padding-bottom:1em;
}

.richtext h2{
	font-weight:bold;
	font-size:1.365em;
	padding-bottom:1em;
}

.richtext a{
	color:#003366;
	text-decoration:underline;
}

.richtext a:hover{
	color:#016abf;
}

.richtext ul,.richtext ol{
	padding-left:40px;
	padding-bottom:.5em;
	line-height:1.365em;
}

.richtext p{
	padding-bottom:.5em;
	line-height:1.365em;
}

.attachment-container{
	margin:.75em 1em;
}

.filepond--credits{
	display:none !important;
}

.search-panel select{
	
	border: none;
    border-radius:4px;
    background-color: #f0f0f0;
    padding: .70em .5em;
    font-size:1em;
	
}

.form fieldset{
	padding-top:1em;
	border:dotted 1px #aaa;
	padding:1em 1em 0 1em;
	background-color:#fafafa;
	margin-bottom:.5em;
}

.form fieldset legend{
	font-weight:500;
}

.form label{
	
	display:inline-block;
	vertical-align:middle;
}

.form .input.indented{
	padding-left:1.5em;
}

.form input:not([type=radio]):not([type="checkbox"]),.form textarea, .form select, .form  div.label {
 
  
  color: #000;
  font-weight:500;
  background-color: #fff !important;
  background-image: none !important;
  border: 1px solid #888 !important;
  border-radius:3px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
 
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
          transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
		  
   padding: .5em 20px;
   width:calc(100% - 40px);
}

.form input:focus,.form textarea:focus, .form select:focus {
  border-color: #66afe9 !important;
  outline: 0 !important;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6) !important;
          box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6) !important;
}

.form input[type=radio],.form input[type="checkbox"]{
	display:inline-block;
	margin-right:.5em;
	vertical-align:middle;
}

.attachment-disclaimer{
	display:none;
	padding:0 1em 1em 1em;
}

.remodal-confirm, .remodal-cancel{
	min-width:110px;
	width:140px;
	
}






    
