/* Layout and Container */
.auth-layout {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: .5rem;
    min-height: 100vh;
    background-color: var(--white);
    position: relative;
    overflow: hidden;
}

.auth-container {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 480px;
    z-index: 1;
}

/* Header Section */
.auth-header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.auth-header__title {
    margin-bottom: 0.5rem;
    background: var(--gradient-primario);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: var(--sizeh3_lg);
    font-weight: var(--weighth3_lg);
}

.auth-header__subtitle {
    margin: 0;
    color: var(--terciario-dark);
    font-size: var(--sizeBodySm);
    line-height: var(--heightBody);
}

/* Footer Links */
.auth-footer {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 4rem;
}

.auth-footer__link {
    color: var(--terciario-dark);
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: underline;
    text-decoration-color: var(--secundario-dark);
    text-underline-offset: 4px;
    transition: all 0.2s ease;
}

.auth-footer__link:hover {
    color: var(--primario);
    text-decoration-color: var(--primario);
}

.auth-footer__link--bold {
    color: var(--primario);
    font-weight: 600;
    text-decoration: none;
}

.auth-footer__link--bold:hover {
    text-decoration: underline;
    text-decoration-color: var(--primario);
}

.auth-footer__signup {
    font-size: 0.875rem;
    color: var(--terciario-dark);
    margin: 0;
}


/* Actions Section */
.auth-actions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.auth-actions__button {
    padding: 0.875rem;
    width: 100%;
    font-size: 1rem;
    font-weight: 500;
    text-decoration: none;
}