/* ================= LOGIN THEME ================= */

:root{
  --blue-dark:#000C29;
  --blue-main:#117DBC;
  --blue-light:#3F91C6;
  --radius:18px;
  --shadow:0 20px 50px rgba(0,0,0,.25);
}

/* ================= PAGE ================= */

body{
  background:linear-gradient(
    135deg,
    var(--blue-dark),
    var(--blue-main)
  );
  min-height:100vh;
  display:flex;
  justify-content:center;
  align-items:center;
}

/* ================= CONTAINER ================= */

.login-container{
  background:#fff;
  width:340px;
  padding:34px 30px;
  border-radius:var(--radius);
  text-align:center;
  box-shadow:var(--shadow);
  animation:fadeUp .6s ease;
}

/* ================= TEXT ================= */

.login-container h2{
  margin-bottom:6px;
  color:var(--blue-dark);
}

.login-container p{
  font-size:14px;
  color:#666;
  margin-bottom:22px;
}

/* ================= INPUTS ================= */

.login-container input{
  width:100%;
  padding:12px 14px;
  margin:10px 0;
  border-radius:14px;
  border:1px solid #ddd;
  font-size:14px;
  transition:.25s ease;
}

.login-container input:focus{
  outline:none;
  border-color:var(--blue-main);
  box-shadow:0 0 0 2px rgba(17,125,188,.15);
}

/* ================= BUTTON ================= */

.login-container button{
  width:100%;
  margin-top:18px;
  padding:13px;
  border-radius:16px;
  border:none;
  background:linear-gradient(
    135deg,
    var(--blue-main),
    var(--blue-light)
  );
  color:#fff;
  font-size:15px;
  font-weight:600;
  cursor:pointer;
  transition:.25s ease;
}

.login-container button:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 25px rgba(17,125,188,.4);
}

.login-container button:disabled{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}

/* ================= ERROR ================= */

#error{
  font-size:13px;
  margin-top:10px;
  color:#d9363e;
}

/* ================= ANIMATION ================= */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(18px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* ================= DARK MODE AUTO ================= */

@media (prefers-color-scheme: dark){

  .login-container{
    background:#0b1220;
    color:#e5e7eb;
  }

  .login-container h2{
    color:#fff;
  }

  .login-container p{
    color:#9ca3af;
  }

  .login-container input{
    background:#020617;
    border:1px solid #374151;
    color:#e5e7eb;
  }
}

/* ================= MOBILE ================= */

@media(max-width:420px){
  .login-container{
    width:90%;
    padding:28px 22px;
  }
}
