@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;700&display=swap');

* {
    font-family: 'Montserrat', sans-serif;
}

body {
    /* background-color: #F0F0F0; */
    background-color: #D3D3D3;
}

.btn-outline-warning:hover {
    color: #fbfbfb;
}

/** DEVELOPMENT STYLES **/
.sidebar .nav-link .dev {
    color: rgba(251, 176, 52);
}

.sidebar .dev {
    color: rgba(251, 176, 52);
}

.backdev {
    background-color: rgba(251, 176, 52, .6);
    background-image: linear-gradient(315deg, rgba(251, 176, 52, .6) 0%, #ffdd00 74%);
}

/** END DEVELOPMENT STYLES **/

table.dataTable tr:not(.selected) td:not(.dataTables_empty):not(.notUnderline):hover i.bi::before,
table.table tr:not(.selected) td:not(.dataTables_empty):not(.notUnderline):hover i.bi::before {
    text-decoration: underline;
}

table.dataTable tr:not(.selected) td:not(.dataTables_empty):not(.notUnderline) i.bi::before,
table.table tr:not(.selected) td:not(.dataTables_empty):not(.notUnderline) i.bi::before {
    font-size: 15px;
}

/** NOTIFICATIONS */


div.wrapper{ 
    display: inline-block; 
    padding-left: 5px;
}
:root {
    --pulse-size: 10px;
    /* --pulse-size: 19px; */
}
.pulse {
    width: var(--pulse-size);
    height: var(--pulse-size);
    background-color: red;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    animation: animate 3s linear infinite
}

.pulse i {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 10px;
    color: #fff;
    height: 100%;
    cursor: pointer;
    font-style: normal;
}

@keyframes animate {
    0% {
        box-shadow: 0 0 0 0 rgb(255, 109, 74, 0.7), 0 0 0 0 rgb(255, 109, 74, 0.7)
    }

    40% {
        box-shadow: 0 0 0 15px rgb(255, 109, 74, 0), 0 0 0 0 rgb(255, 109, 74, 0.7)
    }

    80% {
        box-shadow: 0 0 0 15px rgb(255, 109, 74, 0), 0 0 0 15px rgb(255, 109, 74, 0)
    }

    100% {
        box-shadow: 0 0 0 0 rgb(255, 109, 74, 0), 0 0 0 15px rgb(255, 109, 74, 0)
    }
}

#notificationsTable tbody tr td.unread,
#notificationsTable tbody tr.unread
{
    font-weight: bold;
}

#notificationContent{
    max-height: 55vh;
    overflow-y: auto;
}
/** NOTIFICATIONS */

/** PROGRESS BAR */
#containerBar {
    margin: 20px;
    width: 400px;
    height: 12px;
}

.pace .pace-progress {
    /* background: #285DCA; */
    background: #66BD86;
}

.cursor-pointer {
    cursor: pointer;
}

.pace .pace-progress {
    height: 4px;
}

.pace .pace-progress {
    background: linear-gradient(90deg, rgb(241, 255, 0) 0%, rgb(191, 245, 63) 50%, rgb(74, 254, 5) 100%);
}

/** HEADER */
#header {
    /* height: 65px; */
    /* background-color: #D3D3D3; */
    background-color: var(--primary-color);
    color: white;
    box-shadow: 0 1px 12px var(--primary-shadow);
    z-index: 50;
}

.breadcrumb-item+.breadcrumb-item::before {
    color: white;
    padding: 0px 10px 0px 4px;
    margin-top: -4px;
    font-size: 24px;
    font-weight: 100;
    opacity: 0.7;
}

.dropdown-toggle>i {
    margin-left: 8px;
}

.dropdown-menu {
    -webkit-animation: fadein 0.5s;
    /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadein 0.5s;
    /* Firefox < 16 */
    -ms-animation: fadein 0.5s;
    /* Internet Explorer */
    -o-animation: fadein 0.5s;
    /* Opera < 12.1 */
    animation: fadein 0.5s;
    max-height: 555px;
    overflow-y: auto;
}

#btnClearCompaniesSearchBreadcrumb {
    border-color: #ced4da;
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.dropdown-menu li:not(.active):not(.biz-chip-row):not(.search) {
    cursor: pointer;
}
.dropdown-menu li{
    padding: 5px 20px;
    white-space: nowrap;
    transition: all 500ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
}

.dropdown-menu a {
    display: block;
    text-decoration: none;
    width: 100%;
}

.dropdown-menu li.active {
    cursor: not-allowed;
    background-color: #dddddd;
    font-weight: 600;
}

.dropdown-menu li:not(.active):not(.biz-chip-row):not(.search):hover {
    background-color: #eeeeee;
}

img {
    height: 45px;
    /* padding-top: 6px; */
}

/** FIN HEADER */

/** SIDEBAR */
.sidebar {
    /* width: 4%; */
    width: 60px;
    height: 100vh;
    /* padding-top: 65px; */
    padding-top: 60px;
    background-color: #F8F8F8;
    transition-duration: .3s;
    word-break: normal;
    box-shadow: 1px 0 12px rgba(0, 96, 157, .5);
    position: fixed;
    z-index: 40;
    top: 5px;
}

.sidebar .ch-dropdown {
    display: none;
}

.sidebar:hover {
    /* width: 15%; */
    width: 280px;
}

/* Modificar en función de algunas fuentes */
/* .sidebar i:before {
    padding-bottom: 3px !important;
} */

.hidden,
.sub-hidden {
    display: none;
}

.item-hid {
    animation: typing .25s;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-top: 5px;
}

.sidebar:hover .hidden,
.sidebar:hover .ch-dropdown {
    display: block;
}


@keyframes typing {
    0% {
        width: 0%;
    }

    100% {
        width: 100%;
    }
}

.sidebar .nav-link {
    /* color: #00609D; */
    color: var(--primary-color);
}

.sidebar i {
    /* color: #00609D; */
    color: var(--primary-color);
}

.sidebar {
    position: fixed;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#menu {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.last-item {
    margin-top: auto;
}
/** FIN SIDEBAR */

/* .logo {
    width: 55px;
} */

/** COMMON STYLES: */
.body-style {
    position: absolute;
    width: 100%;
}

.bodyStyle {
    position: absolute;
    width: 100%;
}

.col {
    transition: width 500ms ease 0s;
}

/* tabs */
.nav-tabs .nav-link {
    background-color: #eef0f1;
    color: #333;
}

li.nav-item button.nav-link {
    padding: 5px 7px;
    min-width: 130px;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
    text-align: right;
}

/* tabs */

/* Lists */
.list-container {
    margin: 50px 40px 0 85px;
    padding: 20px;
    background-color: #F8F8F8;
}

.list-container-header {
    /* mb-3 --> margin-bottom: 1rem!important; */
    /* mx-4 --> margin-right: 1.5rem!important; margin-left: 1.5rem!important; */
    margin: 0 1.5rem 1rem 1.5rem;
}

.container-table {
    /* mt-2 --> margin-top: .5rem!important; */
    /* m-4 --> margin: 1.5rem|important; */
    margin: .5rem .5rem 1.5rem .5rem;
}

.dataTables_scroll {
    padding-top: 15px;
    padding-bottom: 15px;
}

/* CORRECCIÓN DE CLASES (NOMENCLATURA) */
.containerTable {
    /* mt-2 --> margin-top: .5rem!important; */
    /* m-4 --> margin: 1.5rem|important; */
    margin: 2rem .5rem 1.5rem .5rem;
}

.containerList {
    margin: 50px 40px 0 85px;
    padding: 20px;
    /*background-color: #F8F8F8;*/
    background-color: #FFFFFF;
}

.headerContainerList {
    /* mb-3 --> margin-bottom: 1rem!important; */
    /* mx-4 --> margin-right: 1.5rem!important; margin-left: 1.5rem!important; */
    /* margin: 0 1.5rem 1rem 1.5rem; */
}

/* styles de Mostrar X registros */
.dataTables_length {
    margin-top: 4px !important;
}

/* FIN CORRECCIÓN DE CLASES (NOMENCLATURA) */

/* Cards new items/elements */

.card-new-container {
    margin-top: 50px;
    margin-left: 81px;
    margin-right: 20px;
    border: .5px solid gainsboro;
    padding: 20px;
    background-color: #F8F8F8;
}

.card-new-subcontainer {
    margin-top: 1.5rem;
    border: 0.5 solid gainsboro;
}

.card-new-buttons {
    justify-content: flex-end;
    display: flex;
    flex: 1 0 0%;
}

/* CORRECCIÓN DE CLASES (NOMENCLATURA) */
.cardNewContainer {
    margin-top: 50px;
    margin-left: 81px;
    margin-right: 20px;
    border: .5px solid gainsboro;
    padding: 20px;
    /*background-color: #F8F8F8;*/
    background-color: #FFFFFF;
}

.cardNewSubcontainer {
    margin-top: 1.5rem;
    border: 0.5 solid gainsboro;
}

.cardNewTitle {}

.cardNewButtons {
    justify-content: flex-end;
    display: flex;
    flex: 1 0 0%;
}

/* FIN CORRECCIÓN DE CLASES (NOMENCLATURA) */
/** END COMMON STYLES */


/* OPERATIONS */
#section {
    /* width: 100%;
    margin-top: 80px;
    margin-left: 80px;
    border: 1px solid gainsboro; */
    margin: 55px 40px 0 85px;
    padding: 20px;
    border: .5px solid gainsboro;
    background-color: #F8F8F8;
}

/** EXAMPLE DATATABLE */
#example_datatable {
    /* width: 100%;
    margin-top: 80px;
    margin-left: 80px;
    border: .5px solid gainsboro;
    padding-left: 20px; */
    margin: 55px 40px 0 85px;
    padding: 20px;
    border: .5px solid gainsboro;
    background-color: #F8F8F8;
}

#example_datatable a {
    float: left;
    margin: 20px;
}

/** FILE EXAMPLE */
#file_example {
    width: 100%;
    margin-top: 80px;
    margin-left: 80px;
    border: .5px solid gainsboro;
    padding: 20px;
}

/** BROKER */
#list-brokers-container {}

#broker-container {}

/** OPERATION */


/** INSURER */
#list-insurers-container {
    /* width: 90%; */
    /* margin-top: 65px !important; */
    margin-top: 50px;
    margin-left: 85px;
    margin-right: 40px;
    padding: 20px;
    background-color: #F8F8F8;
}

#insurer-container {
    margin-top: 50px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
    background-color: #F8F8F8;
}

/** COMPANY */
#list-companies-container {}

#company-container {}

/** RISK */
#risk-container {
    margin-top: 50px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
    background-color: #F8F8F8;
}

/** POLICY */
#policy-container {
    margin-top: 80px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
}

/** COUNTRIES */
#countries-container {
    margin-top: 80px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
}

.container-card-country {
    width: 70%;
    margin-top: 80px;
    margin-left: 80px;
    margin-right: 40px;
    /* margin: 0 auto; */
    border: .5px solid gainsboro;
    padding: 20px;
}

/** REPORT */
/* #report-container {
    margin-top: 80px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
} */

/** USERS */
#list-users-container {}

#user-container {
    margin-top: 55px;
    margin-left: 85px;
    margin-right: 40px;
    padding: 20px;
    background-color: #F8F8F8;
}

/** SETUP */
#setup-container {
    height: auto;
    margin-top: 50px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
}

a.setup {
    padding: 0;
    transition: all .5s;
}

a.setup:hover {
    opacity: .7;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, .175) !important;
}

/* .modal-dialog:not(.modal-xl) {
    max-width: 75vw !important;
}

.modal-dialog.modal-xl {
    max-width: 100vw !important;
    margin-left: auto;
    margin-right: auto;
} */

/* ul.select2-results__options li.select2-results__option{
    font-family: monospace;
} */
.select2-container--default .select2-results>.select2-results__options {
    max-height: calc(36px * 8);
}

/* .select2-container--open .select2-dropdown--below{
    width: max-content!important;
} */

/*** pastillas ***/
.pastilla {
    display: inline-block;
    padding: .50em .75em;
    font-size: .75em;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 50rem;
    border-style: solid;
    border-width: 0;
}

.pastilla.rojo {
    color: #9e1c1c;
    background-color: #fde8e8;
}

.pastilla.amarillo {
    color: #723b65;
    background-color: #fdf6b2;
}

.pastilla.azul {
    color: #1e42b8;
    background-color: #e1effe;
}

.pastilla.verde {
    color: #03548d;
    background-color: #def7ec;
}


.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    border: 1px solid #ced4da;
}

.select2-container--default .select2-selection--single:hover,
.select2-container--default .select2-selection--multiple:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, .15) !important;
    background-color: var(--primary-color)14 !important;
    -webkit-transition: background-color 250ms ease-in-out;
    -ms-transition: background-color 250ms ease-in-out;
    transition: background-color 250ms ease-in-out;
    cursor: pointer;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: #86b7fe;
}

.select2-container .select2-selection--single,
.select2-container .select2-selection--multiple {
    padding: .375rem 2.25rem .375rem .75rem;
    height: fit-content;
}

.select2-container .select2-selection--single .select2-selection__rendered,
.select2-container .select2-selection--multiple .select2-selection__rendered {
    padding: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b,
.select2-container--default .select2-selection--multiple .select2-selection__arrow b {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;

    border: none !important;
    height: 40px !important;
    width: 25px !important;
    margin: auto !important;
    top: auto !important;
    left: auto !important;
}

span.select2-selection.select2-selection--multiple {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
}

span.select2.select2-container.select2-container--default {
    width: 100% !important;
}

span.select2-selection.select2-selection--multiple.is-invalid,
.was-validated .form-control:invalid {
    border-color: #dc3545;
    padding-right: calc(1.5em + .75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat, no-repeat;
    background-position: right .75rem center, right calc(2em + .1875rem) center;
    background-size: 16px 12px, calc(.75em + .375rem) calc(.75em + .375rem);
    background-color: #dc35451c;
}
.form-control.is-invalid, .was-validated .form-control:invalid,
.form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"], 
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"]
input.datepicker:read-only, .datepicker.form-control.is-invalid:read-only{
    background-color: #dc35451c!important;
}

/*** datatables ***/
/*** botonera ***/
table.dataTable td a.btn {
    padding-top: 3px;
    padding-bottom: 3px;
}

/*** paginación ***/
table.dataTable tbody th,
table.dataTable tbody td {
    padding: 4px 10px;
}

#containerTable .dataTables_wrapper .dataTables_paginate .paginate_button {
    background-color: #0959b7;
    color: white !important;
    transition: all .25s
}

#containerTable .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: unset;
    background-color: #022c5c;
    color: white !important;
}

#containerTable .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background-color: var(--primary-color);
    color: white !important;
}

#containerTable .dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
    background-color: #133b6b70;
    cursor: not-allowed;
}

.dataTable tbody tr:hover {
    cursor: pointer;
    background-color: #22222233;
}

/*** fin datatables ***/

/*** workarea ***/
.workarea.list {
    /* width: 90%; */
    /* margin-top: 65px !important; */
    margin-top: 50px;
    margin-left: 85px;
    margin-right: 40px;
    padding: 20px;
    background-color: #F8F8F8;
}

.workarea.item {
    margin-top: 50px;
    margin-left: 80px;
    margin-right: 40px;
    border: .5px solid gainsboro;
    padding: 20px;
    background-color: #F8F8F8;
}

/* .tab-content {
    border: 1px solid #dee2e6;
}*/
.nav-tabs {
    border-bottom: none;
} 
.tab-content {
    border: 1px solid #dee2e6;
}

.invalid-feedback {
    display: block;
    visibility: hidden;
    line-height: 1.1;
    margin-top: .1rem;
}

.is-invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-feedback {
    visibility: visible;
}

.form-check-input {
    margin-right: 5px !important;
}

.form-check-input.is-invalid {
    height: 16px;
}

label.form-label {
    cursor: pointer;
    width: 100%;
}

.pointer:hover {
    cursor: pointer;
}

.noresizable {
    resize: none;
}

/*** fin workarea ***/


.modal-dialog {
    overflow-y: initial !important
}

.modal-body {
    height: 70vh;
    overflow-y: auto;
}

.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.input-group-append):not(.invalid-feedback) {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.input-group button.btn.btn-outline-secondary,
.input-group:not(label):not(.has-validation)>:not(.form-select):not(.form-control, .number):not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {
    border: 1px solid #ced4da;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

label.form-label {
    border: none !important;
}

input[type=text]:hover,
input[type=number]:hover,
input[type=password]:hover,
input[type=date]:hover,
input[type=month]:hover,
input[type=email]:hover,
input[type=file]:hover,
input[type=datetime-local]:hover,
input[type=search]:hover,
input[type=text]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=email]:focus,
input[type=file]:focus,
input[type=datetime-local]:focus,
input[type=search]:focus,
select:hover,
select:focus,
textarea:hover,
textarea:focus,
.dropzone:hover,
.dropzone:focus {
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
    background-color: var(--primary-color)14 !important;
    -webkit-transition: background-color 250ms ease-in-out;
    -ms-transition: background-color 250ms ease-in-out;
    transition: background-color 250ms ease-in-out;
}

input.form-control:disabled,
textarea.form-control:disabled,
option:disabled,
.dropzone:disabled,
select.form-control:disabled,
input.form-control.datepicker:disabled {
    background-color: #4a4b4d44 !important;
    background-color: rgb(233, 236, 239) !important;
}

input.datepicker:read-only {
    background-color: white !important;
}

.datepicker-locked input.datepicker {
    pointer-events: none;
    background-color: rgb(233, 236, 239) !important;
    cursor: default;
}

.datepicker table tr td.disabled, .datepicker table tr td.disabled:hover{
    cursor: not-allowed;
    color: #bbb;
    text-decoration: line-through;
}

.numberCircle {
    display: inline-block;
    line-height: 0px;
    border-radius: 50%;
    border: 1.5px solid;
    font-size: 24px;
    margin-right: 5px;
}

.numberCircle span {
    display: inline-block;
    padding-top: 50%;
    padding-bottom: 50%;
    margin-left: 8px;
    margin-right: 8px;
}

.ruleRow {
    display: flex;
    transition: all 0s, opacity 0.5s linear;
}

.ruleRow.ruleInactive {
    display: none;
}

.splitField {
    display: none;
}

a.setupLink div.card h3.heading {
    color: #4d91f5;
}

a.setupLink:hover div.card {
    background-color: #d4d4d4;
    height: 110%;
    width: 110%;
    transition: all 500ms;
    margin-left: -5%;
    z-index: 99;
}

a.setupLink:hover div.card h3.heading {
    padding-top: 15px;
    color: #5793ee;
    transition: all 500ms;
}

.row [class*='col-'] {
    transition: all 0.5s ease-in-out;
}

input:read-only:not(type=checkbox) {
    cursor: not-allowed;
}

footer {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: white;
    padding: 20px 0;
}

.cursor-grab {
    cursor: -webkit-grab;
    cursor: grab;
}

.btnCalendar {
    top: 75px;
    right: 14px;
    width: 35px;
    height: 35px;
    z-index: 9 !important;
    border-radius: 50%;
    background-color: var(--primary-color);
    color: #fff;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.5s ease-out 100ms;
}

.btnCalendar:hover {
    background-color: #006be5;
}

.btnSupport {
    top: 115px;
    right: 14px;
    width: 35px;
    height: 35px;
    z-index: 9 !important;
    border-radius: 50%;
    background-color: var(--btn-support-color);
    color: #fff;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.5s ease-out 100ms;
}

.btnSupport:hover {
    background-color: var(--btn-support-hover-color);
}

.btnHelp {
    top: 155px;
    right: 14px;
    width: 35px;
    height: 35px;
    z-index: 9 !important;
    border-radius: 50%;
    background-color: var(--btn-help-color);
    color: #fff;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.5s ease-out 100ms;
}

.btnHelp:hover {
    background-color: var(--btn-help-hover-color);
}

#modalHelpContent {
    min-height: 300px;
    max-height: 85%;
    overflow-y: hidden;
}

#modalCalendar .fc-day-header {
    font-size: 12px;
    /* Reducir el tamaño de la fuente de los encabezados de columna */
}

#modalCalendar .fc-daygrid-day {
    height: 25px;
    /* Reducir la altura de las celdas de fecha */
}

.selected-client-logo {
    display: inline-block;
    height: 28px;
}

.selected-client-logo img {
    height: 100%;
    margin-right: 10px;
}

.selected-client-text {
    margin-right: 5px;
}

.policy-status-tag {
    position: relative;
    top: 0px;
    float: right;
    min-width: 100px !important;
}

.width-100 {
    min-width: 110px !important;
}

.width-100 {
    min-width: 110px !important;
}

.width-120 {
    min-width: 120px !important;
}

.nav-item {
    transition: font-weight 0.2s ease-out 10ms;
    transition: background-color 0.2s ease-out 10ms;
}

.nav-item:hover {
    font-weight: 700;
    background-color: #e7f1ff;
}

.full-width {
    width: 100% !important;
}


a.card-ratio,
a.card-ratio span,
a.card-ratio p,
a.card-ratio p b {
    text-decoration: none !important;
    text-decoration-style: none !important;
}

table.table a {
    text-decoration: none;
}

/* TODO: evaluar si este estilo nos gusta */
table.dataTable tr:not(.selected) td:not(.dataTables_empty),
table.table tr:not(.selected) td:not(.dataTables_empty) {
    color: #0d6efd;
}

table.dataTable tr:not(.selected) td:not(.dataTables_empty):not(.notUnderline):hover,
table.table tr:not(.selected) td:not(.dataTables_empty):not(.notUnderline):hover {
    text-decoration: underline;
    color: #0a58ca;
}

table.dataTable tr td:not(.dataTables_empty):not(.notUnderline):hover,
table.table tr td:not(.dataTables_empty):not(.notUnderline):hover {
    text-decoration: underline;
}

a.notUnderline {
    text-decoration: none;
}

table.dataTable tbody tr.selected>*{
    box-shadow: inset 0 0 0 9999px rgb(13 110 253 / 34%);
}


/** INIT Estilos timelines */
.timeline-bar {
    fill: #ccc;
    /* Color gris claro para las barras de tiempo */
    fill-opacity: 1;
    width: 10%;
}

.timeline-union {
    fill: none;
    stroke-width: 6;
    /* Ancho de la barra de uniones */
    stroke-opacity: 0.3;
    stroke: #888;
    /* Uniones de color blanco */
    /* Por defecto, invisible */
}

.recent-union {
    stroke: black;
    /* Línea gruesa negra cuando pasa al siguiente evento */
    stroke-opacity: 1;
}

.previous-union {
    stroke: white;
    stroke-opacity: 1;
}

.completed-event {
    fill: var(--btn-support-hover);
    /* Color verde para eventos completados */
}

.timeline-bar.isEdge {
    stroke: white;
    /* Esto establece el color del borde */
    stroke-width: 1px;
    /* Grosor del borde */
}

.timelines-container {
    /* height: 600px; */
    height: 60vh;
    overflow-y: auto;
    overflow-x: hidden;
}

.timeline-line {
    fill: none;
    stroke: black;
    stroke-width: 2px;
}

.hide {
    display: none;
}

.modalTask .modal-header {
    padding: .5rem .5rem;
    background-color: #E8E8E8;
}

.modalTask .modal-body {
    height: 40%;
}

.modalTask .modal-dialog {
    width: 40%;
}

/** END Estilos timelines */

#modalNewPayment .modal-body {
    height: fit-content;
}

/* estados polizas */
.bg-pendiente {
    background-color: #40eb9b !important;
    color: #212529 !important;
}

.bg-no-renovada {
    background-color: #b6c2cc !important;
}

.bg-en-vigor {
    background-color: #198754 !important;
}

.bg-vencida {
    background-color: #b6c2cc !important;
}

.bg-anulada {
    background-color: #dc3545 !important;
}

.bg-renovada {
    background-color: #40eb9b !important;
    color: #212529 !important;
}

.bg-no-renovada-subestado {
    background-color: #b6c2cc !important;
}

.bg-version-anterior-subestado {
    background-color: #b6c2cc !important;
}

.bg-version-anterior {
    background-color: #b6c2cc !important;
}

.bg-renovada-subestado {
    background-color: #40eb9b !important;
    color: #212529 !important;
}

.elementTypeMark {
    font-size: 0.8rem;
    opacity: .7;
    color: gray;
}

.img-grayscale {
    filter: grayscale(100%);
}

img.flag {
    height: 12px;
    width: 16px;
    display: inline-block;
}

.invoice-pending{
    color: black;
    background-color: #FEBC49;
    border: 1px solid #FEBC49;
}
.invoice-paid{
    color: white;
    background-color: #AC83D5;
    border: 1px solid #AC83D5;
}
.invoice-settled{
    color: white;
    background-color: #277127;
    border: 1px solid #277127;
}
.invoice-part-settled{
    color: white;
    background-color: #67B167;
    border: 1px solid #67B167;
}
.invoice-cancelled{
    color: white;
    background-color: #FE5B5B;
    border: 1px solid #FE5B5B;
}
.btn.invoice-pending:hover{
    color: #FEBC49;
    background-color: black;
    border: 1px solid #FEBC49;
}
.btn.invoice-paid:hover{
    color: #AC83D5;
    background-color: white;
    border: 1px solid #AC83D5;
}
.btn.invoice-settled:hover{
    color: #277127;
    background-color: white;
    border: 1px solid #277127;
}
.btn.invoice-part-settled:hover{
    color: #67B167;
    background-color: white;
    border: 1px solid #67B167;
}
.btn.invoice-cancelled:hover{
    color: #FE5B5B;
    background-color: white;
    border: 1px solid #FE5B5B;
}
span.badge.rounded-pill[class*=" invoice-"],
span.badge.rounded-pill[class^="invoice-"]{
    min-width: 120px;
}

.form-switch-md .form-check-input {
    height: 1rem;
    width: 1.9rem;
}
.form-switch-lg .form-check-input {
    height: 1.8rem;
    width: 3.4rem;
}
.form-switch #chkIsPaid.form-check-input:focus:not(:checked),
.form-switch #chkIsPaid.form-check-input:not(:checked) {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2367B167'/%3e%3c/svg%3e");
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
}
.form-switch #chkIsPaid.form-check-input:focus{
    border-color: #67B167 !important;
    outline: 0 !important;
    -webkit-box-shadow: inset 0 1px 1px #67B167, 0 0 8px #67B167 !important;
    box-shadow: inset 0 1px 1px rgba(207, 220, 0, 0.4), 0 0 8px #67B167 !important;
}
#chkIsPaid.form-check-input:checked {
    background-color: #67B167;
    border-color: #67B167;
}



.form-check-label{
    cursor: pointer;
}

.form-label {
    margin-bottom: 0;
    margin-top: 0;
}

table.dataTable tfoot th, table.dataTable tfoot td{
    border-bottom: 1px solid #dee2e6
}
table.dataTable tbody th, table.dataTable tbody td {
    padding: 1px 5px;
}
table.dataTable thead th, table.dataTable thead td, table.dataTable tfoot th, table.dataTable tfoot td{
    padding: 5px 5px;
}

table.dataTable tfoot th, table.dataTable tfoot td{
    border-bottom: 1px solid #dee2e6
}
table.dataTable tbody th, table.dataTable tbody td {
    padding: 1px 5px;
}
table.dataTable thead th, table.dataTable thead td, table.dataTable tfoot th, table.dataTable tfoot td{
    padding: 5px 5px;
}

.nav-link{
    padding: .30rem 1rem;
    align-items: center;
}

.dataTables_wrapper .dataTables_info{
    padding-top: 0;
}

.dataTables_scroll {
    padding-top: 3px;
    padding-bottom: 3px;

}

body, .btn, .form-select, .form-control, .dropdown-menu, .input-group-text {
    font-size: .85rem;
}
.breadcrumb{ font-size: 1rem; }


.input-group > :is(.input-group-append, .input-group-text):last-of-type, .append-last {
    border-top-right-radius: 0.25rem!important;
    border-bottom-right-radius: 0.25rem!important;
}

.border {
    border: 1px solid #acb0b4 !important;
}

/* El calendario se abria por debajo de la cabecera (#header lleva z-index 50):
   el plugin le calcula un z-index a partir del contenedor del campo y ahi se
   quedaba corto. 1056 lo deja por encima de la cabecera y de los modales de
   Bootstrap (1055), y por debajo de los avisos. */
.datepicker.datepicker-dropdown {
    z-index: 1056 !important;
}

/* El calendario salia con barra de desplazamiento propia y la ultima fila
   cortada, por limites de altura heredados del contenedor del campo. */
.datepicker.datepicker-dropdown {
    max-height: none !important;
    overflow: visible !important;
}
