/* ==========================================
   Global
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:Arial, Helvetica, sans-serif;

    background:#f4f6f9;

    color:#1f2937;

    min-height:100vh;

}

/* ==========================================
   Pages
========================================== */

.login-page,
.register-page{

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:100vh;

    padding:20px;

}

/* ==========================================
   Cards
========================================== */

.login-card,
.register-card{

    width:100%;

    max-width:430px;

    background:#ffffff;

    padding:40px;

    border-radius:18px;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

    transition:.3s;

}

.login-card:hover,
.register-card:hover{

    transform:translateY(-3px);

}

/* ==========================================
   Header
========================================== */

.login-header,
.register-header{

    text-align:center;

    margin-bottom:30px;

}

.login-header h1,
.register-header h1{

    color:#2563eb;

    font-size:2rem;

    margin-bottom:10px;

}

.login-header p,
.register-header p{

    color:#6b7280;

    font-size:.95rem;

}

/* ==========================================
   Form
========================================== */

.form-group{

    margin-bottom:20px;

}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;

    color:#374151;

}

.form-group input{

    width:100%;

    padding:14px;

    border-radius:10px;

    border:1px solid #d1d5db;

    background:#ffffff;

    color:#111827;

    font-size:15px;

    outline:none;

    transition:.3s;

}

.form-group input::placeholder{

    color:#9ca3af;

}

.form-group input:focus{

    border-color:#2563eb;

    box-shadow:0 0 0 4px rgba(37,99,235,.12);

}

/* ==========================================
   Buttons
========================================== */

button{

    width:100%;

    padding:14px;

    border:none;

    border-radius:10px;

    background:#2563eb;

    color:white;

    font-size:16px;

    font-weight:bold;

    cursor:pointer;

    transition:.3s;

}

button:hover{

    background:#1d4ed8;

}

/* ==========================================
   Footer
========================================== */

.login-footer,
.register-footer{

    margin-top:28px;

    text-align:center;

}

.login-footer p,
.register-footer p{

    color:#6b7280;

    margin-top:12px;

}

.login-footer a,
.register-footer a{

    color:#2563eb;

    text-decoration:none;

    font-weight:bold;

}

.login-footer a:hover,
.register-footer a:hover{

    text-decoration:underline;

}

/* ==========================================
   Responsive
========================================== */

@media (max-width:768px){

    .login-card,
    .register-card{

        max-width:500px;

        padding:32px;

    }

}

@media (max-width:480px){

    .login-card,
    .register-card{

        padding:24px;

    }

    .login-header h1,
    .register-header h1{

        font-size:1.7rem;

    }

}

@media (max-width:360px){

    .login-card,
    .register-card{

        padding:18px;

    }

}