.signup-container {
    max-width: 500px;
}
.form-row {
    display: flex;
    gap: 15px;
}
.form-row .form-group {
    flex: 1;
}
.password-wrapper {
    position: relative;
}
.password-wrapper input {
    padding-right: 40px;
}
.toggle-password {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    cursor: pointer;
    color: #7f8c8d;
    padding: 0;
}
.password-requirements {
    font-size: 11px;
    color: #7f8c8d;
    margin-top: 5px;
}
.password-requirements.valid {
    color: #27ae60;
}
.password-strength {
    height: 4px;
    background: #ecf0f1;
    border-radius: 2px;
    margin-top: 8px;
    overflow: hidden;
}
.password-strength-bar {
    height: 100%;
    width: 0%;
    transition: all 0.3s;
}
.strength-weak { background: #e74c3c; width: 25%; }
.strength-fair { background: #f39c12; width: 50%; }
.strength-good { background: #3498db; width: 75%; }
.strength-strong { background: #27ae60; width: 100%; }
.terms-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 15px 0;
}
.terms-checkbox input {
    margin-top: 3px;
}
.terms-checkbox label {
    font-size: 13px;
    color: #7f8c8d;
}
.terms-checkbox a {
    color: #3498db;
}
.divider {
    display: flex;
    align-items: center;
    margin: 20px 0;
    color: #95a5a6;
    font-size: 13px;
}
.divider::before, .divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #ecf0f1;
}
.divider span {
    padding: 0 15px;
}
