﻿:root {
    --primary: #11489b;
    --primary-darker: #0f408b;
    --primary-lighter: #4e72c4;
}

[v-cloak] { display: none }
body { background-color: #eeeeef; }

.login-page { background: url(../images/fondo.jpg) center center no-repeat; background-size: cover; }
.login-page .fondo { background-color: rgba(0,0,0,.5); position: fixed; height: 100vh; width: 100%;    }
.login-page .login-box { background-color: #fff; z-index:1; padding-top:1em; }
.login-page .login-box .botones { margin-top:3em; text-align:right; }

.notificaciones .dropdown-item { overflow:hidden; text-overflow:ellipsis; }

/*#region Override*/
.text-primary { color: var(--primary) !important; }
.menu-open .nav.nav-treeview { border-bottom: 1px solid rgb(24, 75, 58); background-color: rgb(24, 75, 58); }
[class*=sidebar-dark-] { background-color: var(--primary); }

.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active { background-color: white;color: #212529; }

.card-primary.card-outline-tabs > .card-header a.active { border-top: 3px solid var(--primary); }

.btn-primary { color: #fff; background-color: var(--primary); border-color: var(--primary); box-shadow: none;}
.btn-primary:hover, .btn-primary:focus, .btn-primary:not(:disabled):not(.disabled):active, .show > .btn-primary.dropdown-toggle  { color: #fff; background-color: var(--primary-darker); border-color: var(--primary-darker); }

.btn-primary.disabled, .btn-primary:disabled { color: #fff; background-color: var(--primary); border-color: var(--primary); }

.btn-outline-primary { color: var(--primary); border-color: var(--primary); }
.btn-outline-primary:hover { color: #fff; background-color: var(--primary); border-color: var(--primary); }
.btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show>.btn-outline-primary.dropdown-toggle { background-color: var(--primary-darker); border-color: var(--primary-darker); }

.btn-link { color: var(--primary) }
.bg-primary { background-color: var(--primary) !important; }

.btn-light { background-color: #ffffff; border-color: #ffffff; }
.btn-light2 { background-color: #f8f9fa }
.btn-light2:hover, .btn-light2:focus, .btn-light2:active, .btn-light2.active, .open > .dropdown-toggle.btn-primary { color: #212529; background-color: #e2e6ea; border-color: #dae0e5; }

.input-group .form-control:focus { border-color: var(--primary); }
.dropdown-item.active, .dropdown-item:active { background-color: var(--primary); }

.page-item.active .page-link { color: #fff; background-color: var(--primary); border-color: var(--primary); }

.alert-primary { background-color: var(--primary-lighter); border-color: var(--primary-lighter); }

nav ul.nav-sidebar:first-child > li {
    border-bottom: 1px solid #FFFFFF40;
}
.nav-sidebar .nav-item > .nav-link { margin-bottom: 0.2rem; margin-top: 0.2rem; }

.nav-sidebar > .nav-item .nav-treeview .nav-icon { font-size: 0.8rem; }

label.custom-file-label { margin: 0rem; }

.botonera-form { text-align: right; margin: 2rem 0 1rem; }
.card-footer.row { margin-right: 0; margin-left: 0; }
.card-footer .botonera-accion { text-align: left; margin: 0.6rem 0; }
.card-footer .botonera-accion .btn { margin-right: 0.6em; }
.card-footer .botonera-form { text-align: right; margin: 0.6rem 0; }
.card-footer .botonera-form .btn { margin-left: 0.6em; }

.card table th:first-child, .card table td:first-child,
.modal table th:first-child, .modal table td:first-child { padding-left: 1rem; }
.card table th:last-child, .card table td:last-child,
.modal table th:last-child, .modal table td:last-child { padding-right: 1rem; }
.card table th:last-child { padding: 0 1rem 0.5rem 0; }

table caption { padding: 0.75rem; border-top: 1px solid #dee2e6; }

table th { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
table td.check, table th.check { text-align: center; max-width: 60px; width: 60px !important; }
table td.numero, table th.numero { text-align: center; max-width: 100px; width: 60px !important; }
table td.moneda, table th.moneda { text-align: right; padding-right: 1rem !important; max-width: 100px; width: 60px !important; }
table th.numeroTexto, table td.numeroTexto { text-align: center; max-width: 100px; width: 60px !important; }
table th.fecha, table td.fecha { text-align: center; max-width: 150px; width: 100px !important; }
table th.telefono, table td.telefono { text-align: center; max-width: 150px; width: 100px !important; }

table .acciones { max-width: 180px; text-align: right; padding: 0.3rem 1rem 0.3rem 0 !important; }
table .xl { min-width: 145px; }
table td.acciones .btn-xs { padding: 0.3rem 0.75rem; }
table td.acciones .dropleft .dropdown-toggle::before { content: initial; }
table td.acciones .btn-xs.icon { padding: 0; width:2rem; font-size:1.1rem; }

.tab-pane div.dataTables_wrapper { margin: auto -1.25rem; }

table.dataTable {
    border: none;
    border-top: 1px solid #dee2e6;
}
table.dataTable.no-footer {
    border-bottom: 2px solid #dee2e6;
}

table.dataTable thead th, table.dataTable thead td {
    border-bottom: 1px solid #dee2e6;
}
table.dataTable > thead .sorting:before, table.dataTable > thead .sorting:after, table.dataTable > thead .sorting_asc:before, table.dataTable > thead .sorting_asc:after, table.dataTable > thead .sorting_desc:before, table.dataTable > thead .sorting_desc:after, table.dataTable > thead .sorting_asc_disabled:before, table.dataTable > thead .sorting_asc_disabled:after, table.dataTable > thead .sorting_desc_disabled:before, table.dataTable > thead .sorting_desc_disabled:after { bottom: 0.7em; }
table.dataTable > thead .sorting:before, table.dataTable > thead .sorting_asc:before, table.dataTable > thead .sorting_desc:before, table.dataTable > thead .sorting_asc_disabled:before, table.dataTable > thead .sorting_desc_disabled:before { left: 0.5em; content: "↑"; width: 5px; }
table.dataTable > thead .sorting:after, table.dataTable > thead .sorting_asc:after, table.dataTable > thead .sorting_desc:after, table.dataTable > thead .sorting_asc_disabled:after, table.dataTable > thead .sorting_desc_disabled:after { left: 1em; content: "↓"; width:5px; }
table.dataTable > thead > tr > th:not(.sorting_disabled), table.dataTable > thead > tr > td:not(.sorting_disabled) { left: 0; padding-left: 30px; padding-right: 15px; }

div.dataTables_wrapper { z-index: 1; padding-top: 10px; border-top: 1px solid #dee2e6; }
div.dataTables_wrapper div.dataTables_info { padding: 10px 10px 8px !important; float: none; display: inline-block; }
div.dataTables_wrapper div.dataTables_length { padding: 10px; margin: 0; float: none; display: inline-block; }
div.dataTables_wrapper div.dataTables_length label { padding: 0; margin-top: 0; }
div.dataTables_wrapper div.dataTables_length select { width: 3.5rem !important; border: 1px solid #dee2e6; border-radius: 3px; }
div.dataTables_wrapper div.dataTables_filter { position: relative; padding: 0 10px; margin: 0; float: none; text-align: left; width: 50%; }
div.dataTables_wrapper div.dataTables_filter label { padding: 0; margin-top: 0; display: inline-block; }
div.dataTables_wrapper div.dataTables_filter input { border: 1px solid #dee2e6; border-radius: 3px; padding: 5px; background-color: transparent; margin-left: 3px; min-width: 200px; width: 30%; }

div.dataTables_wrapper .dt-buttons { float: right; margin-right: 1rem; position:relative; }
div.dataTables_wrapper .dt-buttons .btn { /*font-size: 0.9rem; padding: 0.2rem 0.75rem;*/ font-size: 1.1rem; padding: 0.1rem 0.6rem; color: #000000; }

div.dataTables_wrapper .dataTables_paginate { padding: 7px 10px; }
div.dataTables_wrapper .dataTables_paginate .paginate_button { padding: 0; margin: 0; font-size: .875rem; line-height: 1.5; border-radius: .2rem; }
div.dataTables_wrapper .dataTables_paginate .paginate_button:hover { color: white !important; border: 1px solid transparent !important; background: transparent; }
div.dataTables_wrapper .dataTables_paginate .paginate_button.current,
div.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { background: #e5e5e5 !important; }

.page-item .page-link { padding: 0.3rem 0.75rem; margin:0; }

.filtros .card { flex-direction: row; justify-content: end; padding: 1rem; margin-bottom: 0; }
.filtros .form-check { display: inline-block; margin-right: 1rem; }
.filtros .form-check label input { margin-right: 0.5rem; }
.filtros .btn:first-child { margin-left: 0; }
.filtros .btn { margin-left: 1rem; }

.nav.nav-tabs { background-color: rgba(0,0,0,.03); }
.nav-tabs .nav-link:focus, .nav-tabs .nav-link { margin-left: 1px; color: #999999; }
.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover { background-color: #fff; color: #495057; }

.tab-content .nav-tabs { background-color: #fff; margin: 0 -1.25rem; padding: 0 1.25rem; }
.tab-content .nav-tabs.vertical { margin: 0 0 0 -1.25rem; padding: 1.25rem 0 0 1.25rem; }

.navbar-form.boton { position: absolute; border: none; z-index: 1000 }

textarea.form-control { min-height: 115px; }

.form-check { padding-left: 2rem; }
.form-check.check-inline { display:inline-block; margin:0.5rem 2rem 0 0.75rem; }
.form-check-input { position: initial; margin-left: -1.5rem; margin-right: 0.75rem; }

.list-group-item .form-check { padding-left: 2rem;  }
.list-group-item .form-check .form-check-input { margin-left: -2rem; margin-right: 1rem; }

.descarga-check { display: none; }

.spacer { height: 2rem; }

@media screen and (max-width: 767px) {
    div .dt-buttons { float: none; width: calc(100% - 2rem);margin-bottom:.75rem; }
}

/*#region Loading*/

.loading-back {
    position: fixed;
    width: 100%;
    height: 100vh;
    background-color: #0000002b;
    z-index: 10000;
    visibility: hidden;
}

#loading-div {
    position: absolute;
    top: 40px;
    left: calc(50% - 100px);
    width: 200px;
    background-color: #f3f3f3;
    padding: 1rem;
    border-radius: 15px;
    text-align: center;
}

#loading-gif {
    width: 2rem;
    height: 2rem;
    border: 5px solid #0000002b;
    border-top: 6px solid var(--primary);
    border-radius: 100%;
    margin: auto;
    animation: spin 1s infinite linear;
}

#loading-div p {
    margin: auto;
    margin-top: 15px;
}

.loading-back.display {
    visibility: visible;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/*#endregion*/

.alert-success {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
}

.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.select2-container--bootstrap4 .select2-results__option--highlighted, .select2-container--bootstrap4 .select2-results__option--highlighted.select2-results__option[aria-selected="true"] {
    color: #fff;
    background-color: var(--primary) !important;
}



.currency-input {
    position: relative;
}

.currency-input::before {
    content: "€";
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #495057;
    pointer-events: none;
}

.currency-input input {
    padding-left: 20px; /* make room for the € */
}
