form legend {
    margin-bottom: 0px;
    font-family: var(--ct-legend-font-family);
    font-size: var(--ct-legend-font-size);
    font-weight: var(--ct-legend-font-weight);
}

form label {
    font-family: var(--ct-label-font-family);
    font-size: var(--ct-label-font-size);
    font-weight: var(--ct-label-font-weight);
    color: var(--ct-label-color);
}

form input.input-sm, form select.input-sm {
    font-family: var(--ct-input-font-family);
    font-size: var(--ct-input-font-size);
    font-weight: var(--ct-input-font-weight);
    color: var(--ct-input-color);
}

form .fa{
    color: var(--ct-input-color);
    font-size: var(--ct-ig-fa-font-size);
}

.input-group .fa{
    color: var(--ct-input-color);
    font-size: var(--ct-ig-fa-font-size);
}

input[type=file] {
    position: absolute;
    top: -3px;
    right: 10px;
    height: var(--ct-input-height);
    font-size: var(--ct-input-font-size);
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    background: red;
    cursor: inherit;
    display: block;
    overflow: hidden;
    width: 100%;
}

input[type=file].custom-file {
    position: absolute;
    top: 0px;
    right: 0px;
    height: var(--ct-input-height);
    width: 100%;
    font-size: var(--ct-input-font-size);
    filter: alpha(opacity=0);
    opacity: 0;
    background: red;
    cursor: inherit;
    display: block;
    overflow: hidden;
}

.input-group-file > .input-group-text{
    border-radius: 0px var(--ct-input-border-rd) var(--ct-input-border-rd) 0px;
    min-height: var(--ct-input-height);
}

.input-group-file .fa {
    color: var(--ct-text-color-primary);
    font-size: 18px;
}

.custom-file-label::after {
    content: "Seleccionar";
}

.btn.input-sm{
    padding: 5px 10px 5px 10px;
    font-family: var(--ct-input-font-family);
    font-size: var(--ct-input-font-size);
    font-weight: var(--ct-input-font-weight);
}

.campo-obligatorio {
    color: #F00;
    font-size: var(--ct-font-size);
}

.pr-campo-obligatorio {
    color: #F00;
    font-size: var(--ct-font-size);
}

input.form-control, 
select.form-control, 
textarea.form-control{
    font-family: var(--ct-input-font-family);
    font-size: var(--ct-input-font-size);
    font-weight: var(--ct-input-font-weight);
    border: var(--ct-input-border);
    border-radius: var(--ct-input-border-rd);
    box-shadow: none;
    color: var(--ct-input-color);
    padding: var(--ct-input-padding);
    line-height: var(--ct-input-line-height);
    background-color: var(--ct-input-bg);
}

input.form-control, 
select.form-control{
    height: var(--ct-input-height);
}


textarea.form-control{
    resize: none;
    padding: var(--ct-input-padding);
}

.chosen-single, 
.chosen-results .active-result, 
.chosen-search{
    font-family: var(--ct-input-font-family);
    font-size: var(--ct-input-font-size) !important;
    font-weight: var(--ct-input-font-weight);
}

.chosen-container-single .chosen-single {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    box-shadow: none !important;
    border-radius: var(--ct-input-border-rd);
    height: var(--ct-input-height) !important;
    padding-left: 15px;
    padding-top: 3px;
}

.chosen-single {
    min-height: var(--ct-input-height) !important;
    line-height: var(--ct-input-line-height) !important;
    color: var(--ct-text-color-primary) !important;
}

.link-download-format{
    font-size: var(--ct-font-size);
    color: #0b7285;
}

.link-download-format:hover{
    text-decoration: underline;
    color: #00f;
}

.link-download-format .fa-download{
    color: #8FBE00;
    font-size: var(--ct-font-size);
}

.dropdown.form-control{
    border-radius: var(--ct-input-border-rd);
}

.dropdown.form-control .btn{
    border-radius: var(--ct-input-border-rd);
    padding-top: 9px;
}

.chosen-container-multi .chosen-choices{
    border-radius: var(--ct-input-border-rd);
    padding: 2px;
}

.input-group .input-group-addon:last-child{
    border-radius: 0px var(--ct-input-border-rd) var(--ct-input-border-rd) 0px;
}

/*Validate form*/
.form-control.is-invalid, .was-validated .form-control:invalid {
    border-color: #dc3545;
    padding-right: calc(1.5em + .75rem);
    background-image: url('../js/helpers/is_invalid.svg');
    background-repeat: no-repeat;
    background-position: center right calc(.375em + .1875rem);
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
    background-image: none;
}

.form-control.is-valid, .was-validated .form-control:valid {
    border-color: #28a745;
    padding-right: calc(1.5em + .75rem);
    background-image: url('../js/helpers/is_valid.svg');
    background-repeat: no-repeat;
    background-position: center right calc(.375em + .1875rem);
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
    background-image: none;
}

.input-group-text.is-invalid{
    border: 1px solid;
    border-color: #dc3545;
}

.input-group-text.is-valid{
    border: 1px solid;
    border-color: #28a745;
}

.input-group-text{
    border-radius: 0px var(--ct-input-border-rd) var(--ct-input-border-rd) 0px !important;
}

.input-group-search .input-group-btn {
    border-radius: 0px !important;
    background: #F1F1F1;
    min-height: var(--ct-ig-input-height);
    width: var(--ct-ig-input-height);
    text-align: center;
    padding: 0px;
    display: inline-block;
    padding-top: 4px;
    border: var(--ct-input-border);
    color: var(--ct-input-color);
}

.input-group-search .input-group-btn-end{
    border-radius: 0px var(--ct-input-border-rd) var(--ct-input-border-rd) 0px !important;
}

.input-group-search .fa-search{
    color: var(--ct-text-color-primary);
    font-size: var(--ct-ig-fa-font-size);
}

.input-group-search .fa-times{
    color: var(--ct-ig-fa-close-color);
    font-size: var(--ct-ig-fa-font-size);
    font-weight: 100;
}

.form-control-br-right-only{
    border-radius: 0px var(--ct-input-border-rd) var(--ct-input-border-rd) 0px !important;
}

.form-control-br-left-only{
    border-radius: var(--ct-input-border-rd) 0px 0px var(--ct-input-border-rd) !important;
}

.form-control-br-all{
    border-radius: var(--ct-input-border-rd) !important;
}

.buscador-ct{
    width: 100%; 
}

.buscador-ct .input-group-ct{
    border: 1px solid rgba(0, 0, 0, 0.175);
    border-radius: var(--ct-input-border-rd);
    line-height: var(--ct-input-line-height);
    padding: 0px;
    background: #e1e1e1 !important;
}

.buscador-ct .input-group-ct .form-control{
    font-family: var(--ct-input-font-family);
    font-size: var(--ct-input-font-size);
    font-weight: var(--ct-input-font-weight);
    color: var(--ct-input-color);
    border: var(--ct-input-border);
    border-radius: var(--ct-input-border-rd) !important;
    padding: var(--ct-input-padding);
    background-color: #e1e1e1 !important;
}
.buscador-ct .input-group-ct input.form-control, 
.buscador-ct .input-group-ct select.form-control, 
.buscador-ct .input-group-ct textarea.form-control {
    line-height: var(--ct-input-line-height);
    height: var(--ct-ig-input-height);
    padding: var(--ct-input-padding);
    box-shadow: none;
}

.buscador-ct .input-group-ct .input-group-btn{
    background: transparent;
    border: 0px;
    border-radius: 50px !important;
    background: transparent;
    height: var(--ct-ig-input-height);
    width: var(--ct-ig-input-height);
    text-align: center;
    padding: 0px;
    display: inline-block;
    line-height: var(--ct-ig-line-height);
}

.buscador-ct button .fa-search {
    color: var(--ct-text-color-primary);
    font-size: var(--ct-ig-fa-font-size);
}

.buscador-ct button img{
    width: 22px;
    margin-top: -3px;
}

.buscador-ct button .fa-times {
    color: var(--ct-ig-fa-close-color);
    font-size: var(--ct-ig-fa-font-size);
    font-weight: 100;
}

.buscador-ct button .bi-x {
    color: var(--ct-ig-fa-close-color);
    font-size: 32px;
    font-weight: 100;
    line-height: 1.3;
}

.form-control:focus {
    border-color: var(--ct-input-border-color);
    box-shadow: none;
}

.box-pagination .btn,
.box-pagination .page-link{
    color: var(--ct-btn-pag-color);
    background-color: var(--ct-btn-pag-bg);
    border-color: var(--ct-btn-pag-bg);
    padding: 5px 15px;
    font-size: 1rem;
}

.box-pagination .btn .fa {
    color: var(--ct-btn-pag-color);
}

.box-pagination .page-item.active .page-link {
    color: var(--ct-btn-pag-color);
    background-color: var(--ct-btn-pag-bg);
    border-color: var(--ct-btn-pag-bg);
}

.box-pagination .btn-primary{
    background-color: var(--ct-btn-pag-bg);
    border-color: var(--ct-btn-pag-bg);
}

.box-pagination .btn-primary.disabled, 
.box-pagination .btn-primary:disabled{
    background-color: var(--ct-btn-pag-bg);
    border-color: var(--ct-btn-pag-bg);
}

.footable-pagination-wrapper .pagination .footable-page.active .footable-page-link,
.footable-filtering-search .btn-primary{
    color: var(--ct-btn-pag-color);
    background-color: var(--ct-btn-pag-bg);
    border-color: var(--ct-btn-pag-bg);
}