* {
    box-sizing: border-box;
}

/* UTILITY */
.d-i {
    display: inline !important;
}

.d-b {
    display: block !important;
}

.d-ib {
    display: inline-block !important;
}

.d-f {
    display: flex !important;
}

.d-none {
    display: none !important;
}

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

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

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

.contain {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.m-0 {
    margin: 0px !important;
}

.mx-0 {
    margin-left: 0px !important;
    margin-right: 0px !important;
}

.my-0 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

.mt-0 {
    margin-top: 0px !important;
}

.mr-0 {
    margin-right: 0px !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}

.ml-0 {
    margin-left: 0px !important;
}

.p-0 {
    padding: 0px !important;
}

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

.py-0 {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.pt-0 {
    padding-top: 0px !important;
}

.pr-0 {
    padding-right: 0px !important;
}

.pb-0 {
    padding-bottom: 0px !important;
}

.pl-0 {
    padding-left: 0px !important;
}

.v-align-middle {
    vertical-align: middle !important;
}

.lnk-danger {
    color: #e65251 !important
}

/* TESTA */
.cell.testa-nav-wrapper {
    margin-left: 0;
    margin-right: 0;
}

.testa-nav>li:first-child>a {
    padding-left: 0;
}

.site-user {
    margin: 0 15px;
    border-bottom: 1px solid #CCC;
    font-size: 12px;
}

.site-header {
    margin: 0 15px;
}

/* OLD CSS EREDITA */
@media print {

    .nostampa,
    .nostampa *,
    #nav2,
    #nav2 *,
    button,
    .btn,
    #footer,
    #footer * {
        display: none !important;
    }

}

.logo {
    background: url('../img/cascade icons/logo-small-bg.png');
}

.logo:hover {
    background: url('../img/cascade icons/logo-small-bg-selected.png');
}

.powered-by {
    background: url('../img/cascade icons/powered-by.png');
    width: 150px;
    height: 56px;
    display: block;
}

.leuven {
    width: 48%;
    max-width: 400px !important;
    float: right;
}

.narrow .site-header,
.narrow .site-body {
    -webkit-border-top-left-radius: 8px;
    -moz-border-radius-topleft: 8px;
    border-top-left-radius: 8px;
    -webkit-border-top-right-radius: 8px;
    -moz-border-radius-topright: 8px;
    border-top-right-radius: 8px;
}

.narrow .site-center .site-body {
    -webkit-border-bottom-left-radius: 8px;
    -moz-border-radius-bottomleft: 8px;
    border-bottom-left-radius: 8px;
    -webkit-border-bottom-right-radius: 8px;
    -moz-border-radius-bottomright: 8px;
    border-bottom-right-radius: 8px;
}

.template-header h2 {
    display: inline-block;
    margin-bottom: 10px;
}

#sociallogos {
    float: right;
    width: 130px;
}

#sociallogos a:hover {
    text-decoration: none;
}

.sitemenutags {
    float: right;
    _width: 145px;
}

.sitemenutags .nav li {
    border: 0;
    margin: 0;
}

.sitemenutags .nav a:hover {
    color: #536d86;
    background: #abbfcb;
}

.centered-content .content {
    width: 75%;
}

.centered-content input {
    width: 95%;
    _width: 55px;
}

.centered-content label {
    float: right;
}

@media (max-width:979px) {
    .leuven {
        margin: 0 auto;
        float: none !important;
        width: 100%;
    }

    .template-header {
        text-align: center;
    }

    .template-header h2 {
        display: inline-block;
    }

    .sitemenutags {
        float: left;
    }

    .sitemenu {
        display: block;
        clear: both;
    }

    .centered-content .content {
        width: 100%;
    }

    .centered-content label {
        float: left;
    }
}

.sitemenu-responsive {
    display: none !important;
}

.sitemenu-responsive .left {
    position: absolute;
    background: #2d3538;
    overflow: hidden;
    width: 100%;
}

.sitemenu-responsive .icon-align-justify {
    margin: 0 !important;
}

.site-header,
.sitemenu-responsive,
.sitemenu-responsive .left {
    z-index: 900;
}

@media (max-width:580px) {
    .col.sitemenu {
        display: none !important;
    }

    .sitemenu-responsive {
        display: block !important;
    }

    .sitemenu-responsive .collapse-trigger a {
        padding: 4px 6px 0;
    }

    .sitemenutags {
        position: absolute;
        right: 0;
    }
}

div#nav2 {
    clear: left;
    padding: 2px 2px 2px 15px;
    background: #eaf3fd;
    border-bottom: 1px solid #c6dff9;
    /*border-top-right-radius:1em;
border-top-left-radius:1em;*/

}

/* GENERALE */

#nav2 h2 small {
    font-size: 14px;
    display: block;
    margin-top: -2px;
}

div#nav2 h2 {
    margin-bottom: 15px;
}



div#nav2 h2 {
    margin: 6px 6px 6px 0;
}

div#nav2 ul {
    padding-top: 4px;
}

div#nav2 li {
    display: inline;
    padding: 5px 15px 2px 15px;
}

div#nav2 .selected {
    background: #FFFFFF;
    padding: 5px 15px 2px 15px;
    border: 1px solid #c6dff9;
    border-bottom-color: #FFFFFF;
    font-weight: bold;
}

body,
.site-footer,
.site-footer-fixture,
pre,
button,
.panel .footer,
.button,
.menu .stat a:hover,
.files .tree a:hover,
.panel .header,
.datasheet th,
code,
.menu .active a,
.tab-block .body,
.tab-block .body .tabs .nav a,
.menu .active a:hover,
.menu .links .active a:hover {
    background-color: #FFF;
}

body,
p,
button,
input,
select,
textarea {
    font-family: Arial, sans-serif !important;
    letter-spacing: 0.02em;
}

.site-header,
.site-header-fixture {
    background-color: transparent;
    box-shadow: none;
    border-bottom: 1px solid #eaeaea;
}

.narrow .site-header,
.narrow .site-body {
    border-radius: 0;
}

.site-header .nav a {
    color: #666;
    font-weight: 300;
}

div#nav2 {
    background: transparent !important;
    border-bottom: 0;
}

font[color="BROWN"] {
    color: #333;
}

input[type="submit"] {
    padding: 5px 15px;
    vertical-align: middle;
}

/* ELEMENTI */
a:hover,
a:focus {
    text-decoration: none;
}

div#nav2 h2 {
    font-weight: 200;
}

div#nav2 .action-list li,
.action-list li {
    background: none;
    padding: 0;
    display: inline-block;
    margin-bottom: 4px;
}

ul.action-link.tabs-nav {
    margin: 0;
    list-style-type: none;
    padding: 0;
}

ul.action-link.tabs-nav>li {
    display: inline-block;
}

.error-message {
    padding: 10px 15px;
    background-color: #9c9c9c;
    /* #e65251;*/
    color: #FFF;
}

.btn {
    display: inline-block;
    font-weight: 400;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    user-select: none;
    border: 1px solid transparent;
    padding: 0.56rem 1.375rem;
    font-size: 1rem;
    line-height: 1;
    border-radius: 0.1875rem;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    font-size: 14px;
    line-height: 1;
}

.btn.btn-fw {
    min-width: 120px;
}

.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}

.btn:hover,
.btn:focus {
    text-decoration: none;
}

.btn,
.btn-group.open .dropdown-toggle,
.btn:active,
.btn:focus,
.btn:hover,
.btn:visited,
a,
a:active,
a:checked,
a:focus,
a:hover,
a:visited,
body,
button,
button:active,
button:hover,
button:visited,
div,
input,
input:active,
input:focus,
input:hover,
input:visited,
select,
select:active,
select:focus,
select:visited,
textarea,
textarea:active,
textarea:focus,
textarea:hover,
textarea:visited {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.btn.btn-fw {
    min-width: 120px;
}

.btn-primary {
    color: #fff;
    background-color: #308ee0;
    border-color: #308ee0;
}

.btn-primary:hover {
    color: #fff;
    background-color: #1e7bcb;
    border-color: #1d74c0;
}

.btn-secondary {
    color: #212529;
    background-color: #e5e5e5;
    border-color: #e5e5e5;
}

.btn-secondary:hover {
    color: #212529;
    background-color: #d2d2d2;
    border-color: #cccccc;
}

.btn-success {
    color: #fff;
    background-color: #00ce68;
    border-color: #00ce68;
}

.btn-success:hover {
    color: #fff;
    background-color: #00a855;
    border-color: #009b4e;
}

.btn-danger {
    color: #fff;
    background-color: #e65251;
    border-color: #e65251;
}

.btn-danger:hover {
    color: #fff;
    background-color: #e13130;
    border-color: #e02624;
}

input[type="submit"].btn {
    padding: 0.56rem 1.375rem;
}

/* BTN GROUP */
.btn-group,
.btn-group-vertical {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

.btn-group>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group>.btn-group:not(:last-child)>.btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group>.btn:not(:first-child),
.btn-group>.btn-group:not(:first-child)>.btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group .btn.btn-primary {
    border-color: #2387de;
}

.btn-group>.btn:focus,
.btn-group>.btn:active,
.btn-group>.btn.active,
.btn-group-vertical>.btn:focus,
.btn-group-vertical>.btn:active,
.btn-group-vertical>.btn.active {
    z-index: 1;
}

.btn-group>.btn:first-child {
    margin-left: 0;
}

.btn-group .btn {
    border-top: none;
    border-bottom: none;
    border-left: none;
}

.btn-group .btn+.btn,
.btn-group .btn+.btn-group,
.btn-group .btn-group+.btn,
.btn-group .btn-group+.btn-group,
.btn-group-vertical .btn+.btn,
.btn-group-vertical .btn+.btn-group,
.btn-group-vertical .btn-group+.btn,
.btn-group-vertical .btn-group+.btn-group {
    margin-left: -1px;
}

.btn-group-sm .btn {
    padding: 5px 10px;
    font-size: 12px;
}

/* INPUT GROUP */
.input-group {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
}

.input-group-prepend {
    margin-right: -1px;
}

.input-group-append,
.input-group-prepend {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.input-group-append {
    margin-left: -1px;
}

.input-group-append,
.input-group-prepend {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.input-group>.input-group-append>.btn,
.input-group>.input-group-append>.input-group-text,
.input-group>.input-group-prepend:first-child>.btn:not(:first-child),
.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),
.input-group>.input-group-prepend:not(:first-child)>.btn,
.input-group>.input-group-prepend:not(:first-child)>.input-group-text {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),
.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),
.input-group>.input-group-append:not(:last-child)>.btn,
.input-group>.input-group-append:not(:last-child)>.input-group-text,
.input-group>.input-group-prepend>.btn,
.input-group>.input-group-prepend>.input-group-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .375rem .75rem;
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: .25rem;
}

.input-group>.custom-select:not(:first-child),
.input-group>.form-control:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group>.custom-file,
.input-group>.custom-select,
.input-group>.form-control {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 1%;
    margin-bottom: 0;
}

.form-control {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

/* TABELLE */
.outline-header th {
    border-bottom: 1px solid #EAEAEA;
}

.outline-header th a {
    color: inherit;
}

.outline-header th {
    font-weight: 400;
}

.outline-header th>img {
    margin: 0 5px 0 0;
    height: 12px;
}

.horizontal-border td img {
    float: none;
    margin-right: 0;
}

table.tabella-riepilogo-anno td:first-child,
table.tabella-riepilogo-anno th:first-child {
    padding-left: 0;
}

table {
    border-collapse: collapse;
}

table.table {
    border: none;
}

.table-bordered {
    border: 1px solid #f2f2f2;
}

.table td,
.table th {
    /* vertical-align: middle; */
    /* font-size: 13px; */
    line-height: 1;
    white-space: nowrap;
}

.table-bordered th,
.table-bordered td {
    border: 1px solid #f2f2f2;
}

.table th,
.table td {
    padding: 9px 15px;
    vertical-align: top;
    border-top: 1px solid #f2f2f2;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #f2f8f9;
}

.table th,
.table td {
    padding: 18px 30px;
    vertical-align: top;
    border-top: 1px solid #f2f2f2;
}

/* PAGINAZIONE */
.pagination-group .btn.active {
    background-color: #F0F0F0;
    color: #999;
}


/* SELECT */
select {
    background: #F1F1F1 !important;
    border: none;
}

select:focus {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.6) !important;
}

/* NAV2 */
.tabs-nav a,
.tabs-nav a span {
    /* background: none; */
}

.tabs-nav .tabs-selected a {
    /* background: #FFF; */
}

.tabs-nav a {
    /* background: #EAEAEA; */
}

div#nav2 li {
    /* background: #F2F2F2; */
}

/* CONTENUTO */
.action-list {
    margin: 0;
    margin-bottom: 15px;
}


.site-center .cell>.col>.cell {
    margin: 0;
}

div#nav2 {
    padding: 0;
}

/* FILTRO MESI */
.month-filter {
    float: none;
    display: block;
    margin-top: 15px;
}

.month-filter small {
    color: #999;
    font-size: 9px;
    margin-left: 3px;
}

span.month-element {
    margin-right: 5px;
}

span.month-element:before {
    content: '|';
    margin-right: 5px;
}

span.month-element:first-child:before {
    display: none;
}

/* FATTURATO ANNO */
table.tabella-riepilogo-anno td,
table.tabella-riepilogo-anno th {
    padding: 0 5px 0 5px;
    border-right: 1px solid #CCC;
}

table.tabella-riepilogo-anno {
    width: auto;
}

table.tabella-riepilogo-anno th {
    padding-bottom: 5px;
}

table.tabella-riepilogo-anno td:last-child,
table.tabella-riepilogo-anno th:last-child {
    border: none;
}

/* FORM CREAZIONE */
.form-edit {
    width: 600px;
}

.form-edit select,
.form-edit textarea,
.form-edit input[type="text"],
.form-edit input[type="password"],
.form-edit input[type="number"] {
    width: 100%;
}

.form-edit input[type="date"],
.form-edit input[type="text"],
.form-edit input[type="number"],
.form-edit input[type="time"],
.form-edit input[type="password"] {
    padding: 6px 10px;
}

.form-edit textarea {
    padding: 10px;
}

input:invalid,
textarea:invalid {
    background: initial;
    box-shadow: 0 0 0px 1px rgba(224, 48, 48, 0.6);
}

form.form-edit .cell:first-child {
    margin-left: 0;
}

form.form-edit label:first-child {
    padding-left: 0;
}

form.form-edit label {
    font-size: 14px;
}

select {
    border: 1px solid #D0D0D0;
    padding: 6px 10px;
    height: 36px;
    background: #fff !important;
}


.form-edit>.col {
    margin-top: 2px;
}

.page-header {
    margin-bottom: 15px !important;
}

/* FOOTER */
div#footer {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #CCC;
    padding-bottom: 15px;
    color: #999;
    display: flex;
    justify-content: space-between;
}

div#footer:before,
div#footer:after {
    display: none;
    content: none;
}

/* CALENDAR */
html .calendar>div.header>input[type="image"] {
    margin-top: 0;
}

html .calendar>div.header>img {
    margin-top: 4px;
}

html .calendar>div.header {
    height: 27px;
    background-color: #f1f1f1;
}

html .calendar>div.header .date,
html .calendar>div.header .date_up {
    background-position: right 8px;
}

/* TABS */
html .tabs-nav a span,
html .tabs-nav .tabs-selected a span {
    padding: 0;
    padding-top: 2px;
}

html .tabs-nav .tabs-selected a span,
html .tabs-nav a:hover span,
html .tabs-nav a:focus span,
html .tabs-nav a:active span {
    background: none;
}

html .tabs-nav .tabs-selected a.btn,
html .tabs-nav a.btn:hover,
html .tabs-nav a.btn:focus,
html .tabs-nav a.btn:active {
    background: none;
    border: none;
    background-color: #878787;
    border-color: #878787;
    color: #FFF;
    padding: 0.14rem 1.375rem;
}

html .tabs-nav a {
    color: #FFF;
    background: none;
    border: none;
    background-color: #308ee0;
    border-color: #308ee0;
    color: #FFF;
    padding: 0.14rem 1.375rem;
}

html .tabs-nav a,
html .tabs-nav a span {
    background-image: none;
}

html ul.tabs-nav {
    padding: 0;
    border: none;
}

html .tabs-container {
    border: none;
}

html .tabs-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* CLEARFIX */
.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    zoom: 1;
    /* For IE 6/7 (trigger hasLayout) */
}
