html,
body{

height:100%;

}

body.auth-page{

margin:0;

padding:0;

font-family:Vazirmatn,sans-serif;

background:#f5f7fb;

}

.auth-page{

display:flex;

height:100vh;

overflow:hidden;

}

.auth-left{

width:50%;

position:relative;

background:linear-gradient(135deg,#2563eb,#1d4ed8,#1e3a8a);

display:flex;

justify-content:center;

align-items:center;

color:#fff;

}

.auth-left-overlay{

position:absolute;

inset:0;

background:
radial-gradient(circle at top right,
rgba(255,255,255,.12),
transparent 45%);

}

.auth-left-content{

position:relative;

z-index:2;

width:420px;

}

.brand-logo img{

height:52px;

margin-bottom:50px;

}

.auth-left h1{

font-size:46px;

margin-bottom:15px;

font-weight:800;

}

.auth-left p{

font-size:17px;

line-height:2;

opacity:.9;

margin-bottom:50px;

}

.feature-item{

margin-bottom:20px;

font-size:15px;

display:flex;

align-items:center;

gap:12px;

}

.feature-item i{

width:42px;

height:42px;

display:flex;

justify-content:center;

align-items:center;

background:rgba(255,255,255,.15);

border-radius:12px;

}

.auth-right{

width:50%;

display:flex;

justify-content:center;

align-items:center;

background:#f7f9fc;

}

.login-card{

width:460px;

background:#fff;

border-radius:24px;

padding:45px;

box-shadow:0 20px 60px rgba(0,0,0,.08);

}

.login-header{

text-align:center;

margin-bottom:35px;

}

.login-logo img{

height:58px;

margin-bottom:20px;

}

.login-header h2{

font-size:30px;

font-weight:800;

margin-bottom:10px;

color:#1f2937;

}

.login-header p{

color:#6b7280;

font-size:15px;

margin:0;

}

.form-group{

margin-bottom:22px;

}

.form-group label{

display:block;

margin-bottom:8px;

font-size:14px;

font-weight:600;

color:#374151;

}

.input-icon{

position:relative;

}

.input-icon i{

position:absolute;

left:18px;

top:50%;

transform:translateY(-50%);

color:#94a3b8;

font-size:18px;

}

.input-icon input{

height:56px;

border-radius:14px;

padding-left:50px;

border:1px solid #dbe2ea;

transition:.3s;

}

.input-icon input:focus{

border-color:#2563eb;

box-shadow:0 0 0 4px rgba(37,99,235,.08);

}
.password-wrapper{

position:relative;

}

.toggle-password{

position:absolute;

right:18px;

top:50%;

transform:translateY(-50%);

cursor:pointer;

font-size:18px;

color:#94a3b8;

}

.remember-row{

display:flex;

justify-content:space-between;

align-items:center;

margin:18px 0 30px;

font-size:14px;

}

.remember-me{

display:flex;

align-items:center;

gap:8px;

cursor:pointer;

margin:0;

}

.forgot-link{

color:#2563eb;

text-decoration:none;

font-weight:600;

}

.login-button{

width:100%;

height:56px;

border:0;

border-radius:14px;

background:linear-gradient(135deg,#2563eb,#1d4ed8);

color:#fff;

font-size:16px;

font-weight:700;

cursor:pointer;

transition:.35s;

box-shadow:0 12px 25px rgba(37,99,235,.25);

}

.login-button:hover{

transform:translateY(-2px);

box-shadow:0 20px 35px rgba(37,99,235,.35);

}

.register-box{

margin-top:28px;

text-align:center;

font-size:14px;

color:#6b7280;

}

.register-box a{

color:#2563eb;

font-weight:700;

text-decoration:none;

}

.login-card{
    width:460px;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(14px);
    border:1px solid rgba(255,255,255,.5);
    border-radius:24px;
    padding:45px;
    box-shadow:0 25px 80px rgba(15,23,42,.12);
    animation:cardIn .6s ease;
}

@keyframes cardIn{

0%{
opacity:0;
transform:translateY(30px);
}

100%{
opacity:1;
transform:none;
}

}

@keyframes float{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-25px);
}

100%{
transform:translateY(0);
}

}

.bg-circle{

position:absolute;

border-radius:50%;

background:rgba(255,255,255,.08);

backdrop-filter:blur(10px);

animation:float 8s infinite ease-in-out;

}

.bg-circle-1{

width:180px;

height:180px;

top:70px;

right:70px;

}

.bg-circle-2{

width:120px;

height:120px;

bottom:120px;

left:80px;

animation-delay:2s;

}

.bg-circle-3{

width:70px;

height:70px;

top:55%;

right:35%;

animation-delay:4s;

}

.input-icon{

transition:.35s;

}

.input-icon:hover{

transform:translateY(-1px);

}

.input-icon:focus-within{

box-shadow:0 0 0 5px rgba(37,99,235,.08);

border-radius:14px;

}

.login-button{

background:linear-gradient(135deg,#2563eb,#1d4ed8);

background-size:200%;

transition:.35s;

}

.login-button:hover{

background-position:right center;

}

@media(max-width:992px){

.auth-left{

display:none;

}

.auth-right{

width:100%;

padding:30px;

}

.login-card{

width:100%;

max-width:460px;

}

}