@font-face {
    font-family: "Soleil";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/Soleil.eot");
    src: url("../fonts/Soleil.eot?#iefix") format("embedded-opentype"),
        url("../fonts/Soleil.woff2") format("woff2"),
        url("../fonts/Soleil.woff") format("woff"),
        url("../fonts/Soleil.ttf") format("truetype"),
        url("../fonts/Soleil.svg#svgFontName") format("svg");
    -webkit-font-smoothing: antialiased
}

@keyframes spin {
    0% {
        transform: rotate(0deg)
    }
    100% {
        transform: rotate(360deg)
    }
}

.d-grid {
    display: grid
}

html,
body,
main,
#app,
#loader {
    height: 100%;
    width: 100%
}

body {
    background: #f8f8f8;
    color: #333;
    font-family: "Soleil";
    height: calc(100% - 100.5px);
}

main {
    margin-top: 80px;
    margin-bottom: 20.5px;
}

.modal-header {
    background: #F7F7F7
}

.custom-label-form {
    font-family: sans-serif;
    font-size: 12px;
    font-weight: 500;
    margin: 0;
    margin-bottom: 2px
}

.card,
.form-control {
    font-family: sans-serif;
    font-size: 0.9rem
}

.form-control {
    background-color: #fdfdfd;
    height: calc(1.5em + 0.75rem + 8px)
}

.custom-scrollbar::-webkit-scrollbar-track,
.custom-scrollbar-2::-webkit-scrollbar-track {
    box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: inset 0 0 3px rgba(32, 16, 16, 0.3);
    border-radius: 10px;
    background-color: #f5f5f5
}

.custom-scrollbar:hover {
    overflow-y: auto !important
}

.custom-scrollbar::-webkit-scrollbar {
    width: 3px;
    height: 8px;
    background-color: #f5f5f5;
    margin-right: -3px
}

.custom-scrollbar-2::-webkit-scrollbar {
    width: 5px;
    height: 8px;
    background-color: #f5f5f5
}

.custom-scrollbar::-webkit-scrollbar-thumb,
.custom-scrollbar-2::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: rgba(0, 0, 0, 0.2)
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover,
.custom-scrollbar-2::-webkit-scrollbar-thumb:hover {
    background-color: rgba(0, 0, 0, 0.3)
}

@-moz-document url-prefix() {
    .custom-scrollbar {
        scrollbar-color: #f5f5f5 rgba(32, 16, 16, 0.3);
        scrollbar-width: thin
    }

    .custom-scrollbar:hover {
        margin-right: -8px
    }
}

.btn-target {
    color: #fff;
    background: #084f96
}

.btn-target:hover {
    color: #fff;
    background: #084f9696
}

.main-toolbar {
    background: #fff;
    display: flex;
    font-family: sans-serif;
    position: fixed;
    top: 0;
    height: 80px;
    width: 100%;
    z-index: 4;
    
}

.main-toolbar [onclick]:hover {
    cursor: pointer;
    text-decoration: underline
}

.main-toolbar #link-home > img {
    object-fit: contain;
    padding: 0 0.75rem 1.25rem 2rem;
    width: 200px
}

.main-toolbar a {
    color: #084f96
}

.user-card:hover {
    border: solid #ced4da 1px
}

.user-card:hover .dropdown-toolbar-user {
    height: unset
}

.main-toolbar a:hover .dropdown-toolbar {
    display: block
}

.user-card:hover .dropdown-icon,
.main-toolbar a:hover > .dropdown-icon {
    transform: rotate(180deg)
}

.user-card {
    background: #f7f7f7;
    border-radius: 0.5rem;
    border: solid #e8e8e8 1px;
    padding: 10px;
    padding-right: 65px;
    position: relative;
}

.user-pic {
    background: #084f96;
    border-radius: 1.5rem;
    color: white;
    font-family: tahoma;
    font-size: 0.8rem;
    font-weight: 200;
    display: flex;
    cursor: pointer;
    font-weight: 600;
    line-height: 2.2;
    margin: auto;
    text-align: center;
    height: 35px;
    width: 35px
}

.user-card:hover .dropdown-toolbar-user {
    height: unset;
}

.main-toolbar a:hover .dropdown-toolbar {
    display: block
}

.subdropdown-toolbar {
    width: 180px
}

.main-toolbar a:hover .dropdown-toolbar > li > .subdropdown-toolbar {
    position: absolute;
    left: 100%;
    padding: 0;
    list-style-type: none;
    background: white;
    display: none;
    border: 1px solid rgba(0, 0, 0, .125);
    border-radius: .5rem;
    transition: 0.3s
}

.subdropdown-toolbar > li {
    padding: 10px 20px
}

.main-toolbar a:hover .dropdown-toolbar > li:hover > .subdropdown-toolbar {
    display: block
}

.user-card:hover .dropdown-icon,
.main-toolbar a:hover>.dropdown-icon {
    transform: rotate(180deg)
}

.dropdown-icon {
    position: absolute;
    right: 5px;
    top: calc(50% - 5px);
    transition: 0.3s;
    width: 12px
}

.dropdown-toolbar {
    background: white;
    border: solid 1px #ced4da;
    border-radius: .5rem;
    display: none;
    left: calc(50% - 90px);
    list-style-type: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 70px;
    width: 180px
}

/* .dropdown-toolbar:before {
    content: "\A";
    border-style: solid;
    border-width: 10px 15px 10px 15px;
    border-color: transparent transparent #ced4da transparent;
    position: absolute;
    right: calc(50% - 15px);
    top: -20px
} 

.dropdown-toolbar:after {
    content: "\A";
    border-style: solid;
    border-width: 10px 15px 10px 15px;
    border-color: transparent transparent #FFF transparent;
    position: absolute;
    right: calc(50% - 15px);
    top: -19px
} */

.dropdown-toolbar-user {
    background: #ffffff;
    border: solid #c9c9c9 1px;
    border-radius: 0.5rem;
    color: black;
    list-style-type: none;
    margin-top: 3px;
    padding: 10px 0px;
    overflow: hidden;
    position: absolute;
    top: 59px;
    transition: 0.3s;
    width: 170px;
    right: 0;
    display: none;
    z-index: -1
}

.dropdown-toolbar-user > li,
.dropdown-toolbar > li {
    border-radius: .5rem;
    display: grid;
    font-size: 12px;
    font-weight: 600;
    position: relative;
    text-align: left
}

.dropdown-toolbar-user > li {
    padding: 8px 20px
}

.dropdown-toolbar > li {
    padding: 0 20px
}

.dropdown-toolbar > li > span {
    padding: 10px 0
}

.dropdown-toolbar > li > span > .dropdown-icon {
    top: calc(50% - 6px);
    transform: rotate(-90deg)
}

.dropdown-toolbar-user > li:hover,
.dropdown-toolbar > li:hover,
.subdropdown-toolbar > li:hover {
    background: #f7f7f7
}

.autocomplete {
    padding-right: 57px
}

.autocomplete-result {
    background: white;
    border: solid #ced4da 1px;
    border-radius: 0.25rem;
    font-family: sans-serif;
    font-size: 0.9rem;
    position: absolute;
    max-height: 180px;
    overflow-y: auto;
    width: 100%;
    z-index: 9999
}

.autocomplete-result:empty {
    display: none
}

.autocomplete-line {
    padding: 5px;
    cursor: pointer
}

.autocomplete-line.hovered {
    background: rgba(0, 0, 0, 0.15)
}

.btn-search-grid {
    background: white;
    border-color: #ced4da;
    border-left: unset;
    color: #084f96;
    font-size: 0.9rem
}

.btn-search-grid:hover {
    background: white;
    border-color: #ced4da;
    border-left: unset;
    color: #084f969d
}

.btn-toolbar > a > .my-icon:not(.dropdown-icon) {
    margin-top: auto;
    object-fit: contain;
    padding: 5px;
    height: 40px;
    width: 50px;
    margin-left: 30px
}

.btn-toolbar > a > span {
    font-family: tahoma;
    font-size: 12px;
    font-weight: 400;
    margin-top: -12px
}

.btn-toolbar > a {
    cursor: pointer;
    color: #000 !important;
    display: grid;
    height: 100%;
    padding: 0;
    position: relative;
    text-align: center;
    transition: 0.3s;
    width: 110px
}

.btn-toolbar > a > * {
    line-height: 1
}

.btn-toolbar > a:hover {
    color: #c9c9c9;
    text-decoration: none
}

.btn-toolbar > a:not(:last-of-type)::after {
    content: " ";
    width: 1px;
    height: 30px;
    background-color: #ced4da;
    position: absolute;
    right: 0;
    top: calc(50% - 15px)
}

.btn-toolbar .fa,
.btn-toolbar .far,
.btn-toolbar .fas {
    font-size: 18px;
    margin: auto
}

.header-color {
    color: #000
}

.custom-table {
    height: calc(100% - 120px)
}

.custom-table .table {
    color: #333 !important
}

.custom-table td {
    vertical-align: middle
}

.custom-table tr[onclick]:hover,
.custom-table td[onclick]:hover {
    color: #4b9bd5;
    cursor: pointer
}

.table-body-scroll {
    overflow-y: auto;
    height: 100%
}

.table-header-scroll tr {
    background-color: #e8e8e8
}

.table-header-scroll > table,
.table-body-scroll > table {
    width: 100%;
}

.table-header-scroll > table th,
.table-body-scroll > table td {
    padding: .75rem
}

.table-body-scroll table tr {
    border-bottom: 0.5px
}

.btn-table-action .my-icon {
    color: #667;
    cursor: pointer;
    font-size: 20px;
    padding: 0 5px
}

.btn-table-action > .my-icon:hover,
.texto-tabela:hover, .texto-tabela:hover i,
#table-atribuicoes .my-icon:hover,
#table-excecoes .my-icon:hover {
    color: #0416b4
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    color: #004D9D;
    background: #F7F7F7;
    border-bottom: 1px solid #F7F7F7
}

.nav-tabs .nav-link {
    color: gray
}

.nav-tabs {
    border-bottom: none
}

.form-container-bordered {
    background: #F7F7F7;
    border: 1px solid #dee2e6;
    border-radius: 0rem 0.35rem 0.35rem 0.35rem;
    padding: 1rem;
    padding-right: 1.8rem;
    margin-bottom: 1.5rem
}

.custom-fab {
    border-radius: 25rem;
    bottom: 30px;
    position: fixed;
    right: 30px;
    height: 50px;
    width: 50px;
    box-shadow: 0 8px 6px -6px #999;
    -moz-box-shadow: 0 8px 6px -6px #999;
    -webkit-box-shadow: 0 8px 6px -6px #999;
    z-index: 3
}

.user-name span {
    display: grid;
    color: #404040;
    line-height: 1
}

.user-name span:first-of-type {
    font-size: 12px;
    font-family: tahoma;
    font-weight: 800;
    margin-bottom: 3px;
    color: #040404
}

.user-name span:last-of-type {
    font-size: 11px;
    font-family: Tahoma;
    font-weight: 400;
    margin-bottom: 3px
}

.user-photo-sm {
    background: #f1f1f1;
    border-radius: 4rem;
    height: 30px;
    width: 30px;
    transition: 0.3s;
    object-fit: cover
}

.input-group > .input-group-append > .btn {
    border-top-right-radius: .25rem;
    border-bottom-right-radius: .25rem
}

input.autocomplete::-webkit-input-placeholder {
    color:#c2c4cc !important
}

input.autocomplete::-moz-placeholder {
    color:#c2c4cc !important
}

input.autocomplete::-ms-placeholder {
    color:#c2c4cc !important
}

input.autocomplete::placeholder {
    color:#c2c4cc !important
}

.modal-body {
    padding: 1rem 2rem 0 2rem
}

.modal-title {
    font-family: sans-serif
}

.custom-control-input:checked~.custom-control-label span {
    color: #858796
}

.custom-control-input:not(:disabled):active~.custom-control-label::before {
    color: #fff;
    background-color: #ccc;
    border-color: #ccc
}

.custom-control-input:focus~.custom-control-label::before {
    box-shadow: 0 0 0 0 transparent
}

.custom-control-label {
    font-size: 0.9rem
}

.main-toolbar i {
    scale:2;
    height:33px !important
}

.my-icon {
    cursor: pointer;
    padding: 0 2px
}

.d-flex button {
    text-transform: uppercase
}

*:focus, *:focus-visible {
    outline: none !important
}

span.tam-max {
    position: relative;
    top: -2px;
    display: inline-block;
    width: 100%;
    text-align: right
}

span, label, table, h1, h2, h3, h4, h5, h6, .texto-tabela {
    cursor: default
}

.main-toolbar span, .sortable-columns th:not(.nao-ordena) *, .modal-header *:not(h6) {
    cursor: pointer
}

.invalido {
    border: 2px solid #F00;
}

.ultima-atualizacao, .manter-junto, .manter-junto * {
    white-space: nowrap
}

.ultima-atualizacao {
    padding-right: 17px
}

.modal-body .btn-target-black {
    color: #FFF;
    background: rgb(31, 41, 55)
}

.modal-body .btn-target-black:hover {
    background: rgb(59, 77, 84)
}

.modal-lg {
    max-width: 650px
}

.modal-xl-kx {
    max-width: 900px
}

#produtosModal .form-search::after, #estoqueModal .form-search::after {
    bottom: 30px
}

table.atribuicoes th, table.atribuicoes td  {
    padding: 4px 10px
}

.j-end {
    justify-content: end
}

.w-108 {
    width: 108%
}

.px-20 {
    padding-left: 20px;
    padding-right: 20px
}

.px-15 {
    padding-left: 15px;
    padding-right: 15px
}

#loader {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.7);
    display: none
}

#loader div {
    border: 8px solid #f3f3f3; /* Light grey */
    border-top: 8px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 1.5s linear infinite;
    margin: auto
}

.clickable * {
    cursor: pointer
}

.td-foto {
    padding-right:0 !important;
}

.td-nome {
    padding-left:.75rem !important;
}

.img-menu {
    margin-left: 36px;
    margin-top: 14px;
    width: 37px
}

.fa-ellipsis-vertical {
    display: none !important
}

footer {
    position:absolute;
    bottom:0;
    background-color:#FFF;
    width: 100%;
    z-index: 2;
    border-top: 1px solid #DDDDDD;
}

.footer-text {
    font-size: 12px;
    margin-bottom: 0;
}

option:disabled {
    background: #DADADA
}

.imagem-erro {
    width: 26vw;
    height: 54vh;
    margin-top: -3vh
}

.loader-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    background: #DDD
}

.loader {
    border: 8px solid #f3f3f3; /* Light grey */
    border-top: 8px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 1.5s linear infinite;
    margin: auto;
    margin-top: calc(25% - 60px)
}

.pb5-px {
    padding-bottom: 5px
}

div.atribuicoes,
.modal-linha-dinamica .modal-dialog-scrollable .modal-tudo,
.modal:not(.modal-linha-dinamica) .modal-dialog-scrollable .modal-content {
    overflow-y: auto;
    overflow-x: hidden    
}

.modal:not(.modal-linha-dinamica) .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem)
}

#estoqueModal .modal-dialog-scrollable .modal-tudo {
    max-height: calc(100vh - 15rem)
}

#cpModal .modal-dialog-scrollable .modal-tudo {
    max-height: calc(100vh - 19rem)
}

div.atribuicoes {
    max-height: calc(100vh - 28.5rem)
}

.atalho {
    color: #0416b4 !important
}

.col-atalho {
    cursor: pointer;
    font-weight: 600
}

.col-atalho2 {
    margin-top: -26px
}

.j-center {
    justify-content: center
}

#contratoModal .d-flex>button {
    min-width: 302px
}

.cpModal .autocomplete {
    padding-left: 37px
}

.remove-linha i {
    scale: 0.8
}

.max-13 {
    max-width: 13.5%
}

.col-preco {
    max-width: 11.5%;
    flex: 0 0 11.5%
}

.col-atalho {
    max-width: 5%
}

.col-prod {
    max-width: 28.3333%;
    flex: 0 0 28.3333%
}

/*#cpModal .col-prod {
    max-width: 36.6666%;
    flex: 0 0 36.6666%
}*/

.cpModal .lixeira {
    font-size: 9pt;
    height: calc(1.5em + 0.75rem + 11px)
}

.modal-linha-dinamica .produto {
    font-size: 10pt;
    height: calc(1.5em + 0.75rem + 11px)
}

.select2-container--default .select2-selection--single {
    border: 1px solid #ced4da !important;
    border-radius: 0.25rem;
    height: calc(1.5em + 0.75rem + 8px) !important;
    display: flex;
    align-items: center;
    padding: .375rem .75rem;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #495057;
    line-height: inherit;
    padding: 0 !important; 
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
    position: absolute;
    margin-top: 8px;
    top: 0;
    right: 0.5rem;
    display: flex;
    align-items: center;
}

.atalho {
    cursor: pointer
}