/* INSTRUCTORES · login.css — páginas de acceso sin sesión (login, activar, crear clave). */
body.pagina-acceso {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 24px 14px; padding-top: calc(24px + env(safe-area-inset-top));
  background: linear-gradient(160deg, #e9eef5 0%, var(--bg-body) 60%);
}
.acceso-logo { width: 84px; height: 84px; border-radius: 50%; object-fit: cover; background: #fff; box-shadow: var(--shadow-md); margin-bottom: 10px; }
.acceso-titulo { margin: 0; font-size: 22px; color: var(--color-primary); }
.acceso-sub { margin: 0 0 18px; font-size: 14px; color: var(--text-muted); }
.acceso-tarjeta { width: 100%; max-width: 420px; margin-bottom: 0; }
.acceso-tarjeta .tarjeta-cuerpo { padding: 20px 18px; }
.acceso-encabezado { font-size: 19px; margin-bottom: 4px; }
.acceso-nombre { font-size: 17px; font-weight: 600; color: var(--color-primary); margin: 0 0 12px; }
.acceso-enlaces { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; margin-top: 10px; }
.acceso-pie { margin-top: 18px; font-size: 13px; color: var(--text-muted); text-align: center; }
.clave-envoltorio { position: relative; }
.clave-envoltorio input { padding-right: 52px; }
.clave-ver {
  position: absolute; right: 2px; top: 50%; transform: translateY(-50%);
  min-width: 44px; min-height: 44px; border: 0; background: none; color: var(--text-muted); cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center;
}
.clave-ver svg { width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.acceso-debug { margin: 12px 0; padding: 10px; border: 1px dashed var(--color-warning); border-radius: 8px; background: #fff8e1; font-size: 12.5px; word-break: break-all; }
