/*body.login {
    height: 100%;
    position: relative;
    background: #fff url(../../Img/IPPICAS.jpg);
    background: #fff url(../../Img/IPPICAP.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    font-family: 'Fira Sans', sans-serif;
    font-size: 1.4em;
    line-height: 1.5;
    color: #333333;
}*/

body {
    /*font-family: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";*/
    font-family: 'Roboto', sans-serif;
    font-size: 1.35rem;
    line-height: 1.5;
    color: #333;
    /*margin: 10px;*/
    background-color: #337ab7;
}

.font-monospace {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.full-height {
    height: 100%;
    min-height: 100%;
}

/*@media screen and (min-width: 600px){
	.container-fluid{
		padding-right: 60px;
		padding-left: 60px;
	}
}*/

.table-narrow > thead > tr > th,
.table-narrow > tbody > tr > th,
.table-narrow > tfoot > tr > th,
.table-narrow > thead > tr > td,
.table-narrow > tbody > tr > td,
.table-narrow > tfoot > tr > td {
    padding: 1px;
    font-size: 90%;
}

.table-100 {
    width: 100% !important;
}

.table td {
    vertical-align: middle !important;
}

.btn-link.btn-salva {
    color: #5cb85c;
}

    .btn-link.btn-salva:hover {
        color: #4cae4c;
    }

.btn-link.btn-cancel {
    color: #f0ad4e;
}

    .btn-link.btn-cancel:hover {
        color: #eea236;
    }

.panel-footer.white-panel {
    text-align: center;
    background-color: white;
}

.green {
    color: #5cb85c !important;
}

.panel-heading.bianco {
    background-color: white;
}

input[type='radio'] {
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
}

input[type="otp"] {
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 3.5em;
    font-weight: 300;
    text-align: center;
    width: 70%;
    margin: 0;
    padding: 5px;
    color: #888;
    box-shadow: none;
    transition: all .3s;
    letter-spacing: 10px;
}

.accordionCustom {
    cursor: pointer;
}

.selezionato {
    background-color: #dff0d8 !important;
}

.divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    Background-color: #e5e5e5;
}

.label-aligned {
    padding-top: 0.5%;
}

.label-lg {
    padding: 0.1em .6em;
    font-size: 80%;
    font-weight: 400;
}

.label-xlg {
    padding: 0.3em .8em;
    font-size: 95%;
    font-weight: 400;
}

.primary-ouline {
    color: white;
    background-color: white;
    border-color: #2e6da4;
}

/*@media screen {
  #PrintMessage2 {
	  display: none;
  }
}

.printable { visibility: hidden; }

@media print {
	body * {
		visibility: hidden;
	}
	.non-printable{
		visibility: hidden;
	}

	.printable{
		visibility: visible
	}
}*/

.panel-selected {
    border-color: #51aeff;
}

/* PAGINAZIONE */

.pagination-ys {
    padding-left: 0;
    margin: 20px 0;
    border-radius: 4px;
    background-color: white !important;
}

    .pagination-ys:hover {
        background-color: white !important;
    }

    .pagination-ys table > tbody > tr > td {
        display: inline;
    }

        .pagination-ys table > tbody > tr > td > a,
        .pagination-ys table > tbody > tr > td > span {
            position: relative;
            float: left;
            padding: 8px 12px;
            line-height: 1.42857143;
            text-decoration: none;
            color: #337ab7;
            background-color: #fff;
            border: 1px solid #ddd;
            margin-left: -1px;
        }

        .pagination-ys table > tbody > tr > td > span {
            position: relative;
            float: left;
            padding: 8px 12px;
            line-height: 1.42857143;
            text-decoration: none;
            margin-left: -1px;
            z-index: 2;
            color: #aea79f;
            background-color: #f5f5f5;
            border-color: #dddddd;
            cursor: default;
        }

        .pagination-ys table > tbody > tr > td:first-child > a,
        .pagination-ys table > tbody > tr > td:first-child > span {
            margin-left: 0;
            border-bottom-left-radius: 4px;
            border-top-left-radius: 4px;
        }

        .pagination-ys table > tbody > tr > td:last-child > a,
        .pagination-ys table > tbody > tr > td:last-child > span {
            border-bottom-right-radius: 4px;
            border-top-right-radius: 4px;
        }

        .pagination-ys table > tbody > tr > td > a:hover,
        .pagination-ys table > tbody > tr > td > span:hover,
        .pagination-ys table > tbody > tr > td > a:focus,
        .pagination-ys table > tbody > tr > td > span:focus {
            color: #fff;
            background-color: #337ab7;
            border-color: #337ab7;
        }

/* STILE RIGHE TABELLA*/

.row-header th {
    text-align: center !important;
}

/*.row-style {
    background-color: white !important;
    text-align: center !important;
}

.row-style-black {
    background-color: white !important;
}

.row-style:hover {
    background-color: #95ceff !important;
    color: white !important;
    text-align: center !important;
}

.row-style-black:hover {
    background-color: #95ceff !important;
}

.row-style-select {
    background-color: white !important;
}

    .row-style-select:hover {
        background-color: #95ceff !important;
        color: white !important;
        cursor: pointer;
    }

.row-style-nohover:hover {
    background-color: #95ceff !important;*/
/*text-align: center !important;*/
/*cursor: pointer;
}

.row-alternative {
    background-color: #e1f1ff !important;
    text-align: center !important;
}

    .row-alternative:hover {
        background-color: #95ceff !important;
        color: white !important;
        text-align: center !important;
    }

.row-alternative-black {
    background-color: #e1f1ff !important;
}

    .row-alternative-black:hover {
        background-color: #95ceff !important;
        color: black !important;
    }

.row-alternative-select {
    background-color: #e1f1ff !important;
}

    .row-alternative-select:hover {
        background-color: #95ceff !important;
        color: white !important;
        cursor: pointer;
    }

.row-alternative-nohover:hover {
    background-color: #95ceff !important;
    text-align: center !important;
    cursor: pointer;
}

.text-nowrap.row-header {
    background-color: white !important;
    color: black !important;
    font-weight: bold !important;
    text-align: center !important;
    border-bottom-width: 3px !important;
    border-bottom-style: solid !important;
}

    .text-nowrap.row-header:hover {
        background-color: white !important;
        color: black !important;
        font-weight: bold !important;
        text-align: center !important;
    }*/

/*.text-nowrap.double-row-header {
    background-color: rgba(200, 243, 241, 0.94) !important;
    color: black !important;
    font-weight: bold !important;
    text-align: center !important;
}*/

/*.text-nowrap.double-row-header:hover {
        background-color: rgba(200, 243, 241, 0.94) !important;
        color: black !important;
        font-weight: bold !important;
        text-align: center !important;
    }*/

/*.text-nowrap.double-row-header {
    background-color: #403c3a !important;
    color: #fff !important;
    font-weight: 200 !important;
    text-align: center !important;
}

    .text-nowrap.double-row-header:hover {
        background-color: #403c3a !important;
        color: #fff !important;
        font-weight: 200 !important;
        text-align: center !important;
    }

.text-nowrap.no-double-row-header {
    background-color: #fff !important;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
}

    .text-nowrap.no-double-row-header:hover {
        background-color: #fff !important;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        border-left: 1px solid #fff;
    }

.row-header th {
    background-color: white !important;
    color: black !important;
    font-weight: bold !important;
    text-align: center !important;
    border-bottom-width: 3px !important;
    border-bottom-style: solid !important;
}

    .row-header th:hover {
        background-color: white !important;
        color: black !important;
        font-weight: bold !important;
        text-align: center !important;
    }

.row-header-verticale {
    background-color: white !important;
    color: #3382c8 !important;
    font-weight: bold !important;
    text-align: center !important;
}

    .row-header-verticale:hover {
        background-color: white !important;
        color: #3382c8 !important;
        font-weight: bold !important;
        text-align: center !important;
    }*/

/* STILE RIGHE TABELLA*/

@media screen and (min-width: 900px) {
    .modale-XL .modal-dialog {
        width: 90%;
    }
}

@media screen and (min-width: 700px) {
    .modale-L .modal-dialog {
        width: 60%;
    }
}

@media screen and (max-width: 1200px) {
    .modale-L .modal-dialog {
        width: 90%;
    }
}

@media screen and (max-width: 1025px) {
    .desktop-only {
        display: none;
    }
}

.modal {
    overflow-y: auto !important;
}

.grassetto {
    font-weight: bold !important;
}

.card {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 2px solid #1b809e;
    border-radius: 1.25rem;
    margin: 5px;
}

.card-header {
    padding: .75rem 1.25rem;
    margin-bottom: 0;
    background-color: #f8f9fc;
    border-bottom: 1px solid #e3e6f0;
}

.card-body {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1.25rem;
}

.shadow {
    -webkit-box-shadow: 0 .15rem 1.75rem 0 rgba(58, 59, 69, .15) !important;
    box-shadow: 0 .15rem 1.75rem 0 rgba(58, 59, 69, .15) !important;
}

/*
 * Callouts
 *
 * Non solo avvisi, ma note personalizzate e utili per la gente che legge i documenti.
 *
Richiede una classe base e modificatore.
 */

/*
Stili comuni per tutti i tipi */

.bs-callout {
    padding: 20px;
    margin: 20px 0;
    border: 1px solid #eee;
    border-right-width: 5px;
    border-radius: 3px;
}

    .bs-callout h4 {
        margin-top: 0;
        margin-bottom: 5px;
    }

    .bs-callout p:last-child {
        margin-bottom: 0;
    }

    .bs-callout code {
        border-radius: 3px;
    }

    /* Stringere lo spazio tra più callouts */

    .bs-callout + .bs-callout {
        margin-top: -5px;
    }

/* Variazioni */

.bs-callout-danger {
    border-left-width: 5px;
    border-left-color: #ce4844;
}

    .bs-callout-danger h4 {
        color: #ce4844;
    }

.bs-callout-warning {
    border-left-width: 5px;
    border-left-color: #aa6708;
}

    .bs-callout-warning h4 {
        color: #aa6708;
    }

.bs-callout-info {
    border-left-width: 5px;
    border-left-color: #1b809e;
}

    .bs-callout-info h4 {
        color: #1b809e;
    }

.bs-callout-title-info {
    border-left-width: 5px;
    border-left-color: #1b809e;
    border-right-color: #1b809e;
}

.bs-callout-title-warning {
    border-left-width: 5px;
    border-left-color: #aa6708;
    border-right-color: #aa6708;
}

.bs-callout-title-danger {
    border-left-width: 5px;
    border-left-color: #ce4844;
    border-right-color: #ce4844;
}

.bs-callout-title-info h4 {
    color: #1b809e;
}

.bs-callout-title-warning h4 {
    color: #aa6708;
}

.bs-callout-title-danger h4 {
    color: #ce4844;
}

.list-item {
    margin: 10px 0;
    padding: 10px;
}

    .list-item:hover {
        cursor: move;
    }

.col-auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.col-padding {
    padding-right: 5px !important;
    padding-left: 5px !important;
}

.progress-bar-mst {
    background-color: #08c;
}

/*video {
	position: absolute;
	top: 0%;
	left: 0%;
	bottom: 0%;
	min-width: 100vw;
	max-height: 1000px;
	margin: 0 !important;
	padding: 0 !important;
	width: 100vw;
	height: 685px;
	z-index: -100;
	transform: translateX(0%) translateY(0%);
	  background: url('#') no-repeat;
	background-size: cover;
	transition: 1s opacity;
	overflow: hidden;
}
body{
  overflow-x: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}*/

.head-login {
    border: 0 solid #337ab7;
    border-bottom-width: 1px;
    padding-bottom: 5px;
    padding-top: 5px;
    text-align: center;
    margin-left: 10px;
    margin-right: 10px;
}

#caricamento {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 100%;
    background-color: transparent;
    color: #286090;
    text-align: center;
    padding-top: 200px;
    z-index: 9999;
}

/*#footer-login{
	position: absolute;
	width:120px;
	height:70px;
}*/

.navbar-brand {
    padding: 0px 0px !important;
    color: #0068a6 !important;
    font-weight: bold !important;
}

    .navbar-brand img {
        height: 50px;
        display: inline-block;
    }

.navbar-header {
    margin-left: 15px;
    margin-right: 15px;
}

/* Personalizazzione TAB */

.nav > li > a:focus,
.nav > li > a:hover {
    text-decoration: none;
    background-color: #337ab7;
    color: white;
}

.navbar-default .navbar-nav > li {
    text-decoration: none;
    /*background-color: #F8F8F8 !important;*/
    color: white !important;
}

.navbar-default .navbar-top-links > li {
    text-decoration: none;
    /*background-color: #F8F8F8 !important;*/
}

.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > li > a:hover {
    text-decoration: none;
    background-color: #337ab7 !important;
    color: white !important;
}

.navbar-default .navbar-nav > li > a {
    color: #337ab7;
}

.collapse.in #dduser {
    display: none;
}

.collapse.in .navbar-top-links > li {
    display: block;
}

/* PRODUZIONE
.navbar-default{
    background-color: #eef9ff;
}*/

.sidebar ul li a.active {
    background-color: #eeeeee;
    color: #337ab7;
}

/*.input-group-addon.btn.btn-info {
	color: #fff;
	background-color: #31b0d5;
	border-color: #269abc;
}*/

.fa.fa-toggle-on.green {
    color: #5cb85c !important;
}

.btn-circle.btn-lg {
    width: 40px;
    height: 40px;
    padding: 7px 11px;
    border-radius: 20px;
    font-size: 19px;
    line-height: 1.33;
}

    .btn-circle.btn-lg.plus {
        width: 40px;
        height: 40px;
        padding: 9px 7px;
        border-radius: 20px;
        font-size: 19px;
        line-height: 1.33;
    }

.row-style-select.selezionato {
    background-color: #7ec1fa !important;
    color: white !important;
}

.row-alternative-select.selezionato {
    background-color: #7ec1fa !important;
    color: white !important;
}

.row-style-select.escluso {
    background-color: #d9534f !important;
    color: white !important;
}

.row-alternative-select.escluso {
    background-color: #d9534f !important;
    color: white !important;
}

a.swShowPage:hover,
a.swShowPage.active {
    background-color: #2993dd;
    -moz-box-shadow: 0 0 7px #1e435d inset;
    /* -webkit-box-shadow: 0 0 7px #1e435d inset; */
    box-shadow: 0 0 7px #1e435d inset;
}

a,
a:visited {
    color: #0196e3;
    /*color: #fff;*/
    text-decoration: none;
    outline: none;
}

    a.swShowPage {
        background-color: #444444;
        float: left;
        height: 15px;
        margin: 4px 3px;
        text-indent: -9999px;
        width: 15px;
        /* border: 1px solid #ccc; */
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }

.radiob.notActive {
    color: #3276b1;
    background-color: #fff;
}

.radiob.active {
    background-color: #0088cc;
    color: #fff;
}

    .radiob.active:hover {
        background-color: #149bdf;
        color: #fff;
    }

.ui-state-highlight {
    height: 1.5em;
    line-height: 1.2em;
}

    /* Nascondo campo IdPagina*/

    .ui-state-highlight td:nth-child(1) {
        display: none;
    }

    .ui-state-highlight td:nth-child(2) {
        display: none;
    }

    .ui-state-highlight td:nth-child(3) {
        display: none;
    }

    .ui-state-highlight td:nth-child(4) {
        display: none;
    }

    .ui-state-highlight td:nth-child(5) {
        display: none;
    }

/*@media (min-width: 1200px) {
    .dropdown-menu li a:focus,
    .dropdown-menu li a:hover {
        transform: scale(1.10);
        -webkit-transform: scale(1.10);
        -moz-transform: scale(1.10);
        -ms-transform: scale(1.10);
        -o-transform: scale(1.10);
        background: 0 0;
        color: #000;
        transition: all .4s ease-in-out;
        -webkit-transition: all .3s ease-in-out;
        -moz-transition: all .3s ease-in-out;
        -ms-transition: all .3s ease-in-out;
        -o-transition: all .3s ease-in-out;
    }
}*/

.nav > li > a {
    color: #337ab7;
}

    .nav > li > a:focus {
        color: #555;
    }

.nav .open > a,
.nav .open > a:focus,
.nav .open > a:hover {
    background-color: #337ab7 !important;
    color: white;
}

.notActive img:hover {
    transform: scale(1.5);
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -ms-transform: scale(2);
    -o-transform: scale(2);
    transition: all .8s ease;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
}

/* Cambia automaticamente filter testo datalist lowercase address Uppercase */

.UpperCase {
    text-transform: uppercase;
}

.accordionProfile :hover {
    transform: scale(1.10) !important;
    -webkit-transform: scale(1.10) !important;
    -moz-transform: scale(1.10) !important;
    -ms-transform: scale(1.10) !important;
    -o-transform: scale(1.10) !important;
    transition: all .4s ease-in-out !important;
    -webkit-transition: all .3s ease-in-out !important;
    -moz-transition: all .3s ease-in-out !important;
    -ms-transition: all .3s ease-in-out !important;
    -o-transition: all .3s ease-in-out !important;
    cursor: pointer !important;
}

.ui-rangeSlider-container,
.ui-rangeSlider-arrow,
.ui-rangeSlider-label {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f5f5f5), color-stop(100%, #f5f5f5)) !important;
}

.ui-rangeSlider-leftArrow .ui-rangeSlider-arrow-inner {
    border-right: 10px solid #08c !important;
}

.ui-rangeSlider-rightArrow .ui-rangeSlider-arrow-inner {
    border-left: 10px solid #0088cc !important;
}

.ui-rangeSlider-rightArrow {
    border-right: solid 1px #eee !important;
}

.ui-rangeSlider-leftArrow {
    border-left: solid 1px #ddd !important;
}

.ui-rangeSlider-bar {
    background: #0088cc !important;
}

.ui-rangeSlider-label-inner {
    border-top: 10px solid #08c !important;
}

.ui-rangeSlider-label {
    color: #0088cc !important;
    font-weight: bold !important;
}

.ui-rangeSlider-container,
.ui-rangeSlider-arrow {
    border-top: solid 1px #ddd !important;
    border-bottom: solid 1px #ddd !important;
}

@media (min-width: 1200px) {
    .alertNotification {
        position: absolute;
        z-index: 2;
        right: 61px;
        top: 75px;
    }
}

@media (min-width: 1040px) and (max-width: 1199px) {
    .alertNotification {
        position: absolute;
        z-index: 2;
        right: 61px;
        top: 125px;
    }
}

@media (min-width: 769px) and (max-width: 1039px) {
    .alertNotification {
        position: absolute;
        z-index: 2;
        right: 17px;
        top: 170px;
    }
}

@media (max-width: 768px) {
    .alertNotification {
        position: absolute;
        z-index: 2;
        right: 17px;
        top: 125px;
    }
}

.fadein,
.fadeout {
    opacity: 0;
    -webkit-opacity: 0;
    -moz-opacity: 0;
    right: 0px;
    transform: scale(0.5, 0.5);
    transition: opacity 1s, right 1s, transform 1s;
    -webkit-transition: opacity 1s, right 1s, transform 1s;
    -moz-transition: opacity 1s, right 1s, transform 1s;
    -o-transition: opacity 1s, right 1s, transform 1s;
}

.fadein {
    z-index: 1060;
    position: fixed;
    display: block;
    opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
    right: 3%;
    transform: scale(1, 1);
}

/*@media (min-width: 900px) {
	.navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse {
		padding-right: 0;
		padding-left: 0;
	}
	.navbar-collapse {
		width: auto;
		border-top: 0;
		-webkit-box-shadow: none;
		box-shadow: none;
	}
	.navbar-nav {
	    float: left;
	    margin: 0;
	}
	.navbar-header {
	    float: left;
    }
}*/

@media (max-width: 1215px) {
    .navbar-header {
        float: none;
    }

    .navbar-left,
    .navbar-right {
        float: none !important;
    }

    .navbar-toggle {
        display: block;
    }

    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
    }

    .navbar-fixed-top {
        top: 0;
        border-width: 0 0 1px;
    }

    .navbar-collapse.collapse {
        display: none !important;
    }

    .navbar-nav {
        float: none !important;
        margin-top: 7.5px;
    }

        .navbar-nav > li {
            float: none;
        }

            .navbar-nav > li > a {
                padding-top: 10px;
                padding-bottom: 10px;
            }

    .collapse.in {
        display: block !important;
    }
}

.TxtSlider {
    max-width: 50px;
    display: inline-block;
}

@media (max-width: 1215px) {
    .navbar-right .dropdown-menu {
        right: unset !important;
    }
}

@media (max-width: 1217px) {
    .navbar-nav .open .dropdown-menu {
        position: static;
        float: none;
        width: auto;
        margin-top: 0;
        border: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

@media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu {
        background-color: white;
    }
}

.btn-sconosciuto {
    color: #fff !important;
    background-color: #999;
    border-color: #999;
}

    .btn-sconosciuto :hover {
        color: #fff !important;
        background-color: #969494;
        border-color: #969494;
    }

.selezionabile {
    background-color: #ea2822;
    color: #fff;
}

div.selezionabile:hover {
    cursor: pointer !important;
    filter: contrast(80%);
    -webkit-filter: contrast(80%);
}

div.selezionabile:active {
    filter: brightness(100%);
    -webkit-filter: brightness(100%);
}

.posNeg {
    padding: 0px 0px !important;
}

.btnNegPos {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 0px 10px;
}

    .btnNegPos:hover {
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        padding: 0px 10px;
        cursor: pointer;
    }

.btnNegPosSelected {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 0px 10px;
    background-color: #337ab7;
    color: white;
}

.spinner {
    animation: spinner 2s infinite linear;
    -webkit-animation: spinner 2s infinite linear;
    -moz-animation: spinner 2s infinite linear;
    -ms-animation: spinner 2s infinite linear;
}

@-moz-keyframes spinner {
    0% {
        -moz-transform: rotate(0deg);
    }

    100% {
        -moz-transform: rotate(359deg);
    }
}

@-webkit-keyframes spinner {
    0% {
        -webkit-transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(359deg);
    }
}

@keyframes spinner {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(359deg);
    }
}

input.es-input {
    background-color: white !important;
}

/*#Lavagna1::before { content:"questa è una prova di before\00a0"; }
#Lavagna1::after { content:"questa è una prova di after\00a0"; }*/

/* CUSTOM SCROOLBAR */

/* width */

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
    background: #f8f8f8;
    border-radius: 2px;
}

/* Track */

::-webkit-scrollbar-track {
    box-shadow: inset 0 0 2px #d3d3d3;
    border-radius: 2px;
}

/* Handle */

::-webkit-scrollbar-thumb {
    background: #337ab7;
    border-radius: 2px;
}

    /* Handle on hover */

    ::-webkit-scrollbar-thumb:hover {
        background: #149bdf;
    }

/*@-webkit-keyframes custom-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes custom-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}*/

.magictime.magic {
    -webkit-animation-duration: 3s;
    -moz-animation-duration: 3s;
    -o-animation-duration: 3s;
    animation-duration: 3s;
}

.monitor {
    border: 1px solid #e1f1ff;
    height: 100%;
    background-color: #e1f1ff;
    max-height: 100%;
    overflow-y: auto;
}

.snip {
    padding: unset;
    margin: unset;
    border-top: unset;
}

.selectedElement {
    background-color: #0196e3;
    color: white !important;
    border-radius: 5px;
}

.selectedErrorElement {
    background-color: #e2312b;
    color: white !important;
    border-radius: 5px;
}

/* Bootstrap 4 mod*/

.btn-outline-primary {
    color: #007bff;
    background-color: transparent;
    background-image: none;
    border-color: #007bff;
}

    .btn-outline-primary:hover {
        color: #fff;
        background-color: #007bff;
        border-color: #007bff;
    }

    .btn-outline-primary[disabled]:hover {
        color: #007bff;
        background-color: transparent;
        background-image: none;
        border-color: #007bff;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-secondary {
    color: #6c757d;
    background-color: transparent;
    background-image: none;
    border-color: #6c757d;
}

    .btn-outline-secondary:hover {
        color: #fff;
        background-color: #6c757d;
        border-color: #6c757d;
    }

    .btn-outline-secondary[disabled]:hover {
        color: #6c757d;
        background-color: transparent;
        background-image: none;
        border-color: #6c757d;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-success {
    color: #28a745;
    background-color: transparent;
    background-image: none;
    border-color: #28a745;
}

    .btn-outline-success:hover {
        color: #fff;
        background-color: #28a745;
        border-color: #28a745;
    }

    .btn-outline-success[disabled]:hover {
        color: #28a745;
        background-color: transparent;
        background-image: none;
        border-color: #28a745;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-danger {
    color: #dc3545;
    background-color: transparent;
    background-image: none;
    border-color: #dc3545;
}

    .btn-outline-danger:hover {
        color: #fff;
        background-color: #dc3545;
        border-color: #dc3545;
    }

    .btn-outline-danger[disabled]:hover {
        color: #dc3545;
        background-color: transparent;
        background-image: none;
        border-color: #dc3545;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-warning {
    color: #ffc107;
    background-color: transparent;
    background-image: none;
    border-color: #ffc107;
}

    .btn-outline-warning:hover {
        color: #212529;
        background-color: #ffc107;
        border-color: #ffc107;
    }

    .btn-outline-warning[disabled]:hover {
        color: #ffc107;
        background-color: transparent;
        background-image: none;
        border-color: #ffc107;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-info {
    color: #17a2b8;
    background-color: transparent;
    background-image: none;
    border-color: #17a2b8;
}

    .btn-outline-info:hover {
        color: #fff;
        background-color: #17a2b8;
        border-color: #17a2b8;
    }

    .btn-outline-info[disabled]:hover {
        color: #17a2b8;
        background-color: transparent;
        background-image: none;
        border-color: #17a2b8;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-light {
    color: #f8f9fa;
    background-color: transparent;
    background-image: none;
    border-color: #f8f9fa;
}

    .btn-outline-light:hover {
        color: #212529;
        background-color: #f8f9fa;
        border-color: #f8f9fa;
    }

    .btn-outline-light[disabled]:hover {
        color: #f8f9fa;
        background-color: transparent;
        background-image: none;
        border-color: #f8f9fa;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-outline-dark {
    color: #343a40;
    background-color: transparent;
    background-image: none;
    border-color: #343a40;
}

    .btn-outline-dark:hover {
        color: #fff;
        background-color: #343a40;
        border-color: #343a40;
    }

    .btn-outline-dark[disabled]:hover {
        color: #343a40;
        background-color: transparent;
        background-image: none;
        border-color: #343a40;
        cursor: not-allowed;
        pointer-events: none
    }

.btn-ghost {
    color: transparent;
    background-color: transparent;
    background-image: none;
    border-color: transparent;
}

    .btn-ghost:hover {
        color: transparent;
        background-color: transparent;
        border-color: transparent;
        box-shadow: none;
    }

    .btn-ghost:active {
        color: transparent;
        background-color: transparent;
        border-color: transparent;
        box-shadow: none;
    }

    .btn-ghost:focus {
        outline: 0px transparent;
    }

    .btn-ghost[disabled]:hover {
        color: transparent;
        background-color: transparent;
        background-image: none;
        border-color: transparent;
        cursor: not-allowed;
        pointer-events: none;
        box-shadow: none;
    }

/**
     * Margin e padding
     */

.m-t-5 {
    margin-top: 5px !important;
}

.p-t-5 {
    padding-top: 5px !important;
}

.m-b-5 {
    margin-bottom: 5px !important;
}

.p-b-5 {
    padding-bottom: 5px !important;
}

.m-l-5 {
    margin-left: 5px !important;
}

.p-l-5 {
    padding-left: 5px !important;
}

.m-r-5 {
    margin-right: 5px !important;
}

.p-r-5 {
    padding-right: 5px !important;
}

.m-t-10 {
    margin-top: 10px !important;
}

.p-t-10 {
    padding-top: 10px !important;
}

.m-b-10 {
    margin-bottom: 10px !important;
}

.p-b-10 {
    padding-bottom: 10px !important;
}

.m-l-10 {
    margin-left: 10px !important;
}

.p-l-10 {
    padding-left: 10px !important;
}

.m-r-10 {
    margin-right: 10px !important;
}

.p-r-10 {
    padding-right: 10px !important;
}

.m-t-15 {
    margin-top: 15px !important;
}

.p-t-15 {
    padding-top: 15px !important;
}

.m-b-15 {
    margin-bottom: 15px !important;
}

.p-b-15 {
    padding-bottom: 15px !important;
}

.m-l-15 {
    margin-left: 15px !important;
}

.p-l-15 {
    padding-left: 15px !important;
}

.m-r-15 {
    margin-right: 15px !important;
}

.p-r-15 {
    padding-right: 15px !important;
}

.m-t-20 {
    margin-top: 20px !important;
}

.p-t-20 {
    padding-top: 20px !important;
}

.m-b-20 {
    margin-bottom: 20px !important;
}

.p-b-20 {
    padding-bottom: 20px !important;
}

.m-l-20 {
    margin-left: 20px !important;
}

.p-l-20 {
    padding-left: 20px !important;
}

.m-r-20 {
    margin-right: 20px !important;
}

.p-r-20 {
    padding-right: 20px !important;
}

.m-t-25 {
    margin-top: 25px !important;
}

.p-t-25 {
    padding-top: 25px !important;
}

.m-b-25 {
    margin-bottom: 25px !important;
}

.p-b-25 {
    padding-bottom: 25px !important;
}

.m-l-25 {
    margin-left: 25px !important;
}

.p-l-25 {
    padding-left: 25px !important;
}

.m-r-25 {
    margin-right: 25px !important;
}

.p-r-25 {
    padding-right: 25px !important;
}

.m-t-30 {
    margin-top: 30px !important;
}

.p-t-30 {
    padding-top: 30px !important;
}

.m-b-30 {
    margin-bottom: 30px !important;
}

.p-b-30 {
    padding-bottom: 30px !important;
}

.m-l-30 {
    margin-left: 30px !important;
}

.p-l-30 {
    padding-left: 30px !important;
}

.m-r-30 {
    margin-right: 30px !important;
}

.p-r-30 {
    padding-right: 30px !important;
}

.m-t-35 {
    margin-top: 35px !important;
}

.p-t-35 {
    padding-top: 35px !important;
}

.m-b-35 {
    margin-bottom: 35px !important;
}

.p-b-35 {
    padding-bottom: 35px !important;
}

.m-l-35 {
    margin-left: 35px !important;
}

.p-l-35 {
    padding-left: 35px !important;
}

.m-r-35 {
    margin-right: 35px !important;
}

.p-r-35 {
    padding-right: 35px !important;
}

.m-t-40 {
    margin-top: 40px !important;
}

.p-t-40 {
    padding-top: 40px !important;
}

.m-b-40 {
    margin-bottom: 40px !important;
}

.p-b-40 {
    padding-bottom: 40px !important;
}

.m-l-40 {
    margin-left: 40px !important;
}

.p-l-40 {
    padding-left: 40px !important;
}

.m-r-40 {
    margin-right: 40px !important;
}

.p-r-40 {
    padding-right: 40px !important;
}

.m-t-45 {
    margin-top: 45px !important;
}

.p-t-45 {
    padding-top: 45px !important;
}

.m-b-45 {
    margin-bottom: 45px !important;
}

.p-b-45 {
    padding-bottom: 45px !important;
}

.m-l-45 {
    margin-left: 45px !important;
}

.p-l-45 {
    padding-left: 45px !important;
}

.m-r-45 {
    margin-right: 45px !important;
}

.p-r-45 {
    padding-right: 45px !important;
}

.m-t-50 {
    margin-top: 50px !important;
}

.p-t-50 {
    padding-top: 50px !important;
}

.m-b-50 {
    margin-bottom: 50px !important;
}

.p-b-50 {
    padding-bottom: 50px !important;
}

.m-l-50 {
    margin-left: 50px !important;
}

.p-l-50 {
    padding-left: 50px !important;
}

.m-r-50 {
    margin-right: 50px !important;
}

.p-r-50 {
    padding-right: 50px !important;
}

.m-t-75 {
    margin-top: 75px !important;
}

.p-t-75 {
    padding-top: 75px !important;
}

.m-b-75 {
    margin-bottom: 75px !important;
}

.p-b-75 {
    padding-bottom: 75px !important;
}

.m-l-75 {
    margin-left: 75px !important;
}

.p-l-75 {
    padding-left: 75px !important;
}

.m-r-75 {
    margin-right: 75px !important;
}

.p-r-75 {
    padding-right: 75px !important;
}

.m-t-100 {
    margin-top: 100px !important;
}

.p-t-100 {
    padding-top: 100px !important;
}

.m-b-100 {
    margin-bottom: 100px !important;
}

.p-b-100 {
    padding-bottom: 100px !important;
}

.m-l-100 {
    margin-left: 100px !important;
}

.p-l-100 {
    padding-left: 100px !important;
}

.m-r-100 {
    margin-right: 100px !important;
}

.p-r-100 {
    padding-right: 100px !important;
}

/**
    DataTables overide style
*/

table.dataTable > tbody > tr.child ul.dtr-details {
    padding: 10px;
    border-left: 7px solid #d3d3d3;
}

    table.dataTable > tbody > tr.child ul.dtr-details > li {
        border-bottom: 1px solid #d3d3d3;
        padding: 0.3em 0;
    }

table.dataTable > tbody > tr.child span.dtr-title {
    display: inline-block;
    /*min-width: 75px;*/
    font-weight: bold;
}

table.dataTable tbody tr.selected,
table.dataTable tbody th.selected,
table.dataTable tbody td.selected {
    color: #333333;
}

.dropdown-menu {
    background-color: #f8f8f8;
}

.ddm-user {
    min-width: 250px;
    background-color: #f8f8f8;
    background-clip: padding-box;
    border: 1px solid #cccccc;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.navbar-nav > li > .dropdown-menu {
    margin-top: 2px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.navbar {
    /*height: 60px;*/
    box-shadow: 0 1px 20px rgba(0, 0, 0, 0.1);
}

div.display-inline {
    display: inline;
}

/*#region datatable column visibility peronalization */

ul.dt-button-collection.dropdown-menu {
    margin-top: 2px;
}

    ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility.active > a,
    ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility.active > a:focus,
    ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility.active > a:hover {
        color: #333;
        text-decoration: none;
        background-color: transparent;
        outline: 0;
        transform: none;
        -webkit-transform: none;
        -webkit-transition: none;
    }

        ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility.active > a:before,
        ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility.active > a:focus:before,
        ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility.active > a:hover:before {
            content: "\f14a";
            font-family: "Font Awesome 5 Free";
            color: #28A745;
            font-size: 15px;
            font-weight: 400;
            margin-right: 5px;
        }

    ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility > a,
    ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility > a:focus,
    ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility > a:hover {
        color: #333;
        text-decoration: none;
        background-color: transparent;
        outline: 0;
        transform: none;
        -webkit-transform: none;
        -webkit-transition: none;
    }

        ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility > a:before,
        ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility > a:focus:before,
        ul.dt-button-collection.dropdown-menu > li.dt-button.buttons-columnVisibility > a:hover:before {
            content: "\f0c8";
            font-family: "Font Awesome 5 Free";
            color: #DC3545;
            font-size: 15px;
            font-weight: 400;
            margin-right: 5px;
        }

/*#endregion */

button.buttons-collection {
    margin-right: 5px;
    margin-left: 0 !important;
}

.position-relative {
    position: relative !important;
}

.border-icon {
    stroke: white;
    stroke-width: 36px;
}

.border-primary {
    stroke: #286090;
    stroke-width: 22px;
}

.border-success {
    stroke: #449D43;
    stroke-width: 22px;
}

.border-info {
    stroke: #38AFD5;
    stroke-width: 22px;
}

.border-warning {
    stroke: #EC971E;
    stroke-width: 22px;
}

.border-danger {
    stroke: #C9302B;
    stroke-width: 22px;
}

.border-muted {
    stroke: #777;
    stroke-width: 22px;
}

.border-white {
    stroke: white;
    stroke-width: 22px;
}

.vertical-middle {
    vertical-align: middle;
}

.modal-header.danger {
    border-start-start-radius: 6px;
    border-start-end-radius: 6px;
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}

.modal-header.warning {
    border-start-start-radius: 6px;
    border-start-end-radius: 6px;
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc;
}

.full-height-of-parent {
    height: calc(100vh - 240px);
    overflow-y: auto;
}

.font-size-small {
    font-size: small;
}

.version {
    text-shadow: 4px 0px 3px black;
    text-align: center;
    text-transform: uppercase;
    font-size: 11px;
}

fieldset {
    border: 1px solid #ddd !important;
    padding: 5px !important;
    margin: 10px;
    border-radius: 5px;
}

legend {
    width: inherit;
    padding: 0 10px;
    border: none;
}

.text-stroke {
    color: #fff;
    text-shadow: #000 0px 0px 2px;
    -webkit-font-smoothing: antialiased;
}

.text-wrap {
    word-wrap: break-word;
}

.text-uppercase {
    text-transform: uppercase;
}

.text-capitalize {
    text-transform: capitalize;
}

.cursor-pointer {
    cursor: pointer;
}

.cursor-crosshair {
    cursor: crosshair;
}

.cursor-eresize {
    cursor: e-resize;
}

.cursor-move {
    cursor: move;
}

.td:hover :not([rowspan]) {
}

/*
    Multiple select
*/

.bootstrap-select.show-tick .dropdown-menu li a span.text {
    margin-left: 20px;
}

.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark {
    position: absolute;
    display: inline-block;
    right: auto;
    top: 5px;
}

li.selected {
    text-shadow: 0 0 black;
}

.borderTTransparent {
    border-top: 1px solid transparent !important;
}

.borderLTransparent {
    border-left: 1px solid transparent !important;
}

.borderBTransparent {
    border-bottom: 1px solid transparent !important;
}

.borderRTransparent {
    border-right: 1px solid transparent !important;
}

.borderTransparent {
    border: 1px solid transparent !important;
}

input[type=checkbox] {
    position: relative;
    visibility: hidden;
    cursor: pointer;
    margin: 10px;
    -moz-appearance: initial /** Hack for Firefox Browsers, important */
}

    input[type=checkbox]::after {
        display: block;
        font-family: "Font Awesome 5 Free";
        content: "";
        position: absolute;
        top: -6px;
        left: -6px;
        visibility: visible;
        height: 28px;
        width: 28px;
        text-align: center;
        border-radius: 3px;
        border-color: #a94442;
        border-style: solid;
        color: #fff;
        font-weight: 600;
        font-size: 1.4em;
        /*cursor: pointer;*/
        z-index: 1;
    }

    input[type=checkbox]:checked::after {
        display: block;
        content: "\f00c";
        color: #3c763d;
        border-color: #3c763d;
        border-style: solid;
        z-index: 1;
    }


input[type=radio] {
    position: relative;
    visibility: hidden;
    cursor: pointer;
    margin: 10px;
    -moz-appearance: initial; /** Hack for Firefox Browsers, important */
}

    input[type=radio]::after {
        display: block;
        vertical-align: middle;
        font-family: "Font Awesome 5 Free";
        content: "";
        position: absolute;
        top: -6px;
        left: -6px;
        visibility: visible;
        height: 28px;
        width: 28px;
        text-align: center;
        border-radius: 50%;
        border-color: #337ab7;
        border-style: solid;
        color: #fff;
        font-weight: 900;
        font-size: 1.35em;
        /*cursor: pointer;*/
        z-index: 1;
    }

    input[type=radio]:checked::after {
        display: block;
        content: "\f111";
        color: #337ab7;
        border-color: #337ab7;
        border-style: solid;
        z-index: 1;
    }

input[type="radio"] + label {
    margin-left: 5px;
}

#vertical-hr {
    border-left: 2px solid #dddddd;
    height: 100%;
    position: absolute;
    left: 50%;
    margin-left: -1px;
    top: -25px;
}

.ui-state-disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.curso-default {
    cursor: default;
}

.cursor-auto {
    cursor: auto;
}

.cursor-pointer {
    cursor: pointer;
}

.cursor-move {
    cursor: move;
}

.cursor-not-allowed {
    cursor: not-allowed;
}

.panel-small {
    margin-bottom: 0px !important;
}

.well-transparent {
    background-color: #d7d7d78a !important;
    border: 1px solid #d7d7d78a !important;
    color: inherit;
}

.panel-orange {
    border-color: #FF9800;
}

    .panel-orange > .panel-heading {
        color: #a94242;
        background-color: #f6d897;
        border-color: #ffc368d1;
    }

.col-auto {
    display: inline-block;
    width: auto;
    max-width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    vertical-align: top;
}