body{
margin:0;
padding:0;
font-family:'Segoe UI',sans-serif;
background:linear-gradient(120deg,#84fab0,#8fd3f4);
min-height:100vh;
display:flex;
flex-direction:column;
}

.page-header{
height:100px;
display:flex;
align-items:center;
padding:0 20px;
position:relative;
background:rgba(255,255,255,0.2);
box-shadow:0 4px 15px rgba(0,0,0,0.1);
}

.page-logo{
width:180px;
}

.page-title{
position:absolute;
left:50%;
transform:translateX(-50%);
font-size:24px;
font-weight:700;
font-family:'Poppins',sans-serif;
color:#216e6e;
}

.glass-card{
background:#ffffff;
border-radius:20px;
border:1px solid rgba(0,0,0,0.05);
box-shadow:
0 15px 35px rgba(0,0,0,0.15),
inset 0 2px 8px rgba(0,0,0,0.05);
padding:2rem;
width:340px;
max-width:90%;
margin:auto;
}

form{
display:flex;
flex-direction:column;
gap:15px;
}

h2{
text-align:center;
margin-bottom:1.5rem;
color:#333;
font-size:22px;
font-weight:600;
}

.input-group{
position:relative;
display:flex;
align-items:center;
}

.input-group .icon{
position:absolute;
left:12px;
top:50%;
transform:translateY(-50%);
font-size:22px;
color:#666;
}

.lock-icon{
color:#f4b400;
}

.input-group input{
width:100%;
padding:10px 40px 10px 42px;
border:1px solid rgba(0,0,0,0.15);
border-radius:8px;
font-size:14px;
background:#fff;
outline:none;
transition:0.3s;
}

.input-group input:focus{
border-color:#2575fc;
box-shadow:0 0 8px rgba(37,117,252,0.2);
}

.toggle-password{
position:absolute;
right:12px;
top:50%;
transform:translateY(-50%);
cursor:pointer;
font-size:16px;
color:#666;
}

.remember-me{
font-size:14px;
display:flex;
align-items:center;
gap:6px;
color:#333;
}

button{
padding:12px;
background:linear-gradient(to right,#6a11cb,#2575fc);
color:white;
border:none;
border-radius:8px;
cursor:pointer;
font-weight:bold;
font-size:15px;
transition:0.3s;
}

button:hover{
background:linear-gradient(to right,#2575fc,#6a11cb);
transform:translateY(-2px);
box-shadow:0 4px 15px rgba(37,117,252,0.5);
}

.register-text{
text-align:center;
margin-top:18px;
font-size:14px;
}

.register-text a{
color:#2575fc;
text-decoration:none;
}

.register-text a:hover{
text-decoration:underline;
}

.contact-link{
text-align:center;
margin-top:10px;
font-size:14px;
}

.contact-link a{
color:#216e6e;
font-weight:600;
text-decoration:none;
}

.contact-link a:hover{
text-decoration:underline;
}

.alert-box{
display:flex;
align-items:center;
gap:10px;
background:#fff5f5;
border-left:5px solid #e63946;
color:#b00020;
padding:12px 14px;
border-radius:8px;
font-size:14px;
margin-top:5px;
animation:fadeSlide .4s ease;
}

.alert-icon{
font-size:18px;
}

.alert-text{
flex:1;
}

.page-footer{
height:40px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(255,255,255,0.2);
color:#1b4d4d;
font-size:13px;
backdrop-filter:blur(10px);
box-shadow:0 -2px 10px rgba(0,0,0,0.1);
}

.page-footer p{
margin:0;
}

@keyframes fadeSlide{
from{opacity:0;transform:translateY(-5px);}
to{opacity:1;transform:translateY(0);}
}

@media(max-width:600px){

.page-title{
font-size:20px;
}

.page-logo{
width:140px;
}

.glass-card{
width:90%;
padding:1.8rem;
}

}