/* ==========================================================
   AulaMind Enterprise 3.0
   Login / Registro
========================================================== */

:root{

    --primary:#2563eb;
    --primary-hover:#1d4ed8;

    --secondary:#334155;

    --background:#f3f6fb;

    --card:#ffffff;

    --text:#1f2937;

    --text-light:#6b7280;

    --border:#dbe3ec;

    --success:#22c55e;

    --danger:#ef4444;

    --warning:#f59e0b;

    --radius:14px;

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

    --transition:.25s;

}

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

body{

    font-family:

    "Segoe UI",

    Arial,

    sans-serif;

    background:var(--background);

}

/* ===================================================== */

.login-page{

    display:grid;

    grid-template-columns:45% 55%;

    min-height:100vh;

}

/* ===================================================== */

.left-panel{

    background:linear-gradient(

        135deg,

        #2563eb,

        #1e3a8a

    );

    color:white;

}

.overlay{

    padding:70px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    height:100%;

}

.brand h1{

    font-size:54px;

    margin-bottom:10px;

}

.brand span{

    font-size:14px;

    letter-spacing:4px;

    text-transform:uppercase;

}

.message{

    margin-top:60px;

}

.message h2{

    font-size:38px;

    line-height:1.2;

    margin-bottom:20px;

}

.message p{

    font-size:18px;

    line-height:1.8;

    opacity:.95;

}

.features{

    margin-top:50px;

}

.feature{

    margin-bottom:18px;

    font-size:18px;

}

/* ===================================================== */

.right-panel{

    display:flex;

    justify-content:center;

    align-items:center;

    padding:50px;

}

/* ===================================================== */

.login-box{

    width:100%;

    max-width:520px;

    background:var(--card);

    padding:45px;

    border-radius:var(--radius);

    box-shadow:var(--shadow);

}

.logo{

    text-align:center;

    font-size:60px;

    margin-bottom:15px;

}

.login-box h2{

    text-align:center;

    margin-bottom:10px;

}

.login-box p{

    text-align:center;

    color:var(--text-light);

    margin-bottom:30px;

}

/* ===================================================== */

.form-group{

    margin-bottom:20px;

}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;

}

.form-group input{

    width:100%;

    padding:14px;

    border:1px solid var(--border);

    border-radius:10px;

    outline:none;

    font-size:15px;

}

.form-group input:focus{

    border-color:var(--primary);

}

/* ===================================================== */

.remember{

    margin-bottom:20px;

}

.btn-login{

    width:100%;

    padding:15px;

    border:none;

    border-radius:10px;

    background:var(--primary);

    color:white;

    font-size:16px;

    cursor:pointer;

    transition:.25s;

}

.btn-login:hover{

    background:var(--primary-hover);

}

/* ===================================================== */

.separator{

    text-align:center;

    margin:25px 0;

    color:#9ca3af;

}

/* ===================================================== */

.btn-google,
.btn-microsoft{

    width:100%;

    padding:14px;

    border:1px solid var(--border);

    border-radius:10px;

    background:white;

    margin-bottom:12px;

    cursor:not-allowed;

}

/* ===================================================== */

.links{

    margin-top:20px;

    text-align:center;

}

.links a{

    text-decoration:none;

    color:var(--primary);

}

.register{

    margin-top:25px;

    text-align:center;

}

.register a{

    color:var(--primary);

    text-decoration:none;

    font-weight:600;

}

/* ===================================================== */

.alert{

    padding:14px;

    border-radius:10px;

    margin-bottom:20px;

}

.alert.success{

    background:#dcfce7;

    color:#166534;

}

.alert.danger{

    background:#fee2e2;

    color:#991b1b;

}

.alert.info{

    background:#dbeafe;

    color:#1d4ed8;

}

/* ===================================================== */

@media(max-width:1100px){

.login-page{

grid-template-columns:1fr;

}

.left-panel{

display:none;

}

.right-panel{

padding:20px;

}

.login-box{

padding:30px;

}

}