html{
    
    height: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body{

    font-family: 'Open Sans', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f2f2f2;
    position: relative;
        padding-bottom: 50px; min-height: 100%;
}

a{
    
    color: inherit;
    cursor: pointer;
    
}

a:hover{
    
    color: inherit;
    
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #edf1f2 !important;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #edf1f2 !important;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #edf1f2 !important;
}


.logo{
    
    text-align: center;
    padding: 15px;
    background-color: #FFF;
    
}


.navbar-dark{
    background-color:  #009ee2;
    padding-left: 40px;
    padding-right: 40px;
}

.navbar-dark .navbar-nav .nav-link {
    
    color: #FFF;
    font-size: 14px;
    
}

.footer{    
    width: 100%;
    position: absolute;
    bottom: 0;
    background-color:  #009ee2;
    color: #FFF;
    font-size: 14px;
    line-height: 53px;
}

.footer .name{    
    padding-left: 40px;
}

.footer .data{    
    padding-right: 40px;
    text-align: right;
}



/*---------------LOGIN----------------------*/


.login h1{
    margin-top: 30px;
    font-weight: 100;
    font-size: 85px;
    line-height: 80px;
    letter-spacing: 3px;
}

.login h2{
    margin-top: 30px;    
    font-size: 16px;
    color: #9d9098;
    font-weight: 700;
    
}


.login h3{
    margin-top: 10px;    
    font-size: 12px;
    color: #9d9098;
    margin-bottom: 50px;
    
    
}

.login a{
    display: inline-block;
    margin-left: 20px;
    text-decoration: underline;
    font-size: 12px;
    
}

.login button{
    display: block;
    margin-top: 20px;
    background-color: #009ee2;
    color: #FFF;
    width: 200px;
    margin-bottom: 70px;
    
    
}

.login input{
    margin-top: 8px;
    
    
}


.bg-logo{
    
    
    background-image: url("graf/bg-logo.png");
    background-size: 40%;
    background-position: right 25% bottom 60px;
    background-repeat: no-repeat;
   
    
}

/*----------------------MENU-------------------*/

#menu{    
    position: relative;
    background-color: #FFF;    
}

#menu .logo{    
    position: absolute;
    left: 0;    
}
#menu .logo img{    
    height: 64px;
}


#menu .log{    
    position: absolute;
    right: 20px; 
    top: 38px;
    font-size: 14px;
    
}

#menu .log span{
    
    margin-left: 12px;
    cursor: pointer;
    
}


#menu .links{    
    position: relative;
    margin: auto;
    padding: 25px 0 15px 0;
    font-weight: bold;
    width: 800px;
    height: 100px;
}


#menu .log span, #menu .links i.fa {
    display: inline-block;
    border-radius: 20px;
    width: 40px;
    height: 40px;
    color: #FFF;
    margin-right: 5px;
    font-size: 20px;
    line-height: 40px;
    text-align: center;

}

#menu .log span{    
    background-color: #009ee2;    

}

#menu .links i.green{
    background-color: #9dce80;    
}

#menu .links i.blue{
    background-color: #7fcef0;    
}


#menu .links a:hover i.green{    
    background-color: #57a132;    
}

#menu .links a:hover i.blue{    
    background-color: #009ee2;    
}

#menu .links a.selected i.green{    
    background-color: #57a132;    
}

#menu .links a.selected i.blue{    
    background-color: #009ee2;    
}



#menu .links span {
    font-size: 36px;
    font-weight: 100;
    display: inline-block;
    top: 4px;
    position: relative;
    color: #009ee2;
    margin: 0 20px;

}

.sub_menu{
    
    color: #FFF;
    line-height: 50px;
    display: none;
    
}

.sub_menu a.selected{
    
    border-bottom: 2px solid #FFF;
    
}



.sub_menu span{
    
    margin: 0 15px;
    
}


.sub_menu_green{
    
    background-color: #57a132;
    
}


.sub_menu_blue{
    
    background-color: #009ee2;
    
}

.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
}

.tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px 0;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -60px;
    opacity: 0;
    transition: opacity 0.3s;
}

.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

/*--------------------------------------------*/
/*------------------MODAL---------------------*/
.modal-lg{
    
    max-width: 1120px;
    border-radius:0;
}

.modal-header{
    
    color: #FFF;
    background-color: #666678;
    border-radius:0;
    padding: 10px 30px;
    
}

#Modal h5{
    
    color: #FFF;
    background-color: #666678;
    border-radius:0;
    padding: 10px 30px;
    
}

#Modal h5 span{
    
    display: block;
    float: right;
    
}

.no-padding{
    padding: 0;
    
}

.modal-content{
    
    border-radius:0;
    
}

.no-save{
    color: #9ca6af;
    text-align: right;
    font-size: 12px;
}

.form-save label{
    
    padding-left: 10px;
    color: #9ca6af;
    text-transform: uppercase;
    font-size: 12px;
    margin-bottom: 0;
    margin-top: 8px;
    
}

input[type=submit]{
    background-color: #edf1f2;
    font-weight: bold;
    color: #9ea6af;
}

.form-save button{
    
    background-color: #ffcccc;
    
}

/*--------------------------------------------*/
/*----------ASL-------------------------------*/

div.asl{
    color: #FFF;
    background-color: #bfbfca;
    
    padding: 10px 30px;
    margin: 2px 0;
    font-weight: bold;
}    
    

.asl .caret{
    
    display: block;
    float: right;
    
}

.asl .hidden_caret{
    
    display: none;
    
    
}

.asl_selected{
    
    background-color: #666678 !important;
    
}
    
/*--------------------------------------------*/    

/*----------------GRID---*/



.jsgrid-header-row{    
    color:#FFF;
    background-color: #7fcef0;
    text-transform: uppercase;
}

#grid_green .jsgrid-header-row{    
    
    background-color: #9dce80;
    font-size: 12px;
    
}



.jsgrid-header-row>.jsgrid-header-cell{
    
    background: transparent;
    
}
.jsgrid-header-sort-asc:before,.jsgrid-header-sort-desc:before{
    
    border: 0;
    
}
.jsgrid-header-sort-asc:after {    
    content: "\f106";
    font-family: 'Font Awesome\ 5 Free';
    border: 0;
    display: inline-block;
    margin-left: 5px;
}
.jsgrid-header-sort-desc:after {    
    content: "\f107";
    font-family: 'Font Awesome\ 5 Free';
    border: 0;
    display: inline-block;
    margin-left: 5px;
}

.jsgrid-header-row .jsgrid-align-left, .jsgrid-header-row .jsgrid-align-right{
    
    text-align: left;
    
}

.jsgrid-grid-header,
.jsgrid-grid-body{
  overflow: auto;
}

.grid{
    
    display: none;
    
}

.jsgrid-cell i{
    
    margin: 0 5px;
    color: #009ee2;
    
}

#grid_green .jsgrid-cell i{
    color: #9dce80;
    
}

#jsGrid{
    
    margin: 20px auto;
    
}

.jsgrid-pager-container{
    
    margin-top: 30px;
    
}
.jsgrid-pager{
    
    text-align: right;
    
}


.jsgrid-pager span{
    
    border: 1px solid #22B2D6; 
    display: inline-block;
    min-width: 40px;
    text-align: center;
    
}

#grid_green .jsgrid-pager span{
    
    border: 1px solid #57a132; 
    
    
}

.jsgrid-pager span a{
    
    color: #22B2D6; 
    
}

#grid_green .jsgrid-pager span a{
    
    color: #57a132; 
    
}


.jsgrid-pager span:hover{
    
    background-color: #22B2D6; 
}

#grid_green .jsgrid-pager span:hover{
    
    background-color: #57a132; 
}

.jsgrid-pager span:hover a{
    
    color: #FFF; 
    
} 

.jsgrid-pager span a:hover{
    
    text-decoration: none;
    
} 

.jsgrid-delete-button{
    background-image: url("graf/times-circle-solid.png") !important;
    
    background-size: contain;
    background-position: center;
    
}

.jsgrid-edit-button{    
    
    background-image: url("graf/edit-solid.png") !important;
    background-size: contain;
    background-position: center;
    
    
}

.jsgrid-selected-row>.jsgrid-cell{
    
    background-color: transparent;
    
}

.over_range td:nth-child(5){
    
    background-color: violet;
    color: #FFF;
}

.rischio_alto td:nth-child(5){
    
    background-color: red;
    color: #FFF;
}

.rischio_medio td:nth-child(5){
    
    background-color: orange;
    
}

.rischio_basso td:nth-child(5){
    
    background-color: yellow;
    
}


/*----------------END  GRID---*/
/*---------------FORM BOX-----*/


#box_hospital table{
    
    color: #9d9098;
    
}


#box_hospital table th{
    
    padding: 0 5px;
    
}
#box_hospital table td{
    
    text-align: center;
    
}

#box_hospital table td:first-of-type{
    
    text-align: left;
    width: 100%;
    
}

/*---------------------------*/

/*---------QUESTIONARIO------*/

div.questionario{
    color: #FFF;
    background-color: #57a132;    
    padding: 10px 30px;
    margin: 2px 0;
    font-weight: bold;
}

.new-step{
    
    display: block;
    float: right;
    font-size: 12px;
    font-weight: 100;
    line-height: 26px;
    vertical-align: middle;
    margin-right: 30px;
    
}

.new-step span{
    
    display: block;
    float: left;
    margin-right: 8px;
    
}

div.step{
    
    background-color: #9ca6af;
    color: #FFF;
    padding: 10px 30px 10px 50px;
    margin: 2px 0;
    font-weight: bold;
}


.step_selected{
    
    background-color: #666678 !important;
    
}

.step .caret{
    
    display: block;
    float: right;
    
}

.step .hidden_caret{
    
    display: none;
    
    
}
/*----------------------------*/
div.section{
    
    background-color: #7fcef0;
    color: #FFF;
    padding: 10px 30px 10px 70px;
    margin: 2px 0;
    font-weight: bold;
}


.section_selected{
    
    background-color: #009ee2 !important;
    
}

.section .caret{
    
    display: block;
    float: right;
    
}

.section .hidden_caret{
    
    display: none;
    
    
}
.new-section{
    
    display: block;
    float: right;
    font-size: 12px;
    font-weight: 100;
    line-height: 26px;
    vertical-align: middle;
    margin-right: 30px;
    
}
.new-section span{
    
    display: block;
    float: left;
    margin-right: 8px;
    
}
.section_section{display: none;}

.step_section{display: none;}

.step_section table{width: 100%;}
.step_section table th{background-color: #7fcef0; color: #FFF; text-transform: uppercase; padding: 10px; border: 1px solid #FFF; width:50%;}
/*---------------------------*/
div.question{
    
    background-color: #9dce80;
    color: #FFF;
    padding: 10px 30px 10px 90px;
    margin: 2px 0;
    font-weight: bold;
}


.question_selected{
    
    background-color: #57a132 !important;
    
}

.question .caret{
    
    display: block;
    float: right;
    
}

.question .hidden_caret{
    
    display: none;
    
    
}
.new-question{
    
    display: block;
    float: right;
    font-size: 12px;
    font-weight: 100;
    line-height: 26px;
    vertical-align: middle;
    margin-right: 30px;
    
}
.new-question span{
    
    display: block;
    float: left;
    margin-right: 8px;
    
}



/*---------------------------*/
.question_section{
    
    
    padding-left: 110px;
    background-color: #FFF;
    display: none;
}


/*---------------------------*/

.step_section table{width: 100%;}



.step_section table td:last-of-type{color:#7fcef0;white-space:nowrap;  }
.step_section table tr:hover{background-color: #f2f2f2;}
.step_section table td{color: #000; padding: 10px; border: 1px solid #FFF;width:50%;}
.step_section table a{cursor: pointer; margin: 0 5px; }


/*---------------------------*/

/*********INDAGINI*************/
.indagini-save{
    
    
    margin: 20px 0;
    display: block;
    float: right;
    border: 1px solid #9ca6af;
    border-radius: 4px;
    background-color: #dce6e8 !important;
    padding: 10px;
    color: #9ca6af;
    
}

.step-link{
    
    float: left;
    font-size: 12px;
    line-height: 77px;
    
}

.step-link a{
    
    white-space:nowrap;
    
}



.indagini-section{
    
    border: 1px solid #dce6e8;
    padding: 0px;    
    font-size: 12px;
}

.indagini-box{    
   padding: 10px;
   border-bottom: 1px solid  #dce6e8;
   width: 100%;
}

 label.ck-input{
    
    display: block;
    float: left;
    margin-top: 0;
    font-weight: normal !important;
    width: 90%;
    margin-top: 8px;
}

input.ck-input{
    
    display: block;
    float: left;
    margin-top: 10px;
    margin-right: 4px;
}


.indagini-section label{
    
    display: block;  
    padding: 0;
    color: #000;
    font-weight: bold;
}


h6.indagini-section-title {
    color: #FFF;
    background-color: #9ca6af;
    padding: 10px 10px;
    margin: 10px 0 0 0;
    font-size: 1.25rem;
}


h6.indagini-section-title-small {
    color: #FFF;
    background-color: #9ca6af;
    padding: 10px 20px;
    margin: 10px 0 0 0;
    font-size: 1rem;
}


h6.indagini-section-title .indagini-section-title-note{
    font-size: 12px;
    font-style: italic;
}

.indagini-box h3{
    
    margin: 10px 5px 0 5px;
    width: 100%;
    background-color: #dce6e8 !important;
    padding: 10px;
    color: #9ca6af;
    font-size: 14px;
    
}

.indagini-box h3:first-of-type{
    margin-top: -11px;
}

/*****************************/

.chart_container{
    
    width: 70%;
    margin: 30px auto;
    
    
}