.cntrl-password-field{position:relative;display:block;width:100%;min-width:0}
.cntrl-password-field>input{box-sizing:border-box;width:100%;padding-right:52px!important}
.cntrl-password-field>.cntrl-password-toggle{position:absolute;top:50%;right:4px;transform:translateY(-50%);display:grid;place-items:center;min-width:40px;width:40px;min-height:40px;height:40px;margin:0;padding:10px;border:0;border-radius:8px;background:transparent;color:#526b80;cursor:pointer;box-shadow:none;line-height:1}
.cntrl-password-field>.cntrl-password-toggle:hover{background:#edf3f8;color:#123c55}
.cntrl-password-field>.cntrl-password-toggle:focus-visible{outline:2px solid #008568;outline-offset:1px}
.cntrl-password-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cntrl-password-toggle[aria-pressed=false] .cntrl-eye-slash{display:none}



/* Mantener el botón dentro del campo de contraseña */

.cntrl-password-field > .cntrl-password-toggle {

  top: 50%;

  right: 5px;

  width: 30px;

  min-width: 30px;

  height: 28px;

  min-height: 0;

  max-height: 100%;

  padding: 5px;

  box-sizing: border-box;

  transform: translateY(-50%);

}

.cntrl-password-field > .cntrl-password-toggle svg {

  width: 19px;

  height: 19px;

}



/* Alineación estable del botón de contraseña */

.cntrl-password-field {

  display: grid !important;

  grid-template-columns: minmax(0, 1fr) !important;

  align-items: center !important;

  isolation: isolate;

}

.cntrl-password-field > input {

  grid-area: 1 / 1 !important;

  min-width: 0 !important;

  width: 100% !important;

  margin: 0 !important;

  padding-right: 48px !important;

}

.cntrl-password-field > .cntrl-password-toggle,

.cntrl-password-field > .cntrl-password-toggle:hover,

.cntrl-password-field > .cntrl-password-toggle:focus,

.cntrl-password-field > .cntrl-password-toggle:active {

  position: static !important;

  grid-area: 1 / 1 !important;

  justify-self: end !important;

  align-self: center !important;

  transform: none !important;

  inset: auto !important;

  width: 30px !important;

  min-width: 30px !important;

  height: 28px !important;

  min-height: 0 !important;

  margin: 0 7px 0 0 !important;

  padding: 5px !important;

  box-sizing: border-box !important;

  z-index: 1;

}

