/* Password Requirements Styling */
/* Original styling for embedded requirements */
.password-input{
    width: 100%;
    position: relative;
}
.password-requirements {
    background-color: rgb(0 0 0 / 90%);
    border: 1px solid var(--button-border);
    border-radius: 5px;
    padding: 10px;
    margin-top: 5px;
    font-size: 12px;
    width: 100%;
    display: none; /* Initially hidden */
}

.password-requirements p {
    color: #ffffff;
    font-weight: 600;
    margin-bottom: 5px;
}

.password-requirements ul {
    list-style-type: none;
    margin-bottom: 0;
}

.password-requirements ul li {
    position: relative;
    padding-left: 15px;
    margin-bottom: 3px;
    color: #ff0000;
    transition: color 0.3s ease;
    font-weight: 700;
}

.password-requirements ul li.valid {
    color: #00ff0a;
}

.password-requirements ul li:before {
    content: "×";
    position: absolute;
    left: 0;
    color: inherit;
}

.password-requirements ul li.valid:before {
    content: "✓";
}

/* Show password requirements when input is focused */
.password-input input:focus ~ .password-requirements {
    display: block;
}

/* Popup styling for password requirements */
.valid {
    color: #4CAF50;
    font-weight: 500;
}

.valid::before {
    content: "✓ ";
}

.password-popup {
    display: none;
    width: 100%; /* Match parent width */
    opacity: 0;
    transition: opacity 0.3s ease;
    position: absolute; /* Changed to absolute to overlap other content */
    z-index: 1100; /* Higher z-index to ensure it appears on top */
    background-color: #1e2b2e;
    border: 1px solid #29a198;
    border-radius: 4px;
    padding: 5px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    top: 100%; /* Position it right below the input */
    left: 0;
}

.password-popup p {
    font-weight: bold;
    margin-top: 0;
}

.password-popup ul {
    margin: 0;
    padding: 0;
}

.password-popup li {
    margin-bottom: 5px;
    transition: color 0.2s ease;
}

.popup-active {
    animation: popupFadeIn 0.3s ease forwards;
}

@keyframes popupFadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.fullname{
    width: 100%;
}