.signup-section{

    padding:100px 0;

    background:#F8FAFC;

}

.signup-grid{

    display:grid;

    grid-template-columns:1fr 480px;

    gap:80px;

    align-items:center;

}

.signup-left h1{

    font-size:54px;

    margin:20px 0;

}

.signup-left p{

    color:#64748B;

    line-height:1.9;

    margin-bottom:40px;

}

.signup-form{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.checkbox{

    display:flex;

    gap:12px;

    align-items:flex-start;

    font-size:15px;

    color:#64748B;

}

.checkbox input{

    width:auto;

    margin-top:4px;

}

.signup-form button{

    margin-top:10px;

}

.login-link{

    margin-top:30px;

    color:#64748B;

}

.login-link a{

    font-weight:700;

    text-decoration:none;

}

.benefits-card{

    background:#fff;

    border-radius:24px;

    padding:45px;

    border:1px solid #E8ECF5;

    box-shadow:0 15px 40px rgba(15,23,42,.05);

}

.benefits-card h2{

    margin:20px 0 30px;

    font-size:34px;

}

.benefits-card ul{

    list-style:none;

    padding:0;

    margin:0;

}

.benefits-card li{

    padding:14px 0;

    border-bottom:1px solid #EEF2F7;

}


@media(max-width:900px){

.signup-grid{

grid-template-columns:1fr;

gap:50px;

}

.signup-left h1{

font-size:40px;

}

}

.benefits-card li::before{

    content:"✦";

    color:#4F46E5;

    font-weight:bold;

    margin-right:12px;

}
.password-wrapper{

    position:relative;

}

.toggle-password{

    position:absolute;

    right:18px;

    top:50%;

    transform:translateY(-50%);

    border:none;

    background:none;

    cursor:pointer;

    font-size:18px;

}

.password-strength{

    margin-top:6px;

    margin-bottom:5px;

}

.strength-bar{

    height:8px;

    background:#E5E7EB;

    border-radius:10px;

    overflow:hidden;

}

.strength-bar span{

    display:block;

    height:100%;

    width:0;

    background:#EF4444;

    transition:.3s;

}

.password-strength{

    margin-top:-8px;

    margin-bottom:5px;

}

.strength-bar{

    height:8px;

    background:#E5E7EB;

    border-radius:999px;

    overflow:hidden;

    margin-bottom:8px;

}

.strength-bar span{

    display:block;

    width:0;

    height:100%;

    background:#E5E7EB;

    transition:.35s;

}


.password-wrapper{

    position:relative;

}

.password-wrapper input{

    padding-right:55px;

}

.toggle-password{

    position:absolute;

    top:50%;

    right:18px;

    transform:translateY(-50%);

    background:none;

    border:none;

    cursor:pointer;

    color:#64748B;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:0;

}

.toggle-password:hover{

    color:#4F46E5;

}


.field-message{

display:block;

    font-size:13px;

    margin-top:6px;

    margin-bottom:8px;

    min-height:0;

    line-height:1.3;


}


.field-message.success{

    color:#16A34A;

}

.field-message.error{

    color:#DC2626;

}

.btn-primary-lg:disabled{

    opacity:.6;

    cursor:not-allowed;

    transform:none;

    box-shadow:none;

}

.btn-primary-lg,
input.btn-primary-lg{

    display:inline-flex;

    justify-content:center;
    align-items:center;

    padding:16px 34px;

    background:linear-gradient(135deg,#4F46E5,#6366F1);

    color:#fff;

    border:none;

    border-radius:14px;

    cursor:pointer;

    font-weight:600;

    font-size:16px;

}


.signup-success{

    padding:120px 0;

    background:#F8FAFC;

}

.success-card{

    max-width:760px;

    margin:auto;

    background:#fff;

    border:1px solid #E8ECF5;

    border-radius:28px;

    padding:70px;

    text-align:center;

    box-shadow:0 20px 50px rgba(15,23,42,.06);

}

.success-icon{

    width:90px;

    height:90px;

    margin:auto;

    border-radius:50%;

    background:#DCFCE7;

    color:#16A34A;

    font-size:42px;

    display:flex;

    justify-content:center;

    align-items:center;

    font-weight:bold;

    margin-bottom:30px;

}

.success-card h1{

    margin:20px 0;

    font-size:48px;

}

.success-card p{

    color:#64748B;

    line-height:1.9;

    font-size:18px;

}

.success-info{

    margin:40px 0;

    text-align:left;

}

.success-info div{

    background:#F8FAFC;

    border-radius:14px;

    padding:18px;

    margin-bottom:15px;

}

.success-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}


.signup-error{

    display:flex;

    align-items:flex-start;

    gap:20px;

    padding:22px 24px;

    margin-bottom:35px;

    border-radius:18px;

    background:#FEF2F2;

    border:1px solid #FECACA;

}

.error-icon{

    width:46px;

    height:46px;

    border-radius:50%;

    background:#DC2626;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

    font-weight:bold;

    flex-shrink:0;

}

.error-content h4{

    margin:0 0 8px;

    color:#991B1B;

    font-size:20px;

}

.error-content p{

    margin:0;

    color:#7F1D1D;

    line-height:1.7;

}

.loading{

    opacity:.8;

    cursor:wait;

}