html, body {
  height: 100%;
}

/**{
    margin: 0px;
    padding: 0px;
}*/

a{
    outline: none;
    border: none;
	/*text-shadow: 1px 1px 2px #FFFFFF;*/
	/*font-weight: 500;*/
}

.link{
    text-decoration: underline;
}

img{
    border: none;
}

p{
    margin: 0px !important;
}

.note{
    font-style: italic;
    font-size: 11px;
}

.clear{
    clear: both;
}

.left{
    float: left;
}

.right{
    float: right;
}

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

.text-left{
    text-align: left;
}

.errors-list, .errors-list-guest{
    background: #FFBABA;
    border: 1px solid #CC0000;
    padding: 10px;
    text-align: center;
    color: #CC0000;
}

#error_calendario{
    text-align: center;  
    background: #FFBABA; 
    font-family: arial; 
    font-weight: bold;
    padding: 6px;
    color: red;
}
label.error {
    color: red;
    font-style: italic;
}

#warnings-list{
    margin: 5px;
    background: #FEEFB3;
    border: 1px solid #9F6000;
    padding: 10px;
    text-align: center;
    color: #9F6000;
}

#errors-list div.error{}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link{
    background-color: #5a6268;
}

.box {
  -moz-border-radius: 15px; /* Firefox */
  -webkit-border-radius: 15px; /* Safari and Chrome */
  border-radius: 15px; /* Opera 10.5+, future browsers, and now also Internet Explorer 6+ using IE-CSS3 */
  border: 1px solid #999;
  behavior: url('css/PIE.htc'); /* This lets IE know to call the script on all elements which get the 'box' class */
}

.box-small {
  -moz-border-radius: 5px; /* Firefox */
  -webkit-border-radius: 5px; /* Safari and Chrome */
  border-radius: 5px; /* Opera 10.5+, future browsers, and now also Internet Explorer 6+ using IE-CSS3 */
  border: 1px solid #999;
  behavior: url('css/PIE.htc'); /* This lets IE know to call the script on all elements which get the 'box' class */
}

.shadow{
  -moz-box-shadow: 0px 0px 5px #999; /* Firefox */
  -webkit-box-shadow: 0px 0px 5px #999; /* Safari and Chrome */
  box-shadow: 0px 0px 5px #999; /* Opera 10.5+, future browsers and IE6+ using IE-CSS3 */
  behavior: url('css/PIE.htc'); /* This lets IE know to call the script on all elements which get the 'box' class */
}

#user-info{
    padding: 10px 10px;
    background: #e7e7e7;
}

#main{
  width: 798px;
  margin: 0 auto;
  background: #fff;
  z-index: 100;
}

#content-wrap{
    position: relative;
    background: #fff;
    padding: 15px;
    z-index: 90;
}

#content-box{
    z-index: 1000;
    padding: 15px;
    background: #fff;
    border: 1px solid #ccc;
    position: relative;
}

#preFooter{
    text-align: center;
    margin-bottom: 15px;
}

#postFooter{
  width: 798px;
  margin: 0 auto;
    clear: both;
    display: block;
    margin-top: 15px;
}

#postFooter a{
    font-family: Arial;
    font-size: 10px;
    font-style: normal;
    font-weight: normal;
    letter-spacing: normal;
    text-decoration: underline;
    word-spacing: normal;
}


#header img {
    height: 53px;
}

/* end Header */

#page-background-glare{
    position: absolute;
    height: 270px;
    left: 0;
    top: 0;
}

#page-background-glare-image{
    background-image: url('../../../images/Page-BgGlare.png');
    background-repeat: no-repeat;
    height: 270px;
    width: 459px;
    margin: 0;
}

html:first-child #page-background-glare{
    border: 1px solid transparent; /* Opera fix */
}

#page-background-simple-gradient{
	position: absolute;
	top:0;	
}

/* Start Content link style */

/* Finish Content link style */

/* Resert some headings default style & links default style for links in headings*/

/* Start Content headings Fonts & Colors  */

/* Finish Content headings Fonts & Colors  */

/* end PostContent */

/* begin PostBullets */

/* Start Content list */

/* Finish Content list */

/* end PostBullets */

/* begin PostQuote */

/* Start blockquote */
blockquote p{
    /*color:#0B1014;*/
    font-family: Arial, Helvetica, Sans-Serif;
    text-align: left;
}

blockquote{
    margin:10px 10px 10px 50px;
    padding:5px 5px 5px 38px;
    /*background-color:#D4E0E8;*/
    /*background-image:url('../images/PostQuote.png');
    background-position:left top;
    background-repeat:no-repeat;*/
}

input, select{
    font-family: Arial, Helvetica, Sans-Serif;
    font-style: normal;
    font-weight: normal;
}

/* begin Menu */
.Footer-text
{
    display:inline-block;
    font-family: Arial, Helvetica, Sans-Serif;
    letter-spacing: 1px;
}

.Footer-text p{
    font-size: 13px;
}

.Footer-text a:link{
	text-decoration: none;
	text-decoration: underline;
}

.Footer-text a:visited{
	text-decoration: none;
	text-decoration: underline;
}

.Footer-text a:hover{
	text-decoration: none;
	text-decoration: none;
}

#form-container{
    margin: 0 auto;
    width: 100%;
}

#form-container table{
    width: 100%;
}

#form-container input[type=text], select{
    width: 99%;
}

#riepilogo-prenotazione fieldset legend{
    font-size: 16px;
    margin-bottom: 0px;
    padding-bottom: 5px;
}

.center{
    text-align: center;
}


.ui-autocomplete{
    cursor: default;
    height: 180px;
    left: 0;
    overflow-y: scroll;
    position: absolute;
    top: 0;
    width: 50%;
    overflow-x: hidden;
    background: #efefef;
    -moz-box-shadow: 0px 0px 7px #666; /* Firefox */
    -webkit-box-shadow: 0px 0px 7px #666; /* Safari and Chrome */
    box-shadow: 0px 0px 7px #666; /* Opera 10.5+, future browsers and IE6+ using IE-CSS3 */
    font-size: 11px;
    behavior: url('css/PIE.htc'); /* This lets IE know to call the script on all elements which get the 'box' class */
}

ul.ui-autocomplete li,ul.ui-autocomplete-custom li{
    border-bottom: 1px solid #ccc;
    font-size: 10px;
    height: 45px;
    clear:both;
    margin: 0px;
    padding: 0px;
    background: #ededed;
}

ul.ui-autocomplete li a{
    display: block;
    height: 40px;
}

.ui-menu .ui-menu-item a {
    display: block;
    font-weight: normal;
    min-height: 0;
    padding: 0px;
    text-decoration: none;
    line-height: 1.2em;
    cursor: pointer;
    color: #333;
}

.ui-menu .ui-menu-item a.ui-state-hover{
    display: block;
    font-weight: normal;
    min-height: 0;
    padding: 0px;
    text-decoration: none;
}

.livesearch-left{
    display: block;
    float: left;
    overflow: hidden;
    padding-left: 5px;
    width: 310px;
    padding-top: 10px;
}

.livesearch-right{
    display: block;
    float: right;
    overflow: hidden;
    padding-right: 5px;
    text-align: right;
    width: 150px;
    padding-top: 5px;
}


/* elenco prestazioni selezionate */
#riepilogo-prestazioni, #riepilogo-prestazioni-submit{
    display: none;
    width: 100%;
    position: relative;
    clear: both;
}

h3.item-lista-prestazioni{
    padding: 5px;
    font-weight: bold;
    font-size: 14px;
    position: relative;
    margin-top: 2px;
}

span.link_remove_artic{
    position: absolute;
    right: 10px;
    cursor: pointer;
}

ul.ui-autocomplete-custom{  
    cursor: default; 
    width: 100%;
    height: 175px;
    overflow-y: scroll;
    overflow-x: hidden;
    margin-bottom: 5px;
    border: 1px solid #ccc;
}	

ul.ui-autocomplete-custom li:hover{
    background: #ccc;
    cursor: pointer;
}

#label_select_prestazione, #label_select_prestazione_medico{
    display: none;
}

select#select_branca{
    font-size: 16px;
}

/* Calendario */
/*#calendario, #filtri-calendario-wrap{
    background: #e7e7e7;
    border: 1px solid #ccc;
    margin-bottom: 5px;
    padding-bottom: 10px;
}*/
table.table{}

/*.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
    padding: 5px;
}*/

table.table,table.table th,table.table td{}

.table-slots-container table{
    border: 1px solid #ccc;
    text-align: center;
    width: 100%;
    font-size: 12px;
}

.table-slots-container table thead, table#table-lista-prestazioni thead{
    background: #aaa;
    color: #333;
    text-align: center;
}

.table-slots-container{
    height: 300px;
    overflow-y: scroll; 
}

#prestazioni-selezionate{
    float: right;
    margin-bottom: 20px;
    width: 100%;
}

#prestazioni-selezionate table#table-lista-prestazioni{
    width: 100%;
}

table#table-lista-prestazioni{
    font-size: 11px;
    border-top: 2px solid #666;
}

.filter-wrap{}

.filter-wrap label{
    display: block;
    clear: both;
}

.filter-wrap select{
    display: block;
    /*width: 160px;*/
}


#loader{
    padding: 10px;
    background: url('../images/ajax-loader.gif') no-repeat center #e7e7e7;
    border: 1px solid #ccc;
    margin-bottom: 5px;
}

.smallloader{
    padding: 10px;
    border: 1px solid #ccc;
    background-color: #e7e7e7;
}

tr.slot-row:hover{
   background: #aaa; 
   cursor: pointer;
}

.slot-row.checked, p.accordion-selected{
    background: #D9EAF7;
    border: 1px solid #c5c5c5;
}

p.accordion-selected .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited, #accordion-disponibilita p.accordion-selected a{
    color: #333;    
}

p.ui-accordion-header a{
    text-transform: capitalize;
}

.slot-row.even{
    background: #fff;
}

.slot-row.odd{
    background: #e7e7e7;
}

#call-to-action-left{
    float: left;
}

#call-to-action-right{}

tr.slot-row.even.slot-row-selected, tr.slot-row.odd.slot-row-selected{
    background: #95B3C6;
}

#calendario-nav{
    margin-top: 5px;
    display: block;
    border-top: 1px dashed #ccc;
    padding-top: 5px;
}

#calendario-nav-left{
    float: left;
    width: 200px;
}

#calendario-nav-center{
    float: left;
    text-align: center;
    width: 300px;
}

#calendario-nav-center p{
    margin: 0px;
    padding: 0px;
}

#calendario-nav-right{
    width: 200px;
    float: right;
    text-align: right;
}

#accordion-disponibilita{
    height: 300px;
    overflow: scroll;
    margin-bottom: 10px;
}

#accordion-disponibilita h3 a{
    color: #fff;
}

/* RIEPILOGO PRENOTAZIONE */

#riepilogo-prenotazione-info-appuntamento-datetime{
    border: 1px solid #666;
    padding: 10px;
    background: #dfdfdf;
}

.riepilogo-item label{
    font-weight: bold;
    margin-bottom: 0px;
}

.riepilogo-item{
    margin-bottom: 5px;
}

#riepilogo-prenotazione fieldset{}

.riepilogo-prenotazione-info-prest-item{
    margin: 10px;
}

.riepilogo-prenotazione-info-prest-item-descr{
    font-size: 12px;
    font-weight: bold;
    float: right;
}

.riepilogo-prenotazione-info-prest-subject{
    font-size: 10px;
}

table#form-guest{
    width: 100%;
}

table#form-guest tr{}

table#form-guest tr td{
    padding: 5px;
    width: 50%;
}

table#form-guest tr td input[type=text]{
    width: 100%;
}

table#form-guest tr td label{
    display: block;
    clear: both;
}

table#form-guest tr td label.error{
    width: 90%;
    color: #CC0000; 
    font-size: 10px;
}

#msg-live-search{
    text-align: center; 
    font-size: 18px; 
    color: #555; 
    line-height: 40px;
}


/*#user_selected{
    border: 1px solid #ccc;
    padding: 10px;
    background: #FAFAFA;
}*/

.modalita-icon{
    width: 16px;
    height: 16px;
    margin-right: 3px;
}

.modalita-icon img{
    padding-top: 2px;
}

#next_step_2{
    margin-bottom: 0px;
}

/* STEPS NAV BAR */

/*.stepper{
    background:  #d0d3d4;
}*/

/*.stepper-active{
    background: #0093D8;
    color: white;
}*/

/*.stepper-complete{
    background: #3498db;
}*/

/*****************/

.ajax_overlay {}
.ajax_loader {
    background: url('../images/ajax-loader.gif') no-repeat center center transparent;
    cursor: pointer;
}

.label_prezzo_prest{
    font-size: x-small;
    background: #666;
    margin-left: 5px;
    color: white;
    padding: 2px 5px;
    border: none;
}

.online-icon{}
.telefono-icon{}
.sportello-icon{}
.online-icon, .telefono-icon, .sportello-icon{
    width: 16px;
    height: 16px;
    margin-left: 7px;
    margin-top: 3px;
    margin-bottom: 3px;
    float: left;
    display: block;
}

.livesearch-icons{
    float: right;
    clear:both;
}

.livesearch-descr-item{
    clear: both;
}

.livesearch-small-left{
    float: left;
}

.livesearch-small-right{
    float: right;
}

div.riepilogo_disponibilita_detail{
    font-size: 11px;
}

th.table_pre_head{
    background: #E7E7E7;
    border: 1px solid #D3D3D3;
    color: #555555;
    font-weight: normal;
}

.dataTables_info{
    font-size: 12px;
}

.ui-datepicker-trigger{
    cursor: pointer;
    padding-left: 10px;
    padding-right: 10px;
}

#utenteregistrato{
    float: right;
}

label.label_help_form{
    font-style: italic;
}

textarea#note_operatore{
    display: block; 
    width: 100%;
    height: 60px;
}

#riepilogo_prenotato_leg_dispo, #riepilogo_prenotato_leg_da_conciliare{
    border: 1px solid #ccc;
}

#table_riepilogo_prenotato img{
    vertical-align: inherit;
}
    

#riepilogo_prenotato_leg_dispo{
    background-color: #DFF2BF;
}

#riepilogo_prenotato_leg_da_conciliare{
    background-color: #FEEFB3;
}

.riepilogo_prenotato_entry{
    margin-bottom: 5px;
    clear: both;
    display: block;
    width: 500px;
    height: 14px;
}

.riepilogo_prenotato_entry label{
    margin-left: 5px;
    font-size: 11px;
    line-height: 15px;
}

#riepilogo_prenotato_legenda{
    display: block;
    margin-top: 10px;
}

span.print-note{
    display: none;
}

#filtri-calendario-wrap{
    width: inherit;
}
.dispo{
    width: inherit;
}
/*.calendario-section-title{
    top: 0px;
    left: 0px;
    width: 100%;
    padding: 5px;
    background: #666;
    color: #fff;
    font-size: 14px;
    clear: both;
}*/

.ui-accordion .ui-accordion-header{
    padding: 10px;
}

.ui-accordion .ui-accordion-content{
    padding: 0px;
}

nav#menu-app li{
    font-size: 12px;
    padding: 0px 5px;
}

nav#menu-app li.active{
    background: #fff;
    border-radius: 4px;
    color: #333;
}

.nav {
    margin-bottom: 15px;
}
.nav a:not(:hover){
    color: #241c69;
}
.nav ul.menu{
    display: flex;  
    text-align: center;
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
    list-style: none;  
}

.nav ul.menu li{
    flex-grow: 1;
}

.nav ul.menu a {
    display: block;
}

.nav ul.menu{
    width: 100%; 
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 1px 2px 0 rgba(0, 0, 0, .24);
}

.nav ul.menu a{
    padding: 1rem 1rem;
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
}

/* states */
.nav ul.menu a:focus{
    outline: none;
}

/* hover animation */
.nav ul.menu a{
    position: relative;
    overflow: hidden;
    font-size: 12px;
    will-change: color;
    transition: color .25s ease-out;
}

.nav ul.menu a.active {
    font-weight: bold;
}

.nav ul.menu a::before, .nav ul.menu a::after{
    content: "";
    width: 0;
    height: 3px;
    background-color: #fff;
    will-change: width;
    transition: width .1s ease-out;
    position: absolute;
    bottom: 0;
}

.nav ul.menu a::before{
    left: 50%;
    transform: translateX(-50%); 
}

.nav ul.menu a::after{
    right: 50%;
    transform: translateX(50%); 
}

.nav ul.menu a:hover::before, 
.nav ul.menu a:hover::after{
    width: 100%;
    transition-duration: .2s;
}

.top-buffer{
    padding-top: 10px;
}

.header-logo{
    margin: 0 !important;
}

.container.text-right.info-user {
    padding: 0px !important;
}
.alert.alert-warning, .alert.alert-success {
    margin: 0px 0px 20px 0px;
}

.container-fluid.text-center.logo {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
.container.text-center.navigation-menu {
    padding: 0px !important;
}

.row{
    margin-left: 0px !important;
    margin-right: 0px !important;
}
.col.navigation-menu {
    padding: 0px;
}

.container.home-text {
    padding: 0px;
}
.user-detail {
    padding-top: 13px;
    padding-bottom: 13px;
}
.title h5,.title h6, .title h4, .title h3, .title h2, .title h1 {
    margin: 0px !important;
    padding-top: 20px;
    padding-bottom: 20px;
}
.col.title {
    padding: 0px;
}
.navigation{
    padding:0px;
}
.subcontent{
    padding:10px 0px 10px 0px;
}
.toggle, .toggle2{
    display: none;
}
input{
    margin: 0px !important;
}
.form-group {
    margin: inherit;
}
.arrow-right {
    width: 0; 
    height: 0; 
    border-top: 60px solid transparent;
    border-bottom: 60px solid transparent;
    border-left: 60px solid green;
}
label, label h6{
    margin:0px;
}
.prestazione-item{
    cursor: pointer;
}

a.nav-link {
    cursor: pointer;
}
#select_prestazione, #select_prestazione_medico {
    /*height: 500px;*/
    /*overflow: scroll;*/
    display: none;
}

.section {
    padding: 10px !important;
}
.main-title h3 {
    padding-bottom: 0px !important;
}

.custom-dispo{
    height: 200px !important;
    overflow: scroll !important;    
    margin: 0px;
}
.dispo-detta{
    height: auto !important;
}

.ui-state-active a, .ui-state-active a:visited, .ui-state-active{
    border: 1px solid #000000;
    background: #000000;
    color: white !important;
}
tr.slot-row:hover {
    background: #BDBDBD !important;
    cursor: pointer;
}
.container.footer {
    padding: 0px;
    padding-top: 0px;
}
.submit-button{
    padding-top: 20px;
}
button:focus {
    outline: none !important;
}
.anagrafica{
    padding-top: 20px;
}
.col.link-col {
    padding: 0px;
    padding-top: 5px;
}
.advice {
    margin: 0px !important;
}
.eye{
    cursor: pointer;
}
.uppercase{
    text-transform: uppercase;
}
input#select-data {
    cursor: pointer;
}
.card-body.patient {
    padding: 0px;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}
.card.patient {
    padding: 0px;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}
#ls-user-select-wrap{
    display:none;
}
fieldset {
    background-color: #f8f9fa;
    border: 1px solid lightgray;
    padding: 20px;
}
legend {
    padding: 5px;
    margin: 0px;
}
.alert.alert-warning.home-text {
    margin: 0px;
}
.card-group.stepsy {
    padding-top: 20px;
}


/* Schermi grandi o ad alta risoluzione */
@media all and (min-width: 1690px) {
    .col.login-card {
        padding-left: 30%;
        padding-right: 30%;
    }
}

/* Schermi Desktop o Portatili */
@media all and (min-width: 1280px) and (max-width: 1689px) {
    .col.login-card {
        padding-left: 30%;
        padding-right: 30%;
    }
}

/* Tablet in modalità orizzontale */
@media all and (min-width: 737px) and (max-width: 1279px) {
    .col.login-card {
        padding-left: 30%;
        padding-right: 30%;
    }
}

/* Tablet in modalità verticale */
@media all and (min-width: 481px) and (max-width: 736px) {  }

/* Smartphone o piccoli Tablet */
@media all and (max-width: 480px){ 
    .nav ul.menu{
        display: block;  
        text-align: center;
        padding-left: 0;
        margin-top: 0;
        margin-bottom: 0;
        list-style: none;  
    }

    .nav ul.menu li{
        clear: both;
        border-bottom: 1px solid #ccc;
    }
    
    .nav ul.menu li a{
        line-height: 0.5em;
    }
}
/*@media (min-width: 576px){
    .card-group>.card:first-child {
        border-top-right-radius: 50px;
        border-bottom-right-radius: 50px;
    }
    .card-group>.card:not(:first-child):not(:last-child):not(:only-child) {
        border-radius: 0px 50px 50px 0px;
    }
    .card.last{
        border-right: 0px;
    }
    .card{
        border-left: 0px;
        border-bottom: 0px;
        border-top: 0px;
    }
    .card-group{
        border: 1px solid rgba(0,0,0,.125);
    }
}*/
.languages {
  padding-left: 10px;
}
.table {
	max-width: none;
	table-layout: fixed;
	word-wrap: break-word;
}