.kyno-login-page{
height:100vh;
display:grid;
grid-template-columns:650px 520px;
justify-content:center;
align-items:center;
gap:60px;
padding:20px 60px;
box-sizing:border-box;
background:
radial-gradient(circle at 25% 40%,rgba(59,130,246,.22) 0%,transparent 45%),
radial-gradient(circle at 75% 60%,rgba(255,255,255,.08) 0%,transparent 35%),
linear-gradient(135deg,#0A1F4F 0%,#16357A 45%,#1E3A8A 100%);
}

.kyno-login-left{
max-width:650px;
color:#fff;
}

.kyno-login-logo-link{
display:inline-block;
}

.kyno-login-logo{
width:320px;
height:auto;
margin:0 0 45px;
display:block;
transition:.2s;
}

.kyno-login-logo-link:hover .kyno-login-logo{
transform:translateY(-1px);
opacity:.95;
}

.kyno-login-left h1{
margin:0 0 28px;
font-size:3.5rem;
line-height:1.05;
font-weight:700;
color:#fff;
}

.kyno-login-benefits{
display:flex;
flex-direction:column;
gap:22px;
font-size:1.15rem;
line-height:1.25;
color:rgba(255,255,255,.95);
}

.kyno-login-registerhint{
margin-top:50px;
font-size:.95rem;
color:rgba(255,255,255,.75);
}

.kyno-login-registerhint a{
color:#fff;
font-weight:700;
text-decoration:none;
margin-left:6px;
border-bottom:1px solid transparent;
transition:.2s;
}

.kyno-login-registerhint a:hover{
border-bottom:1px solid rgba(255,255,255,.8);
}

.kyno-login-card{
background:#fff;
border-radius:24px;
padding:42px;
box-shadow:0 25px 60px rgba(0,0,0,.18);
}

.kyno-login-card h2{
margin:0 0 10px;
font-size:2.2rem;
font-weight:700;
}

.kyno-login-sub{
margin:0 0 28px;
font-size:1.05rem;
color:#6B7280;
}

.kyno-field{
margin-bottom:18px;
}

.kyno-field label{
display:block;
margin-bottom:6px;
font-weight:600;
color:#374151;
}

.kyno-field input{
width:100%;
padding:14px 16px;
border:1px solid #D1D5DB;
border-radius:12px;
box-sizing:border-box;
}

.kyno-field input:focus{
outline:none;
border-color:#1E3A8A;
box-shadow:0 0 0 3px rgba(30,58,138,.12);
}

.kyno-login-card button{
width:100%;
padding:15px;
border:none;
border-radius:12px;
background:#0F2B5B;
color:#fff;
font-weight:700;
cursor:pointer;
transition:.2s;
}

.kyno-login-card button:hover{
background:#1E3A8A;
}

.kyno-login-links{
font-size:1.05rem;
margin-top:18px;
text-align:center;
}

.kyno-login-links a{
color:#1E3A8A;
text-decoration:none;
font-weight:600;
}

.kyno-login-links a:hover{
text-decoration:underline;
}

.kyno-error{
background:#FEE2E2;
border:1px solid #FCA5A5;
color:#991B1B;
padding:12px;
border-radius:10px;
margin-bottom:18px;
}

.kyno-login-footer{
position:fixed;
bottom:25px;
left:50%;
transform:translateX(-50%);
font-size:.9rem;
z-index:100;
}

.kyno-login-footer a{
color:rgba(255,255,255,.85);
text-decoration:none;
}

.kyno-login-footer a:hover{
color:#fff;
text-decoration:underline;
}

.kyno-login-footer span{
margin:0 10px;
color:rgba(255,255,255,.5);
}

@media(max-width:1024px){

.kyno-login-page{
grid-template-columns:1fr;
gap:50px;
padding:40px 25px 90px;
height:auto;
min-height:100vh;
}

.kyno-login-left{
text-align:center;
}

.kyno-login-logo{
width:240px;
margin:0 auto 30px;
}

.kyno-login-left h1{
font-size:2.5rem;
}

.kyno-login-right{
max-width:480px;
margin:auto;
width:100%;
}
}

@media(max-width:600px){

.kyno-login-card{
padding:28px;
}

.kyno-login-left h1{
font-size:1.9rem;
}

.kyno-login-benefits{
font-size:1rem;
gap:16px;
}

.kyno-login-footer{
position:static;
transform:none;
text-align:center;
padding-bottom:20px;
}
}