.tp-password-field {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.tp-password-field > .tp-password-input {
  width: 100% !important;
  padding-inline-end: 6.8rem !important;
  box-sizing: border-box !important;
}

.tp-password-toggle {
  position: absolute !important;
  z-index: 2;
  top: 50% !important;
  right: .42rem !important;
  bottom: auto !important;
  left: auto !important;
  display: inline-flex !important;
  width: auto !important;
  min-width: 4.25rem !important;
  min-height: 2rem !important;
  margin: 0 !important;
  padding: .34rem .62rem !important;
  align-items: center;
  justify-content: center;
  gap: .34rem;
  overflow: hidden;
  border: 1px solid rgba(157, 224, 242, .34) !important;
  border-radius: .7rem !important;
  color: #eafaff !important;
  background: linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.035)), rgba(18, 53, 78, .76) !important;
  box-shadow: 0 .35rem .9rem rgba(0,0,0,.2), inset 0 1px rgba(255,255,255,.2) !important;
  transform: translateY(-50%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(150%);
  backdrop-filter: blur(14px) saturate(150%);
  font: 800 .72rem/1 system-ui, sans-serif !important;
  white-space: nowrap !important;
  cursor: pointer;
  box-sizing: border-box;
}

.tp-password-toggle::before,
.tp-password-toggle::after { display: none !important; }
.tp-password-toggle:hover { border-color: rgba(112, 235, 242, .7) !important; background-color: rgba(28, 77, 105, .9) !important; }
.tp-password-toggle:focus-visible { outline: 3px solid rgba(61, 214, 223, .28) !important; outline-offset: 2px; }
.tp-password-toggle__icon { font-size: .82rem; line-height: 1; }

@media (max-width: 380px) {
  .tp-password-field > .tp-password-input { padding-inline-end: 5.6rem !important; }
  .tp-password-toggle { min-width: 3.5rem !important; padding-inline: .48rem !important; }
  .tp-password-toggle__icon { display: none; }
}
