html, body {
    height: 100%;
}

.password-field-wrap {
    position: relative;
}

.default-background {
    background-image: url('../assets/default_background.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
    min-height: 100vh;
}

.password-field-wrap .password-toggle-btn {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    transform: translateY(-50%);
    z-index: 5;
    border: 0;
    background: transparent;
    color: #6c757d;
    padding: 0.25rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.password-field-wrap .password-toggle-btn:hover {
    color: #1f2d3d;
}

.password-field-wrap .password-toggle-btn:focus-visible {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
    border-radius: 0.35rem;
}

.password-field-wrap .password-toggle-btn svg {
    width: 1.25rem;
    height: 1.25rem;
    display: block;
}

.password-toggle-btn svg {
    width: 1.25rem;
    height: 1.25rem;
    display: block;
}

.password-toggle-btn {
    border: 0;
    background: transparent;
    color: #6c757d;
    padding: 0.25rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.password-toggle-btn:hover {
    color: #1f2d3d;
}

.password-toggle-btn:focus-visible {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
    border-radius: 0.35rem;
}

.admin-password-row .admin-password-field {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
}

.admin-password-row .admin-password-field .form-control {
    width: 100%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.admin-password-row .admin-password-field .password-toggle-btn {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    transform: translateY(-50%);
    z-index: 5;
}
