:root {
    --primary-color: #b40315;
    --primary-color-dark: #7A2020;
    --primary-color-dark-hover: #5B2626;
    --primary-color-hover: #9b0312;
    --accent-color: #00838f;
}

html {
    height: 100vh;
}

body {
    height: 100vh;
}

main {
    min-height: calc(100vh - 128px - 2em);
}
/* #region OVERRIDE BOOTSTRAP-ITALIA */

.form-group {
    padding: 0;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

    /* Impedisce la possibilità di selezionare */
    .form-group label,
    .avatar p {
        -webkit-user-select: none; /* Safari */
        -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* IE10+/Edge */
        user-select: none; /* Standard */
    }

.invalid-feedback-custom {
    width: 100%;
    margin-top: .3rem;
    margin-left: .5rem;
    font-size: .777rem;
    line-height: 1em;
    color: #d9364f;
}

.it-datepicker-wrapper {
    padding-top: 0.8rem;
}

    .it-datepicker-wrapper .form-group {
        margin: 0;
    }

    .it-datepicker-wrapper .input-group {
        padding: 0;
    }

label.input-number-label {
    margin-bottom: 0.1rem;
}

.form-group textarea {
    margin-top: 0.3rem;
}

.form-group label {
    width: auto;
    top: 5px;
    line-height: calc(2.25rem - 1px);
}

.page-item.active .page-link,
.form-group label,
.bootstrap-select > .dropdown-toggle {
    z-index: 0;
}

.it-list-wrapper .it-list a:hover {
    background-color: inherit;
}

input[type="text"],
input[type="number"] {
    background: none;
}

.bootstrap-select-wrapper:not(.form-group) > label {
    top: 1.2rem;
}

.form-group .bootstrap-select-wrapper {
    padding-top: 0;
}

    .form-group .bootstrap-select-wrapper > label {
        top: .2rem;
        font-size: .777rem !important;
    }

.bootstrap-select-wrapper .dropdown.bootstrap-select .dropdown-toggle {
    padding-right: 2rem;
}

.bootstrap-select-wrapper .dropdown.bootstrap-select .dropdown-menu li a {
    color: #aaa;
}

    .bootstrap-select-wrapper .dropdown.bootstrap-select .dropdown-menu li a:hover {
        color: var(--primary-color);
    }

.bootstrap-select-wrapper .dropdown.bootstrap-select .dropdown-menu li:not(.selected) a:hover span.text {
    text-decoration: none;
}

.bootstrap-select-wrapper button.dropdown-toggle:after {
    top: 55%;
}

.bootstrap-select-wrapper .dropup button.dropdown-toggle:after {
    border-top: 0;
    border-right: .3em solid transparent;
    border-bottom: .3em solid;
    border-left: .3em solid transparent;
}

.pagination .page-item.active .page-link {
    font-size: 1.2rem;
    color: var(--primary-color);
}

.table a {
    font-weight: normal;
}

    .table a.btn.btn-sm {
        padding: .2rem .5rem;
    }

    .table a.btn.btn-xs {
        padding: 0.1rem 0.3rem;
        font-size: .9rem;
        vertical-align: top;
    }

        .table a.btn.btn-xs.equal-width {
            min-width: 5em;
        }

.table th {
    font-size: 15px;
    padding: 0.5em;
    font-weight: bold;
    text-align: center;
    text-transform: lowercase;
}

    .table th:first-letter {
        text-transform: uppercase;
    }

.table-sm {
    margin-bottom: 8px;
}

    .table-sm th {
        padding: 0.3em;
    }

.table td {
    font-size: 0.9rem;
}

.table .thead-light th {
    color: #444;
    background-color: #f7f7f9;
    border-color: #d6dce3;
}

.table.table-borderless th,
.table.table-borderless td {
    border: 0;
}

.it-header-navbar-wrapper {
    z-index: 3;
}

.go-back {
    font-size: 1rem;
    margin-left: auto;
    padding: 10px;
}

.link-list-wrapper ul li a {
    color: #002a54;
}

    .link-list-wrapper ul li a:hover:not(.disabled) {
        color: var(--primary-color);
    }

.navbar-nav .dropdown-toggle:after {
    content: none;
}

.dropup .dropdown-toggle::after {
    margin: 0;
}

@media (max-width: 991px) {
    .navbar .navbar-collapsable .menu-wrapper {
        right: 25%;
    }
}

.progress-container .progress-spinner.progress-spinner-active:not(.progress-spinner-double) {
    /*border-color: var(--primary-color) var(--primary-color) transparent;*/
    border-color: #fff #fff transparent;
}

.progress-spinner {
    width: 96px;
    height: 96px;
    border-width: 8px;
}

.btn-info {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8;
}

    .btn-info:hover {
        color: #fff;
        background-color: #138496;
        border-color: #117a8b;
    }

.font-weight-light-bold {
    font-weight: 600 !important;
}

.input-number.input-number-currency input[type=number],
.input-number.input-number-percentage input[type=number] {
    padding-left: 32px;
}

.input-number small.form-text {
    margin: 0;
    padding: 0.1rem .5rem;
    font-size: .777rem;
}

.form-control,
.form-control:focus {
    box-shadow: none;
    background-color: inherit;
}

    .form-control[readonly],
    .form-control[readonly]:focus,
    .input-number input[type=number][readonly],
    .it-datepicker-wrapper .input-group .it-date-datepicker[readonly],
    .bootstrap-select-wrapper button.disabled {
        background-color: #e6e9f2;
        cursor: initial;
        color: #5c6f82;
        opacity: 1;
    }

        .form-control[readonly] + label {
            cursor: initial;
        }

        .input-number input[type=number][readonly] + .input-number-add,
        .input-number input[type=number][readonly] + .input-number-add + .input-number-sub,
        .it-date-datepicker[readonly] + .datepicker-button {
            display: none;
        }

        .bootstrap-select-wrapper button.disabled::after {
            content: none;
        }

.input-group > .form-control[readonly]:focus {
    z-index: 0;
}

.text-transform-none {
    text-transform: none !important;
}
/* #endregion OVERRIDE BOOTSTRAP-ITALIA */
/* #region OVERRIDE DATATABLES */
table.dataTable {
    border-collapse: collapse !important;
}

/*div.dataTables_wrapper {
    min-height: 12em;
    overflow: hidden;
}*/

/*[mlago] Overlay solo sulla tabella - Sostituito da quello su tutta la pagina*/
/*div.dataTables_wrapper div.dataTables_processing {
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%; /*fallback*/ /*
        height: calc(100% - 12px);
        min-height: 7em;
        margin: 0;
        margin-top: 6px;
        background: radial-gradient(rgba(20, 20, 20,.1), rgba(0, 0, 0, .1));
        background: -webkit-radial-gradient(rgba(20, 20, 20,.1), rgba(0, 0, 0,.1));
    }*/

div.dataTables_wrapper div.dataTables_processing {
    margin: 0;
    padding: 0;
}

    div.dataTables_wrapper div.dataTables_processing:after {
        content: none;
    }

    div.dataTables_wrapper div.dataTables_processing .progress-container,
    div.ajax_processing .progress-container {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: -ms-radial-gradient(rgba(20, 20, 20,.6), rgba(0, 0, 0,.6)); /* IE Fallback */
        background: -webkit-radial-gradient(rgba(20, 20, 20,.6), rgba(0, 0, 0,.6));
        z-index: 2;
    }

table.table-bordered.dataTable tbody th,
table.table-bordered.dataTable tbody td {
    border-bottom: 1px solid #d6dce3;
}

.fondo-grigio .breadcrumb-container {
    padding: 0 !important;
}

.breadcrumb-container .breadcrumb {
    font-size: 1rem;
    padding: 20px;
    padding-bottom: 0;
    margin-bottom: 0;
}
/* #endregion OVERRIDE DATATABLES */

/* #region MAIN */

.grid-container {
    display: inline-block; /* fallback */
    display: inline-grid;
    text-align: left;
}

.left-border-colored {
    border-left: 4px solid var(--primary-color);
    padding-left: 4px;
}

.extra-width {
    margin-right: -6px;
    margin-left: -6px;
}

.blue-text {
    color: var(--primary-color);
}

.break {
    word-break: break-word;
}

.page-header {
    margin-bottom: 1rem;
}

h2.page-title {
    margin-left: .3rem;
}

.page-header h2.page-title {
    margin-left: .3rem;
    margin-bottom: 0;
}

div.ajax_processing {
    display: none;
}

#cover {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: #FFF;
    z-index: 2;
}

input[type="number"].no-arrows::-webkit-outer-spin-button,
input[type="number"].no-arrows::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.my-45,
.mt-45 {
    margin-top: 36px !important;
}

.my-45,
.mb-45 {
    margin-bottom: 36px !important;
}

.w-85 {
    width: 85% !important;
}

.fas.fa-exclamation.custom-blue {
    color: var(--primary-color);
    border: 3px solid;
    padding: .5rem;
    border-radius: 50%;
    width: 2.7rem;
    height: 2.7rem;
    font-size: 1.5rem;
    margin-right: 1rem;
}

a.collapse-left-icon[data-toggle=collapse][aria-expanded=false]:before {
    content: '+';
    margin-right: .2rem;
}

a.collapse-left-icon[data-toggle=collapse][aria-expanded=true]:before {
    content: '-';
    margin-right: .2rem;
}

.search-content .btn-outline-secondary {
    -webkit-box-shadow: inset 0 0 0 1px #bdbdbd;
    box-shadow: inset 0 0 0 1px #bdbdbd;
}

    .search-content .btn-outline-secondary:hover {
        -webkit-box-shadow: inset 0 0 0 1px #7b7b7b;
        box-shadow: inset 0 0 0 1px #7b7b7b;
    }

.separator {
    padding-left: .4em;
    padding-right: .4em;
    font-weight: 600;
}

.form-container {
    margin-bottom: 14px;
}

/*.form-container:first-of-type {
        margin-top: .5rem;
    }

    .form-container:last-of-type {
        margin-bottom: 0;
    }*/

/* #region LNK_ICON */
.lnk-icon:before {
    font-family: 'Font Awesome 5 Free';
    position: relative;
    margin-right: 0.2rem;
    white-space: nowrap;
    font-weight: normal;
}

.lnk-icon.icon-alt:before {
    font-weight: bold;
}

.lnk-icon.icon-pdf:before {
    content: "\f1c1";
}

/* #endregion LNK_ICON */

/* #region TABLE_LIST (Esempio: Dettaglio consulente pubblico -> Oggetto, Durata, etc..) */

.table.table-list th,
.table.table-list td {
    vertical-align: baseline;
}

.table.table-list th {
    padding: 1rem;
    font-size: 1rem;
    font-weight: 600;
    text-align: left;
}

.table.table-list td {
    padding: 0.5rem;
    font-size: 0.9rem;
}

.table.table-sm.table-list th,
.table.table-sm.table-list td {
    padding: 0.8rem;
    font-size: 0.9rem;
}

.table.table-list.table-list-compact th,
.table.table-list.table-list-compact td {
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

.table.table-list.table-list-compact td {
    font-weight: normal;
}

/* #endregion TABLE_LIST */

/* #region TABLE_DETTAGLIO (Esempio: Dettaglio consulente pubblico -> Documenti allegati) */

.table.table-dettaglio {
    font-size: 0.825rem;
}

    .table.table-dettaglio th {
        padding-top: 0;
        padding-bottom: 0.2em;
        padding-left: 0.2rem;
        font-weight: 600;
        text-align: left;
        color: #435a70;
        border-color: #738596;
        border-width: 1px;
    }

    .table.table-dettaglio td {
        font-size: inherit;
    }

.table.table-bordered.table-dettaglio {
    border-color: #738596;
}

    .table.table-bordered.table-dettaglio th {
        text-align: center;
    }

    .table.table-bordered.table-dettaglio td {
        text-align: center;
        border-color: #c3c3c3;
        font-weight: normal;
    }

/* #endregion TABLE_DETTAGLIO */

/* #region BUTTONS */

.btn.btn-icon {
    font-size: 1rem;
    white-space: nowrap;
}

    .btn.btn-icon i {
        margin-right: 0.4rem;
    }

.btn-square {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    margin: .1rem;
}

    .btn-square.btn-primary.disabled,
    .btn-square.btn-danger.disabled,
    .btn-square.btn-success.disabled {
        color: #fff;
        background-color: #bcc3d6;
        border-color: #9da2b3;
    }

.btn-group .btn-square {
    width: 2.5rem;
    height: 2.5rem;
    margin: 0;
}

    .btn-group .btn-square i,
    .btn-group .btn-square svg {
        font-size: 1.25rem;
    }

/* #endregion BUTTONS */

/* #endregion MAIN */

/* #region SEARCH FORM */

.search-content {
    margin-top: 1rem;
    margin-bottom: 2rem;
    padding: 1.75rem;
    padding-top: 1rem;
    /*background: #f0f7ff;*/
    background: #f7f7f9;
    border-radius: 5px;
}

    .search-content .form-group {
        margin: .8rem 0;
    }

.form-row.btn-group-search {
    margin-top: .5rem;
    justify-content: flex-end;
}

    .form-row.btn-group-search .btn {
        min-width: 100px;
        margin: 0 0.2rem;
        font-size: 18px;
        /*line-height: inherit;*/
    }

.provvedimenti-container {
    display: inline-block;
    padding: 0.5rem;
    line-height: 1rem;
}

    .provvedimenti-container > span {
        font-size: 1rem;
        font-weight: bold;
        /*line-height: 0.9em;*/
        /*margin-bottom: 0.2rem;*/
        /*border-bottom: 2px solid var(--primary-color);*/
    }

    .provvedimenti-container > div {
        margin-left: -0.2rem;
        padding: 0.2rem;
    }

        .provvedimenti-container > div > i,
        .provvedimenti-container > div > svg {
            margin-right: 0.3rem;
        }

/* #endregion SEARCH FORM */

/* #region DATATABLES */

td.btn-datatable-details {
    background: url('/Trasparenza/Content/DataTables/images/details_plus.png') no-repeat center center;
    background-size: 2em;
    cursor: pointer;
}

    td.btn-datatable-details.btn-datatable-small {
        background-size: 1.5em;
    }

tr.shown td.btn-datatable-details {
    background: url('/Trasparenza/Content/DataTables/images/details_minus.png') no-repeat center center;
    background-size: 2em;
}

    tr.shown td.btn-datatable-details.btn-datatable-small {
        background-size: 1.5em;
    }

table.dataTable tr:hover + tr.btn-datatable-details-row {
    background-color: #e5f1fa;
}

table.dataTable tr.btn-datatable-details-row:hover {
    background: none;
}

nav.pagination-wrapper {
    margin-top: .6rem;
    justify-content: flex-end;
}

    nav.pagination-wrapper .form-group {
        width: 5.5rem;
    }

        nav.pagination-wrapper .form-group label {
            color: #435a70;
        }

        nav.pagination-wrapper .form-group input {
            padding-bottom: 0;
        }

/*nav.pagination-wrapper .form-group input::-webkit-outer-spin-button,
            nav.pagination-wrapper .form-group input::-webkit-inner-spin-button {
                display: none;
            }*/

/* #region DATATABLES GOTO */

.goto-wrapper {
    display: flex;
    align-items: flex-end;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #5c6f82;
}

    .goto-wrapper .btn {
        padding: 8px 16px;
        border-radius: 0;
    }

/* #endregion DATATABLES GOTO */

/* #endregion DATATABLES */

/* #region MODALI */

/* #region CUSTOM - LOGIN */

div.modal.custom-modal .modal-dialog .modal-content .modal-header {
    display: block;
    padding: 12px 24px;
    background-color: var(--primary-color);
    /*background-color: #32313B;
    border: 1px solid black;*/
    color: white;
}

div.modal.custom-modal .modal-header .close {
    padding: 18px;
    color: #fff;
    font-size: 2rem;
    opacity: 1;
}

    div.modal.custom-modal .modal-header .close:hover {
        color: #fff;
    }

/* #endregion CUSTOM - LOGIN */

/* #region PARTIAL */

div.modal.conferma-modal .modal-content .modal-header {
    justify-content: flex-start;
}

    div.modal.conferma-modal .modal-content .modal-header i {
        font-size: 1.2rem;
        margin-right: 0.5rem;
    }

    div.modal.conferma-modal .modal-content .modal-header .modal-title {
        color: #444;
        font-weight: 900;
    }

div.modal.conferma-modal .modal-content .modal-body {
    padding: 20px 24px 0;
    font-size: 16px;
}

    div.modal.conferma-modal .modal-content .modal-body p {
        padding: 0;
    }

div.modal.conferma-modal .modal-content .modal-footer {
    padding: 24px 24px 20px;
}

/* #endregion PARTIAL */

/* #endregion MODALI */

/* #region CALLOUT */

.bd-callout {
    padding: 1.25rem;
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
    border: 1px solid #eee;
    border-left-width: .25rem;
    border-radius: .25rem
}

    .bd-callout h4 {
        margin-top: 0;
        margin-bottom: .25rem
    }

    .bd-callout p:last-child {
        margin-bottom: 0
    }

    .bd-callout code {
        border-radius: .25rem
    }

    .bd-callout + .bd-callout {
        margin-top: -.25rem
    }

.bd-callout-info {
    border-left-color: #5bc0de
}

    .bd-callout-info h4 {
        color: #5bc0de
    }

.bd-callout-warning {
    border-left-color: #f0ad4e
}

    .bd-callout-warning h4 {
        color: #f0ad4e
    }

.bd-callout-danger {
    border-left-color: #d9534f
}

    .bd-callout-danger h4 {
        color: #d9534f
    }

/* #endregion CALLOUT*/

/* #region OVERRIDE per stile regione.veneto.it */
.btn.btn-primary,
.avatar.avatar-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

    .btn.btn-primary:not(:disabled):hover,
    .btn.btn-primary:not(:disabled):active {
        background-color: var(--primary-color-hover);
        border-color: var(--primary-color-hover);
    }

        .btn.btn-primary:not(:disabled):active:focus,
        .btn.btn-primary:not(:disabled):focus,
        .btn.btn-dark:not(:disabled):active:focus,
        .btn.btn-dark:not(:disabled):focus {
            box-shadow: none;
        }

.btn.btn-dark {
    background-color: var(--primary-color-dark);
    border-color: var(--primary-color-dark);
}

    .btn.btn-dark:not(:disabled):hover, .btn.btn-dark:not(:disabled):active {
        background-color: var(--primary-color-dark-hover);
        border-color: var(--primary-color-dark-hover);
    }

.bg-dark {
    background-color: var(--primary-color-dark) !important;
}

.bg-50 {
    background-color: #edeff2;
}

a,
.btn.btn-link,
.nav.nav-tabs.nav-tabs-vertical a.nav-link:hover,
.upload-file-list .upload-file.success p {
    color: var(--primary-color);
}

    a:not(.btn):not(.nav-link):not(.dropdown-item):not(.list-item):not([role="menuitem"]):not(.page-link):hover,
    .btn.btn-link:hover {
        color: var(--accent-color) !important;
    }

    a.page-link:hover {
        color: var(--primary-color) !important;
    }

.upload-file-list .upload-file.error p {
    color: #d9364f;
}

#title .site-title a:hover {
    text-decoration: none;
    color: #444 !important;
}

    #title .site-title a:hover small {
        text-decoration: none;
        color: #999 !important;
    }

.back-to-top {
    background: var(--primary-color);
}

    .back-to-top:hover {
        background: var(--primary-color-hover);
    }

#footer a:hover {
    color: #ffffff !important;
}

#nav-social a:hover {
    color: var(--primary-color-hover) !important;
}

#side-nav a:hover,
#bread-crumbs a:hover {
    color: var(--primary-color) !important;
}

.nav.nav-tabs.nav-tabs-vertical a.nav-link.active {
    color: var(--primary-color);
    border-right-color: var(--primary-color);
}

    .nav.nav-tabs.nav-tabs-vertical a.nav-link.active svg,
    .upload-file-list .upload-file.success svg,
    .upload-file-list td.doc-state:not(.uploading) svg,
    .it-list-wrapper .it-list a .it-rounded-icon svg,
    .icon-primary,
    #nav-vertical-tab-ico a:not(.active):hover .icon {
        fill: var(--primary-color) !important;
    }

.upload-file-list td.doc-state {
    padding-left: 5px;
    text-align: center;
    padding-right: 5px;
    width: 1%;
}

    .upload-file-list td.doc-state.uploading svg,
    .upload-file-list td.doc-state.error svg {
        fill: #5b6f82 !important;
    }

#nav-vertical-tab-ico a:not(.active) .icon-primary {
    fill: #5b6f82 !important;
}

.datepicker-button svg.icon {
    fill: var(--primary-color-dark-hover) !important;
}

.datepicker-button:hover svg.icon {
    fill: var(--primary-color) !important;
}

.it-list-wrapper .it-list a:hover .it-rounded-icon svg,
a:not(.btn):not(.nav-link):not(.back-to-top):hover svg {
    fill: var(--accent-color) !important;
}

.form-check [type=checkbox]:checked + label::after {
    border-color: var(--primary-color);
    background-color: var(--primary-color);
}

.link-list-wrapper ul li a {
    color: #686868;
}

td.curDay span,
td.day.selectable.focus span {
    background-color: var(--primary-color) !important;
    color: white;
}

.disabled {
    cursor: not-allowed !important;
}
/* #endregion OVERRIDE per stile regione.veneto.it */

.v-centered {
    margin-top: auto;
    margin-bottom: auto;
}

.text-16 {
    font-size: 16px !important;
}

.form-check.form-check-group {
    margin-top: 0;
    margin-bottom: 0;
}

.v-none {
    visibility: hidden !important;
}
