* {
    font-family: 'Open Sans', sans-serif;
}

.container-fluid {
    /*height: calc(100% - 150px);*/
    /*height: 100%;*/
}

main {
    min-height: calc(100vh - 150px);
}

html {
    font-size: 14px;
}

.btn.btn-primary {
    background-color: #0092A7 !important;
    border-color: #0092A7 !important;
}

.btn.btn-default {
    border: 1px solid #DBDBDB !important;
    color: #0092A7 !important;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.btn-custom {
    width: 30px;
    height: 30px;
    min-width: 30px;
    cursor: pointer;
    background: url('../images/valsecchi-back.svg') no-repeat center;
    background-size: cover;
}

html {
    position: relative;
    min-height: 100%;
}

html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    /*min-height: 100dvh;*/ /* dynamic viewport height: tiene conto di barra URL, ecc. */
    /*min-height: 100vh;*/ /* fallback per browser vecchi */
    /*min-height: 100vh;*/
    /*min-height: calc(100dvh + 73px);
    min-height: calc(100vh + 73px);*/ /* fallback per browser vecchi */
    /*margin-bottom: 60px;*/
}

.pointer {
    cursor: pointer;
}

.index-title {
    text-align: left;
    /*font: normal normal bold 30px/27px Open Sans;*/
    font-size: 30px;
    font-weight: bold;
    line-height: 27px;
    letter-spacing: 0px;
    color: #0092A7;
    opacity: 1;
}

.index-actionbox {
    background: #FBFBFB 0% 0% no-repeat padding-box;
    border: 1px solid #DBDBDB;
    border-radius: 10px;
    opacity: 1;
    padding: 22px 30px;
}

    .index-actionbox button {
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #DBDBDB;
        border-radius: 6px;
        opacity: 1;
        font-size: 18px;
        font-weight: 700;
        line-height: 18px;
        letter-spacing: 0px;
        color: #0092A7;
        padding: 7px 20px;
    }

.detail-actionbox {
    background: #DFF1F4 0% 0% no-repeat padding-box;
    border: 1px solid #DBDBDB;
    border-radius: 10px;
    opacity: 1;
    padding: 11px 22px;
}

    .detail-actionbox button {
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #DBDBDB;
        border-radius: 6px;
        font-size: 18px;
        font-weight: 700;
        line-height: 18px;
        letter-spacing: 0px;
        color: #A8A8A8;
        padding: 7px 20px;
    }

        .detail-actionbox button.active {
            color: #0092A7;
        }

        .detail-actionbox button.button-grey-noborder {
            background: none;
            border: none;
            color: #656565;
        }

#paginationDataTable {
    border-collapse: separate
}

    #paginationDataTable #columnSearchRow .input-group-text {
        background-color: unset;
        border: none;
        color: #0092A7;
    }



    #paginationDataTable #columnSearchRow .form-control {
        background-color: unset;
        border: none;
    }

        #paginationDataTable #columnSearchRow .form-control:focus {
            box-shadow: unset;
        }


    #paginationDataTable .fa-ellipsis-vertical {
        font-size: 25px;
    }

    #paginationDataTable thead th {
        background: #ABF3FF 0% 0% no-repeat padding-box;
        border: 1px solid #0092A7;
        opacity: 1;
        font-size: 18px;
        font-weight: 700;
        line-height: 18px;
        letter-spacing: 0px;
        color: #1D1D1D;
    }

        #paginationDataTable thead th:first-child {
            border-radius: 10px 0px 0px 0px;
        }

        #paginationDataTable thead th:last-child {
            border-radius: 0px 10px 0px 0px;
        }

    #paginationDataTable span.green {
        background-color: #72FB84 !important;
        color: black !important;
    }

span.green {
    background-color: #72FB84 !important;
    color: black !important;
}

span.red {
    background-color: #EE2404 !important;
}

#paginationDataTable_info {
    padding: unset !important;
}

ul.pagination {
    justify-content: center !important;
}

#paginationDataTable_paginate i {
    background-color: unset;
    border: none;
    color: #0092A7;
}

#paginationDataTable_paginate .page-item.active .page-link {
    background-color: unset;
    background-color: #fff;
    border-color: #dee2e6;
    color: black;
    font-weight: 700
}

.select2-container {
    width: 100% !important;
}

table thead th:first-child {
    border-radius: 10px 0px 0px 0px;
}

table thead th:last-child {
    border-radius: 0px 10px 0px 0px;
}

table.dataTable.table-striped > thead > tr > *.emptyHeader {
    background: #ABF3FF 0% 0% no-repeat padding-box !important;
    border-color: #0092A7 !important;
    opacity: 1 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 18px !important;
    letter-spacing: 0px !important;
    color: #1D1D1D !important;
    text-align: left !important;
}

table.dataTable.table-striped > thead > tr > *.editableHeader {
    background: #ABF3FF 0% 0% no-repeat padding-box !important;
    border-color: #0092A7 !important;
    opacity: 1 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 18px !important;
    letter-spacing: 0px !important;
    color: #1D1D1D !important;
    text-align: left !important;
}

    table.dataTable.table-striped > thead > tr > *.editableHeader > .editableIcon {
        position: absolute;
        top: 50%;
        right: 25px;
        transform: translateY(-50%);
        background: url('../images/valsecchi-pencil.svg') center;
        width: 25px;
        height: 25px;
    }

table.dataTable.table-striped > thead > tr > *.lockedHeader {
    background: #ABF3FF 0% 0% no-repeat padding-box !important;
    border-color: #0092A7 !important;
    opacity: 1 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 18px !important;
    letter-spacing: 0px !important;
    color: #1D1D1D !important;
    text-align: left !important;
}

    table.dataTable.table-striped > thead > tr > *.lockedHeader > .lockedIcon {
        position: absolute;
        top: 50%;
        right: 25px;
        transform: translateY(-50%);
        background: url('../images/valsecchi-padlock.svg') center;
        width: 25px;
        height: 25px;
    }

table.dataTable.table-striped > thead > tr#columnSearchRow > th {
    border-radius: 0px 0px 0px 0px !important;
}

table.dataTable.table-striped > tbody > tr.odd > .prevgrey {
    box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.05);
}

table.dataTable.table-striped > tbody > tr.even > .prevgrey {
    box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.05);
}

table.dataTable.table-striped > tbody > tr.odd > .prevwhite {
    box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0);
}

table.dataTable.table-striped > tbody > tr.even > .prevwhite {
    box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0);
}

table.dataTable.table-striped > tbody > tr.odd > .prevgreen {
    box-shadow: inset 0 0 0 9999px rgba(144, 238, 144, 0.5);
}

table.dataTable.table-striped > tbody > tr.even > .prevgreen {
    box-shadow: inset 0 0 0 9999px rgba(144, 238, 144, 0.5);
}

table.dataTable.table-striped > tbody > tr.odd > .prevred {
    box-shadow: inset 0 0 0 9999px rgba(255, 160, 160, 0.5);
}

table.dataTable.table-striped > tbody > tr.even > .prevred {
    box-shadow: inset 0 0 0 9999px rgba(255, 160, 160, 0.5);
}

table.dataTable.table-striped > tbody > tr.odd > .prevblue {
    box-shadow: inset 0 0 0 9999px rgba(171, 243, 255, 0.5);
}

table.dataTable.table-striped > tbody > tr.even > .prevblue {
    box-shadow: inset 0 0 0 9999px rgba(171, 243, 255, 0.5);
}

table.dataTable.table-striped > tbody > tr.odd > .invoicePendingTd {
    box-shadow: inset 0 0 0 9999px rgb(3 169 244 / 36%);
}

table.dataTable.table-striped > tbody > tr.even > .invoicePendingTd {
    box-shadow: inset 0 0 0 9999px rgb(3 169 244 / 36%);
}

table.dataTable.table-striped > tbody > tr.odd > .prevgreen2 {
    box-shadow: inset 0 0 0 9999px #f0fff3;
}

table.dataTable.table-striped > tbody > tr.even > .prevgreen2 {
    box-shadow: inset 0 0 0 9999px #f0fff3;
}

.dropdown-menu a {
    cursor: pointer;
}

#paginationDataTable_processing {
    z-index: 10;
}

/* Per il menu collegamenti fatture/ddt */
.grey-row {
    background-color: #f2f2f2;
}

/*DROPZONE*/
.dropzone {
    border: 0.2rem dashed #6583fe;
    padding: 2rem;
    border-radius: 0.25rem;
    background-color: #fff;
    text-align: center;
    font-size: 1.5rem;
    transition: 0.25s background-color ease-in-out;
    cursor: pointer;
}

    .dropzone-dragging,
    .dropzone:hover {
        background-color: #f3f5ff;
    }

.dropzone-icon {
    max-width: 75px;
    display: block;
    margin: 0 auto 1.5rem;
}

.dropzone-input {
    display: none;
}

input[type=number] {
    -moz-appearance: textfield;
    -webkit-appearance: none;
    appearance: textfield;
}

/* ALLEGATI */
.attachment-container {
    position: relative;
    padding-top: 100%;
    margin-bottom: 20px;
}

.attachment-square {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top left;
    border: 1px solid #DBDBDB;
    border-radius: 5px;
}

.attachment-name {
    position: absolute;
    bottom: 5px;
    left: 5px;
    padding: 5px 10px;
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    border-radius: 5px;
    z-index: 1;
    word-break: break-all;
}

.attachment-options {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 5px;
    padding: 5px;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75);
    z-index: 9999;
    display: block;
    justify-content: center;
    align-items: center;
}

.overlay-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    pointer-events: none;
}

/*.dataTables_scrollBody {
    padding-bottom: 30vh;
}*/


table.dataTable tbody tr > .dtfc-fixed-left, table.dataTable tbody tr > .dtfc-fixed-right {
    /*background-color: transparent;*/
}

.voice-collapsed {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    width: 600px;
    white-space: pre-line;
}

.voice-expanded {
    width: 600px;
    white-space: pre-line;
}

.bg-violetto {
    --bs-bg-opacity: 1;
    background-color: #DDD3FF !important;
}

.isOptionalVoiceRow, .isOptionalVoiceRow td {
    background-color: #DAF2D0 !important;
}

.isIntegrationVoiceRow, .isIntegrationVoiceRow td {
    background-color: #FBE2D5 !important;
    color: #FE201C !important;
}

div.dataTables_processing {
    z-index: 999999;
}
