.form-pre-row{
    justify-content: center;
}
.form-img-container{
    position: sticky;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: local;
    justify-content: center;
    max-width: 380px !important;
    align-items: center;
    border-radius: 15px;
    box-shadow: 0px 0px 56px 16px rgba(255,255,255,0.99) inset;
    -webkit-box-shadow: 0px 0px 56px 16px rgba(255,255,255,0.99) inset;
    -moz-box-shadow: 0px 0px 56px 16px rgba(255,255,255, 0.99) inset;
}
.row-slim{
    line-height: 1;
}
.row-slim label{
    margin-bottom: 0.4rem;
}
table.table-fit {
    table-layout: auto !important;
}
table.table-fit thead th, table.table-fit tfoot th {
    width: auto !important;
}
table.table-fit tbody td, table.table-fit tfoot td {
    width: auto !important;
}

#frm, #frmMatricula,#frmPensiones,#frmFamilias,#frmCartillaAlimentos,
#frmControlIngresos,#frmControlGastos,
#frmProductos, #frmCategoriasProductos,
#frmVehiculos{
    width: 100%;
    font-size: 0.9rem;
    padding: 50px 2% 0 2% !important;
    overflow-x: hidden;
    margin-left: 0%;
    margin-right: 0%;
    max-height: 100%;
}
#frmDeudas, #frmVentas, #frmMovimientos, #frmGastosVehiculos{
    width: 100%;
    font-size: 0.88rem;
    padding: 50px 2% 10px 2%;
    overflow-x: hidden;
    height: 100%;
}

/************************************************ Vehiculos ***********************************************/
#createVehModal label, #editVehModal label{
    font-weight: 500;
    font-size: .9rem;
}

/************************************************ Movimientos ***********************************************/
#frmMovimientos .card-header.main{
    padding: 0.5rem;
}
#frmMovimientos .card-header{
    padding: 0.4rem;
    border: 0 solid;
}
#frmMovimientos .card-header .input-ingreso{
    background-color: #7cf598; 
    color: #000;
}
#frmMovimientos .card-header .input-gastos{
    background-color: #f3b1b7; 
    color: #000     ;
}

#frmMovimientos .card-header.card-success,
#frmMovimientos #tblMovimientosIngresos thead{
    background: #10a332;
    color: #fff;
}
#frmMovimientos .card-header.card-danger,
#frmMovimientos #tblMovimientosGastos thead {
    background: #ce2435; 
    color: #fff;
}

#frmMovimientos table{
    border: none;
}
#frmMovimientos #tblMovimientosIngresos thead,
#frmMovimientos #tblMovimientosGastos thead{
    position: sticky;
    top: 0;
    z-index: 1;
    width: max-content;
}
#frmMovimientos #txtBalanceGeneral{
    font-size: 2rem;
    padding: 0; margin: 0;
    text-align: center;
}
#frmMovimientos h3, #frmMovimientos  h5{
    line-height: 1;
}
#frmMovimientos table {
    table-layout: fixed;
}
#frmMovimientos table td{
    word-wrap: break-word;
}
#frmMovimientos table tbody{
    font-size: 0.9rem;
}
/******************* Ingresos / Gastos ****************************/
#totalIngresos, #totalGastos{
    font-size: 1.6rem;
    padding: 0; margin: 0;
    text-align: center;
}

/******************************************** Ventas *****************************/
#frmVentas .card-body .card-header, 
#frmVentas .card-body .card-footer,
#tblProductosVentas thead,
#tblCategoriasProducto thead, #tblProductos thead,
#frmGastosVehiculos thead, #frmVehiculos thead,
#tblMatriculas thead{
    background-color: #212529;
    color: #fff;
    padding: .7rem 1.2rem;
}
#frmVentas .card-body .card-body table.table-responsive{
    position:fixed;
    width: 100%;
}
#frmVentas .table-nested{
    margin: 0;
    border: none;
}
/********************************************** Deudas *****************************/
#frmDeudas .card-header {
    padding: 0.3rem;
    background-color: #212529;
}
#tblDeudas thead, #tblDeudasDetalles thead, 
#tblListaCreditosCartilla thead{
    background-color: #212529;
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 1;
    width: max-content;
}
#tblDeudas thead tr th, #tblDeudasDetalles thead tr th{
    border-top: 0px;
    border-left: 0px;
    padding: 0.4rem;
}
#tblDeudas tbody, #tblDeudasDetalles tbody{
    overflow-y: auto;
    background-color: rgb(250, 250, 250);
    font-size: 0.9rem;
}
#frmDeudas #yearDeuda,
#frmDeudas #montoDeudaInicial,
#frmDeudas #montoDeudaActual{
    font-size: 1.4rem; 
    text-align: center; 
    padding: 0 !important;
}

/**************************************************** Familias *******************************************/
#frmFamilias .search-section, #frmFamilias .btn-section,#frmDeudas .search-section{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0; margin: 0;
}

/*************************************************** Pensiones ******************************************/
#frmPensiones .input-in-table{
    align-self: center;
    justify-self: center;
    max-width: 100px;
    border: transparent solid 0px;
    background-color: transparent;
}

#frmPensiones .input-in-table:enabled{
    border-bottom: 1px solid #0dd65a;
    outline: transparent;
}

#frm .input-in-table{
    width: 100%;
    text-align: center;
    border: transparent solid 0px;
    background-color: transparent;
}

#frm .input-in-table:enabled{
    border-bottom: 1px solid #0dd65a;
    outline: transparent;
}
/*************************************************************************************************/
#tipSection{
    line-height: 1rem;
    display: none;
    position: absolute;
    z-index: 10;
    background-color: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(190, 190, 190, 0.8);
    border-radius: 15px;
    padding: 2%;
}
/***************************** Crear usuario ******************************/
#frmUsuario {
    height: 100vh;
    font-size: 0.9rem;
    width: 100%;
    padding: 50px 1% 0 1% !important;
    overflow-x: hidden;
    margin-left: 0%;
    margin-right: 0%;
    max-height: 100%;
}

#frmUsuario label{
    font-weight: 500;
    line-height: 1.4;
}

#frmUsuario .form-text.text-muted{
    color: #007fe0 !important;
    line-height: 1.4;
}

.no-form-section{
    width: 100%; text-align: center;
    color: rgb(143, 143, 143);
}

.btn-row{
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn-row button{
    align-self: flex-end;
    word-wrap: break-word;
}
.btn-row-2 button{
    align-self: stretch !important;
}

.btn-spacing{
    display: grid;
    place-items: center;
    text-align: center;
    padding: 1% 2px 1% 2px;
}
.btn-spacing .row{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1px 2px 1px 2px;
    flex-wrap: wrap;
}

.row-cards {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.input_with_btn {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.input_with_btn .show_password, .input_with_btn .hide_password {
    position: relative;
    display: flex;
    align-self: center;
    cursor: pointer;
    margin: 2px;
    padding: 0 0 0 0;
    border-radius: 50%;
}

.input_with_btn .show_password.hidden, .input_with_btn .hide_password.hidden {
    display: none;
}

.sub-form {
    display: flex;
    width: 100%;
    padding: 2%;
}