.password-field {position:relative;}
.password-field .form-control {padding-right:3.25rem;}
.password-field--wrapped {width:100%;}
.password-visibility-toggle {align-items:center;background:transparent;border:0;border-radius:.375rem;color:var(--bs-secondary-color);display:flex;height:2.5rem;justify-content:center;padding:0;position:absolute;right:.45rem;top:50%;transform:translateY(-50%);width:2.5rem;z-index:5;}
.password-visibility-toggle:hover {color:var(--bs-body-color);}
.password-visibility-toggle:focus-visible {box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.25);outline:0;}
.password-requirements {display:grid;gap:.4rem;list-style:none;margin:.25rem 0 1rem;padding:0;}
.password-requirement {align-items:center;color:#fff;display:flex;font-size:.875rem;gap:.5rem;line-height:1.3;}
.password-requirement__check {color:var(--bs-success);font-size:1rem;font-weight:800;opacity:0;text-align:center;transition:opacity .15s ease;width:1rem;}
.password-requirement.is-met {color:#fff;}
.password-requirement.is-met .password-requirement__check {opacity:1;}
.join-contest-card__register .password-requirements {grid-column:1/-1;}
.join-contest-card__register .password-visibility-toggle {font-weight:400;min-height:2.5rem;}
