/* El formulario puede crecer sin desplazar el contenido de la mitad roja. */
@media (min-width: 821px) {
    .login-page .brand-panel {
        position: sticky;
        top: 0;
        align-self: start;
        height: 100vh;
        min-height: max-content;
    }
}

.access-methods { display: grid; grid-template-columns: 1fr; gap: .65rem; margin: 1rem 0; }
.access-methods > button { min-height: 3rem; padding: .7rem; border: 1px solid var(--slate-300); border-radius: .72rem; color: var(--blue-800); background: white; font: inherit; font-size: .85rem; font-weight: 700; cursor: pointer; }
.access-methods > button:hover { border-color: var(--blue-700); }
.access-methods > button[aria-pressed="true"] { background: var(--blue-100); border-color: var(--blue-700); }
.access-methods > button:disabled { opacity: .6; cursor: wait; }
.access-warning { margin: .55rem 0; color: var(--slate-600); font-size: .74rem; line-height: 1.5; }
.access-identity { overflow-wrap: anywhere; color: var(--slate-800); font-weight: 700; }
.access-reader { padding: 1rem; border: 1px dashed var(--blue-700); border-radius: .72rem; background: var(--blue-100); color: var(--blue-800); font-size: .85rem; line-height: 1.5; }
.access-reader:focus { outline: 2px solid var(--blue-700); outline-offset: 2px; }
.access-methods [hidden] { display: none !important; }
.access-pin-digits { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .4rem; margin: .6rem 0; }
.access-pin-digits input { min-width: 0; padding: .65rem .15rem; text-align: center; font-size: 1.25rem; }
#formLogin .recovery-link-row { justify-content: flex-start; align-items: center; margin: .35rem 0 0; padding: 0 .6rem; }
#formLogin #errorIdentificador:empty { display: none; }
.access-login-links { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .2rem; margin-top: .1rem; }
#formLogin .access-login-links .recovery-link-row { margin: 0; padding: .6rem; }
