*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:"Segoe UI",sans-serif;
}

:root{
    --bg:#0f172a;
    --card:rgba(15,23,42,.78);
    --border:rgba(255,255,255,.08);
    --primary:#2563eb;
    --primary-hover:#1d4ed8;
    --text:#ffffff;
    --text2:#94a3b8;
}

body{
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    background:
    radial-gradient(circle at top,#2563eb33,transparent 40%),
    linear-gradient(135deg,#020617,#0f172a,#1e293b);
    color:var(--text);
}

.login-container{
    width:100%;
    display:flex;
    justify-content:center;
    padding:25px;
}

.login-card{
    width:100%;
    max-width:430px;
    background:var(--card);
    backdrop-filter:blur(25px);
    border:1px solid var(--border);
    border-radius:22px;
    padding:40px;
    box-shadow:0 20px 60px rgba(0,0,0,.45);
}

.login-card h1{
    font-size:38px;
    text-align:center;
    margin-bottom:8px;
}

.subtitle{
    text-align:center;
    color:var(--text2);
    margin-bottom:35px;
}

label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    color:#cbd5e1;
}

input{
    width:100%;
    padding:15px;
    margin-bottom:22px;
    border-radius:14px;
    border:1px solid var(--border);
    background:rgba(255,255,255,.05);
    color:#fff;
    outline:none;
    transition:.25s;
    font-size:15px;
}

input:focus{
    border-color:var(--primary);
    background:rgba(255,255,255,.08);
}

button{
    width:100%;
    border:none;
    border-radius:14px;
    background:var(--primary);
    color:white;
    padding:15px;
    font-size:16px;
    font-weight:600;
    cursor:pointer;
    transition:.25s;
}

button:hover{
    background:var(--primary-hover);
    transform:translateY(-2px);
}

button:active{
    transform:scale(.98);
}