/* --- Utilidades Generales --- */
.w-100 {
    width: 100%;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-white {
    color: white;
}

.text-red {
    color: red;
}

.text-green {
    color: green;
}

.d-none {
    display: none !important;
}

.d-block {
    display: block !important;
}

.d-inline-block {
    display: inline-block;
}

.pos-absolute {
    position: absolute;
}

.pos-fixed {
    position: fixed;
}

.float-left {
    float: left;
}

/* --- Fondo y Layout Principal --- */
.login-background {
    background-image: url('../IMG/background/fondoInicio.jpg?v=1');
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

.main-div-height {
    min-height: calc(100vh - 5.5em);
}

.spacer-height {
    min-height: 10vh;
}

.login-header-padding {
    padding: 1em;
}

/* --- Elementos Específicos --- */
.logo-img {
    height: 2.5em;
    margin: 0.5em 2em;
    margin-left: 1em; /* Sobreescribe el margen general */
}

.welcome-title {
    font-size: 2.0em;
    text-align: center;
    color: white;
}

.login-card-content {
    padding: 2em 2em;
}

.failure-text {
    font-size: 1.2em;
    color: red;
}

.validation-summary-container {
    width: 100%;
    min-height: 5vh;
    color: red;
}

.login-table {
    margin: 0px auto;
    width: 100%;
}

.buttons-container {
    text-align: center;
    display: none; /* Estado inicial manejado por clase */
    min-height: 104px;
}

/* --- Modal de Reset Password --- */
.modal-close-btn {
    margin: 0.5em 0.5em;
    width: 7em;
}

.modal-content-scroll {
    padding: 0em 2em;
    max-height: 90vh;
    overflow: auto;
}

/* --- Footer --- */
.footer-logo-container {
    left: 0.5em;
    bottom: 3em;
}

.footer-logo-img {
    width: 2.5em;
    height: auto;
}

.footer-copyright {
    font-size: 0.8em;
    color: white;
}
.cursor-pointer {
    cursor: pointer;
    width:29px
}

.z-index-high {
    z-index: 1010;
}

.top-zero {
    top: 0px;
}
