/*********  Tags *********/

a, a:active, a:hover, a:visited {
    color: #3ab872;
}

a, a:active, a:visited {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

body {
    background-color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 0.875rem;
    padding-top: 50px;
}

h1 {
    font-size: 1.375rem;
}

h2 {
    font-size: 1.25rem;
}

h3 {
    font-size: 1.125rem;
}

p {
    margin-bottom: 0.875rem;
}

table.dataTable > tbody > tr.error > td,
table.dataTable > tbody > tr.error > th {
    background-color: #fbd3d3;
}

table.dataTable > tbody > tr.finished > td,
table.dataTable > tbody > tr.finished > th,
table.dataTable > tbody > tr.rejected > td,
table.dataTable > tbody > tr.rejected > th {
    background-color: #fff;
}

table.dataTable > tbody > tr.running > td,
table.dataTable > tbody > tr.running > th {
    background-color: #dbfbd3;
}

table.dataTable > tbody > tr.standby > td,
table.dataTable > tbody > tr.standby > th {
    background-color: #ffe8b3;
}

/******** Classes ********/

.admin-tool-label {
    padding: 2px 0;
}

.admin-tool-button {
    border-width: 1px;
    padding: 1px 5px;
}

.admin-button-row + .admin-variable-row {
    margin-top: 15px;
}

.admin-variable-row + .admin-variable-row {
    margin-top: 0.1em;
}

.alert {
    margin-top: 20px;
    padding-bottom: 10px;
    padding-top: 10px;
}

.alert .close {
    margin-top: -4px;
}

.badge.bg-success {
    background-color: #3ab872 !important;
}

.btn.disabled {
    border: none;
    pointer-events: auto;
}

.btn-extract-filled,
a.btn-extract-filled,
a.btn-extract-filled:active,
a.btn-extract-filled:hover,
a.btn-extract-filled:visited {
    background-color: #3ab872;
    border-color: #3ab872;
    color: #fff;
    text-decoration: none;
}

.btn-extract-filled:hover,
.btn-extract-filled:active,
.btn-extract-filled:first-child:active {
    background-color: #3ab872;
    border-color: #3ab872;
}

.btn-extract-white {
    background-color: #fff;
    border-color: #3ab872;
    color: #3ab872;
}

.btn-extract-white:hover,
.btn-extract-white:active,
.btn-extract-white:first-child:active {
    background-color: #fff;
    border-color: #3ab872;
}

.btn-sm {
    padding: .0625rem .3125rem;
    font-size: .75rem;
    line-height: 1.5;
    border-radius: .1875rem;
}


.btn-check:not(:checked) + .btn-toggle:hover {
    border: 1px solid #ccc;
}

.btn-toggle {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.btn-check:checked + .btn-toggle {
    color: #fff;
    font-weight: bold;
}

.btn-check:checked + .btn-toggle-info {
    background-color: #5bc0de;
}

.btn-check:checked + .btn-toggle-no {
    background-color: #d9534f;
}

.btn-check:checked + .btn-toggle-yes {
    background-color: #3ab872;
}

.alert .btn-close {
    margin-top: -4px;
}

.alert-dismissible .btn-close {
    background: none;
    color:inherit;
    padding: .75rem 1.25rem;
}

.btn-close::before {
    content: "×";
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.caret-cell {
    float: left;
    min-height: 1px;
    position: relative;
    text-align: center;
}

.caret-row {
    height: 10px;
}

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

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

.code {
    font-family: monospace;
}

.code-green {
    color: #3c763d;
}

.container {
    max-width: 1140px;
}

.current-step h2 {
    margin-top: 1px;
}

.current-step h3 {
    margin-top: 0;
}

.current-step-caret {
    font-size: 4.375rem;
    margin-top: -39px;
}

.current-step-caret.current-step-caret-danger {
    color: #d9534f;
}


.current-step-caret.current-step-caret-standby {
    color: #ffb200;
}

.current-step-error {
    background-color: #fbd3d3;
    border-color: #a94442;
}

.current-step-action {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: max-content 1fr max-content;
    min-height: 230px;
    padding-right: 20px;
    padding-left: 15px;
}

.current-step-action-title {
    grid-column: 1;
    grid-row: 1;
}

.current-step-action-content {
    grid-column: 1;
    grid-row: 2;
    margin-bottom: 12px;
}

.current-step-action-buttons {
    grid-column: 1;
    grid-row: 3;
    text-align: end;
}

.current-step-action textarea {
    height: 100px;
    width: 100%;
    resize: vertical;
    max-width: 100%;
}

.remark-templates-list {
    width: 100%;
}

.current-step-action textarea + .remark-templates-list {
    margin-top: 10px;
}

.current-step-action textarea.task-error-reject-remark {
    height: 80px;
}

.current-step-error .current-step-action:not(:first-child) {
    border-left: solid 3px #a94442;
}

.current-step-standby .current-step-action:not(:first-child) {
    border-left: solid 3px #ffb200;
}

.current-step-standby {
    background-color: #ffe8b3;
    border-color: #ffb200;
}

.current-step-title {
    margin-bottom: 40px;
}

.current-step-standby .current-step-title {
    margin-bottom: 20px;
}

.connector-name {
    color: #808080;
    font-style: italic;
}

#connectorsStateContainer .dropdown {
    display: inline-block;
}

a.connector-state, .dropdown-item a {
    color: black;
}

a.connector-state:hover, .dropdown-item a:hover {
    text-decoration: none;
}

.connector-state {
    border-radius: 6px;
    border: 1px solid #ddd;
    border-left: 8px #3c763d;
    background-color: #dbfbd3;
    color: black;
    cursor: pointer;
    cursor: hand;
    font-size: 0.875rem;
    margin: 0 0 0 10px;
    padding: 5px;
}

.connector-state.connector-state-success {
    border-left-color: #3c763d;
    background-color: #dbfbd3;
}

.connector-state.connector-state-error {
    border-left-color: #a94442;
    background-color: #fbd3d3;
}

.twofactor-action-dropdown li.dropdown-item i {
    margin-right: 10px;
}

.dataTables_info {
    margin-left: 10px;
}

.datepicker-form-group {
    width: 135px;
}

.datepicker-dropdown {
    z-index: 10000;
}

.dt-bootstrap {
    margin-bottom: 20px;
}

.file-delete-button {
    background-color: transparent;
    border: none 0 transparent;
    color: red;
    margin-left: 10px;
    padding: 0;
}

.file-upload-button {
    margin-top: -7px;
}

div + .file-upload-button {
    margin-left: -14px;
    margin-top: 10px;
}

input[type="file"].hidden-file-upload-control {
    display: none;
}

.card {
    margin-bottom: 14px;
}

.card-header.ui-sortable-handle {
    cursor: grab;
}

.card.border-success .card-header {
    background-color: #DFF0D8;
}

.card-header h3 {
    font-size: 1.125em;
    margin-top: 8px;
}

.card-body .dt-bootstrap {
    margin-bottom: 0;
}

.card-body.card-body-2fa {
    text-align: center;
    padding: 3rem;
}

.card-body.card-body-2fa div {
    margin-bottom: .5rem;
}

.extract-proc-tasks .col-lg-8 .card .card-body .card .card-body{
    margin-bottom: 0;
}

.extract-proc-tasks .col-lg-8 .card .card-body .card{
    margin-bottom: 0;
}

.extract-proc-tasks .col-lg-8 .card .card-body p{
    margin-bottom: 0;
    font-size: 2.1875rem;
}

.form-control {
    padding: 6px 9px;
}

.card-body.card-body-2fa .form-control {
    display: inline;
    text-align: center;
    width: unset;
}

.card-body.card-body-2fa .button-row {
    display: flex;
    flex-flow: row nowrap;
    gap: .5rem;
    justify-content: center;
    padding-bottom: 1.5rem;
    padding-top: 1.5rem;
}

.card-body.card-body-2fa .button-row > * {
    min-width: 7.5rem;
}

span.form-control-plaintext {
    display: inline-block;
}

.form-control-plaintext {
    padding-left: 9px;
}

.form-group.form-group-with-label {
    min-height: 59px;
}

.form-group .btn-group {
    padding-top: 5px;
}

.form-group.form-group-with-label.form-group-checkbox {
    padding-top: 30px;
}

.history-status {
    word-break: break-all;
}

.history-status-error {
    color: red;
}

.history-status-finished, .history-status-ongoing {
    color: seagreen;
}

.history-status-skipped {
    color: darkgray;
}

.history-status-standby {
    color: #ffb200;
}

.inline-fields-table {
    margin: 20px 15px;
    max-width: calc(100% - 30px);
    width: 100%;
}

.inline-fields-table label {
    display: inline;
    font-weight: normal;
}

.inline-fields-table td {
    padding: 10px 0;
}

.inline-fields-table td.button-cell {
    width: 40px;
    max-width: 40px;
}

.inline-fields-table .form-control {
    display: inline;
    width: auto;
}

.label-success {
    background-color: #3ab872;
}

.layer-switcher {
    right: 0.5em;
    top: 0.5em;
}

table.list-table td {
    vertical-align: top;
}

table.list-table.files-list-table {
    width: 100%;
}

.files-button-container {
    align-items: baseline;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 10px;
}

.login-card .card-title .login-card-title {
    display: inline-block;
    font-size: 1.125rem;
    font-weight: 300;
    padding-bottom: 6px;
    padding-left: 20px;
    vertical-align: bottom;
}

.mandatory:before {
    content: "*";
    color: #d9534f;
    cursor: default;
    font-weight: bold;
}

.map {
    height: 450px;
    width: 100%;
}

.export-dxf {
    right: 0.5em;
    bottom: 0.5em;
}

.export-kml {
    right: 4.5em;
    bottom: 0.5em;
}

.ol-control.export-button > button {
    padding: 0.25em;
    width: auto;
}

.ol-control.ol-attribution {
    right: 8.5em;
}

.ol-attribution.ol-uncollapsible ~ .ol-control.export-button {
    bottom: 1.6em;
}

.navbar {
    padding-top: 0;
    padding-bottom: 0;
}

.navbar-toggler {
    margin: 0.5rem 0;
}

.navbar-brand {
    padding: 2px;
    margin-right: 30px;
}

.navbar-brand img {
    margin: 2px;
}

.navbar-nav > li  {
    font-size: 1rem;
}

.nav.navbar-nav .nav-item {
    display: flex;
    align-items: center;
    height: 100%;
}

.nav.navbar-nav .nav-item .nav-link.active {
    height: 100%;
    padding: .75rem .5rem;
}

.nav.navbar-nav .nav-item .nav-link,
.nav.navbar-nav .nav-item .nav-link:active,
.nav.navbar-nav .nav-item .nav-link:focus
.nav.navbar-nav .nav-item .nav-link:visited {
    color: rgba(0, 0, 0, .5)
}

.nav.navbar-nav .nav-item .nav-link:hover {
    color: rgba(0, 0, 0, .7);
    text-decoration: none;
}

.navbar-light .navbar-nav > .nav-item > a.nav-link.active,
.navbar-light .navbar-nav > .nav-item > a.nav-link.active:hover,
.navbar-light .navbar-nav > .nav-item > .active > a.nav-link.active:focus {
    color: white;
    background-color: #808080;
}

.page-header {
    padding-bottom: 9px;
    margin: 40px 0 20px;
    border-bottom: none;
    /*margin-top: 40px;*/
    /*margin-left: 10px;*/
}

.page-link, .page-link:hover, .page-link:active, page-link:visited {
    color: #3ab872;
}

.page-item.active .page-link {
    background-color: #3ab872;
    border-color: #3ab872;
}

.card-heading-large {
    font-size: 1.125rem;
    margin-bottom: 0;
    margin-top: 0;
}

.card-heading h3 {
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 0;
    padding-top: 0;
}

.card-heading .btn-sm {
    margin-top: -5px;
}

.filter-form-inline {
    display: flex;
    align-items: self-end;
}

.filter-form-inline .btn {
    height: 34px;
    padding: .25rem .75rem;
}

.filter-form-inline input, .filter-form-inline .select2-container {
    height: 34px;
    font-size: .85rem;
}

.filter-form-inline .col {
    flex: initial;
}

.filter-form-inline .col:not(:last-of-type) {
    margin-right: 10px;
}

.preserve-whitespace {
    overflow-wrap: break-word;
    white-space: pre-wrap;
}

.table-striped > tbody > tr:nth-child(2n+1) > td .progress.split .progress-bar {
    border-right-color: #f9f9f9;
}

.progress.split {
    background-color: #fff;
}

.progress.split .progress-bar + i.separator {
    width: 30px;
}

.progress.split .progress-bar + i.separator::before{
    content: "\f0da";
    font-size: 58px;
    line-height: 32px;
    margin-left: -1px;
    box-sizing: border-box;
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
}

.progress.split .progress-bar-current + i.separator::before{
    color: #3ab872;
}

.progress.split .progress-bar.bg-danger + i.separator::before{
    color: #dc3545;
}

.progress.split .progress-bar-done + i.separator::before{
    color: #a7d2a7;
}

.progress.split .progress-bar-standby + i.separator::before{
    color: #ffb200;
}

.progress.split .progress-bar-todo + i.separator::before{
    color: #cacaca;
}

.progress .progress-bar.progress-bar-current {
    background-image: none;
    animation: none;
    background-color: #3ab872;
}

.progress .progress-bar.progress-bar-done {
    background-image: none;
    animation: none;
    background-color: #a7d2a7;
}

.progress .progress-bar.progress-bar-standby {
    background-image: none;
    animation: none;
    background-color: #ffb200;
}

.progress .progress-bar.progress-bar-todo {
    background-image: none;
    animation: none;
    background-color: #CACACA;
}

.strong{
    font-weight: bold;
}

.popover-body {
    max-width:700px;
}

.popup-over-content {
    display:none;
}
.popover-content {
    padding: 0 0;
}
.popover {
    max-width: 650px;
    min-width: 500px;
    max-height: 500px;
    min-height: 100px;
    background-color: white;
    font-size: 0.6875rem;
}
.popover .popover-body {
    padding: 9px 14px;
    overflow: auto;
    max-height: 450px;
    min-width:650px;
    font-size: 0.8rem;
}

.popover .popup-header{
}

.popover .popup-header .img-close{
    position: absolute;
    cursor: pointer;
    right: 3px;
    margin-top:-10px;
}
.popover .popup-content {
    display: none;
    font-size: 0.6875rem;
    background: white;
    max-width:640px;
    min-width:480px;
    max-height:200px;
    min-height:90px;
    padding: 5px 7px;
    margin-top: 7px;
    overflow:auto;
}

.popover .popover-table {
    width:100%;
    border-collapse:collapse;
    margin-bottom: 20px;
}

.popover .popover-table .popover-table-header {
    vertical-align:top;
    border-top:solid black 1.5pt;
    border-left: none;
    border-bottom:solid black 1.5pt;
    border-right:none;
    background:#E5E5E5;
    padding:0 5.4pt 0 5.4pt;
}

.popover .popover-table .popover-table-header > p {
    margin: 3.0pt 2.85pt 3.0pt 0;
    font-weight: bold;
}

.popover .parameter-table .popover-table-header:nth-of-type(1),
.popover .parameter-table .popover-table-header:nth-of-type(3) {
    width:15%;
}

.popover .parameter-table .popover-table-header:nth-of-type(2),
.popover .parameter-table .popover-table-header:nth-of-type(4) {
    width:35%;
}

.popover .property-table .popover-table-header:nth-of-type(1) {
    width: 22%;
}

.popover .property-table .popover-table-header:nth-of-type(3) {
    width: 37%;
}

.popover .property-table .popover-table-header:nth-of-type(2) {
    width: 20%;
}
.popover .property-table .popover-table-header:nth-of-type(4) {
    width: 21%;
}

.popover .operator-table .popover-table-header:nth-of-type(1),
.popover .value-table .popover-table-header:nth-of-type(1)
{
    width: 22%;
}

.popover .operator-table .popover-table-header:nth-of-type(2) {
    width: 78%;
}

.popover .value-table .popover-table-header:nth-of-type(2) {
    width: 37%;
}

.popover .value-table .popover-table-header:nth-of-type(3) {
    width: 41%;
}

.popover .popover-table .popover-table-data {
    vertical-align:top;
    border:none;
    border-bottom:solid #808080 1.0pt;
    padding:0 5.4pt 0 5.4pt;
}

.popover .popover-table .popover-table-data > p {
    font-size: 10pt;
    margin: 3.0pt 2.85pt;
}

.popover .popover-table tr > .popover-table-data:first-child {
    font-weight: bold;
}

.popover .popover-table tr:last-of-type .popover-table-data {
    border-bottom: solid black 1.5pt;
}

.popover .rule-paragraph {
    margin-bottom: 6.0pt;
}

.popover .rule-title {
    margin-left: 15px;
}

.properties-select + .select2 .select2-selection__choice {
    background-color: #3ab872;
    border-color: #3ab872;
    color: #fff;
}

.properties-select + .select2 .select2-selection__choice__remove {
    color: #fff;
}

a.request-link {
    color: black;
}

.request-row {
    cursor: pointer;
    cursor: hand;
}

.request-filter-control.select2 {
    height: 34px;
    padding: 6px 12px
}

.request-filter-control.select2 + .select2.select2-container {
    max-width: 200px;
}

.select2-container--default .select2-selection--single {
    border-color: #ccc;
    height: 34px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    height: 34px;
    line-height: inherit;
    padding-bottom: 6px;
    padding-left: 12px;
    padding-top: 6px;
}

.table td, .table th {
    padding: 8px;
    line-height: 1.42857143;
}

table.dataTable thead .sorting::after {
    content: "" !important;
}

table.dataTables thead th {
    border-top: none;
}

tr.request-row:hover > td {
    background-color: #f5f5f5;
}

.validation-parameters-card {
    background-color: #ffb200;
    margin-bottom: 20px;
}

/***** Specific CSS for processes tasks ****/
.chosed-task{
    border-color: #4cae4c;
    border-width: 2px;

}

.chosed-task .card-heading{
    cursor: move; /* fallback if grab cursor is unsupported */
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
    user-select: none;
    -moz-user-select: none;
}

.chosed-task .card-heading button{
    cursor: move; /* fallback if grab cursor is unsupported */
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}

.chosed-task .card-heading:hover{
    background-color: #99d482;
}

.available-task{
    border-color: #a09f9f;
    border-width: 2px;
    cursor: move; /* fallback if grab cursor is unsupported */
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
    user-select: none;
    -moz-user-select: none;
}

.task-icon {
    display: inline-block;
}

.available-task:hover{
    background-color: lightgray;
}

.available-task:hover .card-heading{
    background-color: #808080;
}

.available-task .card-heading{
    font-weight: bold;
}


.available-task .card-heading {
    font-weight: bold;
}

.available-task .circle-icon, .extract-proc-tasks .circle-icon {
    width: 30px;
    height: 30px;
    padding: 6px 0;
    border-radius: 15px;
    text-align: center;
    font-size: 0.75rem;
    line-height: 1.428571429;
}

.extract-proc-tasks .col-lg-8 .card .card-body .card .card-body{
    margin-bottom: 0;
}

.extract-proc-tasks .col-lg-8 .card .card-body .card{
    margin-bottom: 0;
}
.extract-proc-tasks .col-lg-8 .card .card-body p{
    margin-bottom: 0;
    font-size: 2.1875rem;
}

.placeholder {
    position: relative;
    border: 2px dashed #000000;
    background-color:#ffffff;
}

.panel-droppable-hilight {
    border: 2px dashed yellowgreen;
}

.panel-droppable-hilight > * {
    opacity:0.7;
}

.process-progress {
    height: 2rem;
    margin-bottom: 14px;
}

.process-progress .progress-bar {
    flex-direction: row;
    align-items: center;
}

.process-progress .progress-bar .fa {
    margin-right: 0.5rem;
}

/********** IDs **********/

#alertModal .modal-title {
    font-size: 1.2rem;
}

#alertModal .modal-body {
    white-space: pre-line;
    padding: 10px;
}

#alertModal .modal-header {
    background-color: #3ab872;
    border-color: #3ab872;
    border-radius: 4px 4px 0 0;
    color: #fff;
    padding: 5px 10px;
}

#alertModal .modal-footer {
    border-top: transparent 0 none;
    padding: 10px;
}

#nav-wrapper, #wrapper {
    margin-left: auto;
    margin-right: auto;
    max-width: 1170px;
}

/********* Media *********/

@media(min-width: 768px) and (max-width: 917px) {

    body {
        padding-top: 150px;
    }
}


@media(min-width: 918px) and (max-width: 1109px) {

    body {
        padding-top: 100px;
    }
}

@media(max-width: 1199px) {

    #page-wrapper {
        margin: 0 10px;
    }

    .current-step-action {
        padding: 15px 0 20px 0;
        margin-left: 15px;
        margin-right: 20px;
    }

    .current-step-action textarea {
        height: 65px;
    }

    .current-step-error .current-step-action:not(:first-child) {
        border-left: none 0 transparent;
        border-top: solid 3px #a94442;
    }

    .current-step-standby .current-step-action:not(:first-child) {
        border-left: none 0 transparent;
        border-top: solid 3px #ffb200;
    }

}
