/* per impedire zoom su input form da smartphone */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    select:focus, textarea:focus, input:focus {
        font-size: 16px !important;
    }
    select, textarea, input {
        font-size: 16px !important;
    }
}

@media screen and (max-width: 767px){
    .table-responsive > .table > thead > tr > th, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > td {
        white-space: normal;
    }
}

textarea {
    resize: vertical;
}
label{padding-top: 4px;}
/* -------------------- CUSTOM PANEL -------------------- */

.panelHeaderSezioneCustom{
    padding: 5px 15px !important;
    border: 1px solid rgba(0, 0, 0, 0.125) !important;
    background-color: #515b62;
    color: #ffffff;
}

.panelHeaderSottoSezioneCustom{
    padding: 5px 15px !important;
    border: 1px solid rgba(0, 0, 0, 0.125) !important;
    width: 16.666667%;
    text-align: center;
    background-color: #515b62;
    color: #ffffff;
}

.panelBodySezioneCustom{
    padding: 5px 5px !important;
    border: 1px solid rgba(0, 0, 0, 0.125);
    background-color: rgba(193, 193, 193, 0.2);
}

.panelBodySottoSezioneCustom{
    padding: 10px !important;
    border-top: 1px solid rgba(0, 0, 0, 0.125);
    /*border-bottom: 1px solid rgba(0, 0, 0, 0.125);*/
    margin: 0 !important;
    background-color: rgba(158, 182, 244, 0.0);
}

.half {
    width: 50% !important;
}
.one-third {
    width: 33% !important;
}
.background-white {
    background-color: #FFF;
    border: 1px solid rgba(0, 0, 0, 0.125);
}
.background-light {
    background-color: #edf5ff;
}
.borderLeft {
    border-left: 1px solid #2c86cb;
}
.color-white {color: #FFF;}

.panelBodyTabelle{
    padding: 5px 5px !important;
    border: 1px solid rgba(0, 0, 0, 0.125);
    background-color: rgba(236, 236, 236, 0.46);
}

/* panel-custom */
.panel-custom {border: 1px solid #2C86CB !important;}
.panel-custom .panel-heading {
    font-size: 1.2em;
    background-color: rgba(47, 147, 227, 0.3) !important;
}
.panel-custom .panel-footer {
    font-size: .8em;
}
.panel-custom .panel-heading, .panel-primary .panel-footer{
    background-color: rgba(47, 108, 165, 0.39);
    color: #000;
}
.border {
    border: 1px solid #c1c1c1 !important;
}
.borderinfo {
    border: 1px solid #316C90 !important;
}
.bordersuccess {
    border: 1px solid #227F3C !important;
}
.borderdanger {
    border: 1px solid #D30026 !important;
}
.positionPopOver{
    position:absolute;top:15%;left:80%;width: 20%;
}

.font12{
    font-size: 12px !important;
}
.font14{
    font-size: 14px !important;
}
.font16{
    font-size: 16px !important;
}
.font18{
    font-size: 18px !important;
}
.font20{
    font-size: 20px !important;
}

/*
44  134 203     blu
26  177 148     verde aq
31    146   197     blu ch
34  34  34  grigio
*/

/* -------------------- SCROLLABLE Y -------------------- */

.maxHeightScrollY{
    max-height: 90vh;
    overflow-y: scroll;
}

/* -------------------- CLEAR -------------------- */
.clear {
    clear: both;
}

/* -------------------- DISPLAY -------------------- */
.forzaBlock {
    display: block;
}
.forzaInline {
    display: inline-block;
}

/* --------------- rounded span --------------------- */
.infoRoundAlert {
    /*background-color: #265b89;*/
    background-color: #d9544b;
    color: #fff;
    padding: 3px 5px;
    -moz-border-radius: 25%;
    border-radius: 50%;
    font-size: 9px;
}
.infoRound {
    /*background-color: #265b89;*/
    background-color: #337ab7;
    color: #fff;
    padding: 3px 5px;
    -moz-border-radius: 25%;
    border-radius: 50%;
    font-size: 9px;
}

/* --------------- REQUIRED / ERROR / INFO ---------------- */

.requiredField{
    border-left: 4px solid #dc3545 !important;
}
.validField{
    border-left: 4px solid #35dc45 !important;
}

.red {
    color: #dc3545;
}

.inf {
    color: yellowgreen;
}
.inf:hover {
    color: #bbf93d;
}

/* -------------------- CURSORE -------------------- */

.pointer{
    cursor: pointer;
}
.cursorArrow {
    cursor: default;
}
.cursorDisabled{
    cursor: not-allowed;
}

/*---------------------- GRASSETTO-------------------*/

.grassetto{
    font-weight: bold;
}
/*---------------------- TEXT-ALIGN-------------------*/

.textRight{
    text-align: right;
}

/* -------------------- PADDING -------------------- */

.padding0{
    padding: 0 !important;
}

.padding3{
    padding: 3px !important;
}

.padding5{
    padding: 5px !important;
}

.padding10{
    padding: 10px !important;
}

.padding20{
    padding: 20px !important;
}

.paddingLR0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.paddingL10{
    padding-left: 10px;
}

.paddingL30{
    padding-left: 30px;
}

.paddingT29 {
    padding-top:29px;
}
.paddingTB4 {
    padding: 4px 0 !important;
}
.paddingTB4LR15{
    padding: 4px 15px !important;
}

.paddingTB10{
    padding: 10px 0 !important;
}
.paddingTB5{
    padding: 5px 0 !important;
}

.paddingLR5{
    padding: 0 5px !important;
}

.paddingLR10{
    padding: 0 10px !important;
}

.paddingL5{
    padding: 0 0 0 5px !important;
}

.paddingB10p {
    padding-bottom: 10% !important;
}

.paddingSort {padding: 4px !important;}

.containerUtenteHeader{
    float: right;
    padding: 1% 2% 0 0;
}

.containerUtenteHeader .infoUtente{
    display: block;
    color: #fff;
    font-size: 1.1em;
}
.mostraMenuContainer{
    margin-left: 20px;
    float: left;
}
.horizontalBarButtonContainer{
    text-align: right;
}

/* ----------- BOTTONI HORIZONTAL BAR ------------ */

.horizontalBarButton{
    color: #eaeaea !important;
    background-color: rgba(44, 134, 203, .5) !important;
    border: 2px solid #eaeaea !important;
    margin-right: 5px;
}
.horizontalBarErrorButton{
    color: #eaeaea !important;
    background-color: rgba(255, 0, 0, .8) !important;
    border: 2px solid #eaeaea !important;
    margin-right: 5px;
}
.horizontalBarButton:hover, .horizontalBarButton:active, .horizontalBarButton:visited{
    color: #FFF !important;
    background-color: #349DEE !important;
}
.horizontalBarErrorButton:hover, .horizontalBarErrorButton:active, .horizontalBarErrorButton:visited{
    color: #FFF !important;
    background-color: rgba(255, 0, 0, .6) !important;
}

.btn-custom {
    font-size: 17px;
    padding: 0px 5px 2px 5px;
    line-height: 1.5;
    border-radius: 3px;
}
.btn-custom span {font-size: 13px !important;}
.btn-custom .fa {vertical-align: text-bottom;}
/* --------- BOTTONI BARRA TITOLO SEZIONE --------- */
.titoloSezione {
    line-height: 40px;
}
.headerPageButton {
    color: #eaeaea !important;
    background-color: rgba(44, 134, 203, .5) !important;
}
.headerPageButton:hover, .headerPageButton:active, .headerPageButton:visited {
    color: #FFF !important;
    background-color: rgba(44, 134, 203, .8) !important;
}
.headerPageButtonSave {
    color: #eaeaea !important;
    background-color: rgba(8, 179, 49, 0.8) !important;
}
.headerPageButtonSave:hover, .headerPageButtonSave:active, .headerPageButtonSave:visited {
    color: #FFF !important;
    background-color: rgba(11, 217, 59, 0.8) !important;
}

/* -------------------- ICONE -------------------- */
.iconaSfondo {
    color: #2c86cb;
}

.panelBodySottoSezioneCustom table tr td {
    vertical-align : middle !important;
}

/* -------------------- BORDI -------------------- */
.border0 {border: none !important;}

/* -------------------- FONT -------------------- */
.font10 {font-size: 10px !important;}
.font12 {font-size: 12px !important;}
.font14 {font-size: 14px !important;}

/* -------------------- MARGIN -------------------- */
.marginAuto {
    margin: auto;
}
.margin0 {
    margin: 0 !important;
}
.margin3 {
    margin: 3px !important;
}
.margin10 {
    margin: 10px !important;
}
.marginB0{
    margin-bottom: 0 !important;
}
.marginB5{
    margin-bottom: 5px !important;
}
.marginB10{
    margin-bottom: 10px !important;
}
.marginB20{
    margin-bottom: 20px !important;
}
.marginT3 {
    margin-top: 3px !important;
}
.marginT10 {
    margin-top: 10px !important;
}
.marginT15percent{
    margin-top: 15% !important;
}
.marginT10percent{
    margin-top: 10% !important;
}
.marginT5percent{
    margin-top: 5% !important;
}

.marginT15{
    margin-top: 15px !important;
}

.marginT20{
    margin-top: 20px !important;
}

.marginT36{
    margin-top: 36px !important;
}

.marginL0 {
    margin-left: 0 !important;
}

.marginL10 {
    margin-left: 10px !important;
}

.marginL20 {
    margin-left: 20px !important;
}

.marginX2 {
    margin: 0 2px;
}

.marginX10 {
    margin: 0 10px;
}

.marginY20 {
    margin: 20px 0;
}

.marginR5 {
    margin-right: 5px !important;
}
.marginR10 {
    margin-right: 10px !important;
}

/* -------------------- MODIFICHE CSS BOOTSTRAP -------------------- */

input[type=number] {
    padding: 1px 5px;
}
.form-control:focus {
    color: #212529;
    background-color: #fff;
    border-color: rgba(2, 1, 1, 0.09);
    outline: none;
    box-shadow: 0 0 0 0.1rem rgba(110, 129, 173, 0.26);
}

.form-control-required:focus {
    color: #212529;
    background-color: #fff;
    border-color: rgba(255, 2, 24, 0.09);
    outline: none;
    box-shadow: 0 0 0 0.1rem rgba(255, 2, 24, 0.26);
}

.form-group{
    /*margin-bottom: 5px !important;*/
}

.table-hover > tbody > tr:hover {
    /*background-color: #fafafa !important;*/
    background-color: #d3e8fa;
}
.table > tbody > tr > td {
    vertical-align : middle;
}

.panel-primary .panel-heading {
    background-color: rgba(44, 134, 203, 1);
}
.panel-primary .panel-footer {
    background-color: rgba(47, 147, 227, 0.5);
}

.panel{
    margin-bottom: 10px;
}

.panel-body {
    padding: 5px 10px;
}

/* -------------------- SIDEBAR -------------------- */

.hrAlternative {
    margin-top: 10px;
    margin-bottom: 10px;
    border: 0;
    border-top: 1px solid #2C86CB;
}
.bgColor{
    background-color: #515b62;
}
.bgColorLight {
    background-color: #e7e7e7;
}
.bgColorWhite {
    background-color: #FFF;
}

.bgHover:hover {
    background-color: #e7e7e7;
}

.horizontalBar{
    height: 80px;
    background-color: rgba(44, 134, 203, 1) !important;
    z-index: 1;
}

#contenitorePagina{
    background-color: #fff;
    padding: 10px;
    min-height: 80vh;
}

.sidebarOpened, .sidebarClosed {
    height: 100%;
    position: absolute;
    z-index: 1;
    overflow-x: hidden;
    transition: ease 0.5s;
    width: 200px;
}

.sidebarOpened {left: 0;}
.sidebarOpened .menu-testo {display:inline-block;}

.sidebarClosed {left: -150px;}
.sidebarClosed .menu-testo {display:none;}
.sidebarClosed .menu-container {text-align: right;}


.contentPart, .contentFull {
    position: absolute;
    right: 0;
    transition: ease 0.5s;
    width: 100%;
}
.contentFull {padding-left: 50px;}
.contentPart {padding-left: 200px;}

@media only screen and (max-width: 768px) {
    .sidebarClosed {left: -150px;}
    .sidebarOpened {left: 0;}
    .contentPart {padding-left: 200px;}
    .contentFull {padding-left: 50px;}
}

/* -------------------- MENU -------------------- */
#containerMostraMenu {
    background-color: #2c86cb;
    color: rgba(255, 255, 255, .9);
    margin-top: -3px !important;
    padding-top: 13px !important;
}
.primoLivello, .secondoLivello, .mostraMenu {
    padding: 10px;
}
.mostraMenu {
    color: #fff;
    background-color: #2c86cb;
}
.primoLivello {
    color: #3D3D3D;
    background-color: #b3d5f5;
    border-bottom: 1px solid #2c86cb;
}
.primoLivello:hover {
    background-color: #d3e8fa;
}

.secondoLivello {
    color: #3D3D3D;
    background-color: #fff;
    padding-left: 20px;
    border-bottom: 1px solid #3D3D3D;
}
/* -------------------- end MENU -------------------- */

/* -------------------- LOADER -------------------- */

.backgroundLoaderFull,
.backgroundLoaderPart{
    background: rgba(47, 49, 47, 0.6);
    z-index: 10;
    width: 100%;
    min-height: 75vh;
}

.backgroundLoaderPart{
    padding-left: -200px;
}

.containerLoader{
    z-index: 10;
    padding-top: 10%;
}

.loader {
    border: 30px solid #f3f3f3;
    border-radius: 50%;
    border-top: 30px solid #0083a9;
    width: 200px;
    height: 200px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
    margin: auto;
    z-index: 10;
}

@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* -------------------- container form contratto -------------------- */
#container-form-nuovo-contratto {min-height: 60vh;}
/* -------------------- container form contratto -------------------- */
.vAlignIcone {
    vertical-align: -5% !important;
}
/* -------------------- input form impostazioni stampalog -------------------- */
#impostazioniStampa label {font-weight: normal !important;}
#impostazioniStampa .lineLabel {line-height:  27px; font-weight: bold;}

/*
.input-sm {
    height: 30px;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}
.form-control {
    display: block;
    width: 100%;
    height: 34px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -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, -webkit-box-shadow ease-in-out .15s;
    -o-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;
}
*/
.OLDinputImpStampa{
    color: #555;
    background-color: #fff;
    border: 1px solid #ccc;
    -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, -webkit-box-shadow ease-in-out .15s;
    -o-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: 3px;
    height: 20px;
    padding: 5px 10px;
    font-size: 13px;
    border-radius: 5px;
}
.inputImpStampa{
    display: inline-block;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    -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, -webkit-box-shadow ease-in-out .15s;
    -o-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;

    height: 25px;
    padding: 5px 10px !important;
    font-size: 11px;
    border-radius: 3px;
}
.modalStampa {width: calc(100% - 400px); margin:100px auto;}
.marginAlert {margin: 10px 15px;}
.marginAlert .fa {padding: 0 10px;}

.buttonAsDiv {
    font-size: 14px !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    border-radius: 0 !important;
    padding: 5px 0 !important;
    width: 100%;
}
.rataDefault {
    width: 100%;
    color: #fff;
    background-color: #336885;
    border: 1px solid #265b89;
    margin: 5px 0;
    text-align: center;
    cursor: pointer;
}
.rata {
    width: 100%;
    color: #fff;
    background-color: #2c86cb;
    border: 1px solid #265b89;
    margin: 5px 0;
    text-align: center;
    cursor: pointer;
}
.rataSelezionata {
    background-color: #d3e8fa;
    color: #515b62;
    border: 1px solid #305b85;
    cursor: default;
}

.gold{color: #ffd700;}
.grigio{color: #515b62;}
.bordoGrigio {border: 1px solid #515b62;}

/* titolo sottolineato */
.titoloSottolineato {
    border-bottom: 1px solid #2c86cb;
    padding-bottom: 5px;
}

/* nuovo dettaglio rate */
.nuovoDettaglioRate{
    background-color: #F5F5F5;
    border: 1px solid #DEDEDE;
    margin-bottom: 10px;
}

/* OVERRIDE MULTISELECT */
.multiselect-parent {
    width: 100%;
}

.multiselect-parent .dropdown-toggle {
    width: 100%;
}

.multiselect-parent .dropdown-menu {
    width: 100%;
}
/* end OVERRIDE MULTISELECT */

/* schede contratto */
.setup-panel li a {
    border-radius: 4px 4px 0 0;
    padding: 10px 15px 5px 15px;
}
.nuovoContratto {
    background-color: #FFF;
    border: 1px solid #337AB7;
}
.hoverColor {
    padding: 5px;
    border: 1px solid #FFF;
}
.hoverColor:hover {
    background-color: #F0F0F0;
    border: 1px solid #d9d9d9;
}
.lineHeight35 {
    line-height: 35px;
}
.lineHeight30 {
    line-height: 30px;
}

/* WIDTH */
.width100p {width: 100% !important;}
.width50p {width:50%;}
.width30p {width:30%;}
.width20p {width:20%;}
.width10p {width:10%;}
/* end WIDTH */
/* HEIGHT */
.height43 {height: 43px;}
/* end HEIGHT */
.nowrap{white-space: nowrap;}


.customList li{
    line-height: 40px;
    display: inline-block;
    width: 100%;
}
.customListLabel{
    padding-left: 5px;
    height: 27px;
    width: 100% !important;
    background-color: #337ab7;
    color: #FFF;
}

/*Style per input RANGE*/
input[type=range]{
    -webkit-appearance: none;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 300px;
    height: 5px;
    background: #ddd;
    border: none;
    border-radius: 3px;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #3D72B8;
    margin-top: -4px;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: #ccc;
}

/* PASSWORD */
.securityLow{color: #f80039}
.securityGuarded{color: #ff9a00}
.securityElevated{color: #4fc7ef}
.securityHigh{color: #446fc9}
.securitySevere{color: #00b06b}
.fa-passwd-reset > .fa-lock {font-size: 0.85em;}

/* FOOTER */
.footerTitle {font-weight: bold;font-size: 1.1em;padding: 5px 0;}
.footerText {font-size: .8em}
.footerIco {padding: 5px 15px;}
.footerIco a {color:#FFF; margin:0 5px;}
.footerCredits {padding: 10px 0;}
/* FOOTER */