@charset "UTF-8";
/* Global */
/* 로그인 좌측 배경 패널.
   폭은 시안 비율(1920 기준 634px ≒ 33%). 일러스트는 494px 고정이고 이 패널의
   오른쪽 경계선에 중심을 맞춘다. 배경과 일러스트가 같은 기준값을 써야 하므로
   변수로 묶는다. */
body {
  font-family: Pretendard !important;
}

button {
  font-family: Pretendard !important;
}

.wrapper {
  /* height 고정이 아니라 min-height 여야 한다. 브라우저 높이를 줄여 내용이
     넘칠 때 height:100vh 면 배경이 100vh 에서 끊기고 그 아래가 흰색으로 남는다. */
  min-height: 100vh;
  width: 100%;
  display: flex;
  position: relative;
  /* 좌측 배경 블록. 시안은 화면 왼쪽 끝까지 채우는 형태라, 가운데 정렬된
     .login_wrapper 안에 두면 폭을 못 채운다. 그래서 뷰포트 기준으로 깐다.
     fixed 라서 브라우저 높이를 줄여 폼이 스크롤되더라도 배경은 항상 화면을
     꽉 채운다 (absolute 면 문서 높이에 따라 잘려 보인다). */
}
.wrapper::before {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: 33%;
  background-color: #e3cef7;
  z-index: 0;
}

.login_wrapper {
  display: flex;
  width: 1340px;
  padding-top: 40px;
  padding-bottom: 40px;
  margin: auto;
  justify-content: flex-end;
  /* position:relative 를 주면 아래 .login_bg__wrapper 의 left:0 이 1340px 박스
     기준이 되어 배경과 어긋난다. z-index 는 flex item 이라 position 없이도 먹는다. */
  z-index: 1;
  /* 일러스트는 배경 패널에 붙어야 한다. 1340px 중앙 정렬 흐름 안에 두면
     화면 폭에 따라 패널 밖으로 밀려나므로 .wrapper 기준으로 띄운다. */
}
.login_wrapper .login_bg__wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  /* 시안처럼 일러스트 중심이 보라/흰 경계선에 오도록, 경계선에서
     자기 폭의 절반만큼 왼쪽으로 당긴다. 오른쪽 일부가 흰 영역에 걸친다.
     경계선이 33% 고정이라 화면이 좁아지면 배경과 함께 왼쪽으로 이동해,
     우측 폼과 겹치지 않는다. */
  left: 33%;
  margin-left: -261.82px;
  width: 494px;
  display: flex;
  align-items: center;
}
.login_wrapper .login_bg__wrapper > .__illust {
  width: 494px;
  height: auto;
}
.login_wrapper .login_form__wrapper {
  width: 400px;
  padding-top: 85px;
}
.login_wrapper .login_form__wrapper .__logo {
  margin-bottom: 50px;
}
.login_wrapper .login_form__wrapper h2 {
  font-size: 36px;
  font-weight: 500;
  line-height: 46px;
  margin-bottom: 35px;
}
.login_wrapper .login_form__wrapper .input_wrapper {
  margin-bottom: 30px;
}
.login_wrapper .login_form__wrapper .input_wrapper:last-of-type {
  margin-bottom: 40px;
}
.login_wrapper .login_form__wrapper .btn_login {
  display: block;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
  line-height: 20px;
  color: #ffffff;
  background-color: #a662e6;
  width: 400px;
  height: 52px;
  line-height: 52px;
  text-align: center;
  margin-bottom: 50px;
  border: none;
  border-radius: 5px;
}
.login_wrapper .login_form__wrapper .btn_login:disabled {
  background-color: #d6b7f4;
  cursor: pointer;
}
.login_wrapper .login_form__wrapper .btn_login:focus-visible {
  outline: none;
}
.login_wrapper .login_form__wrapper .login_copyright {
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
  font-weight: 400;
  color: #aaaaaa;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.login_wrapper .login_form__wrapper .login_copyright > img {
  width: 11px;
  padding-top: 1px;
  margin-right: 4px;
}

/* 로그인 반응형 */
@media (max-width: 1370px) {
  .login_wrapper {
    padding: 40px 25px;
  }
}
@media (max-width: 1150px) {
  .wrapper {
    justify-content: center;
    /* 일러스트 영역이 숨는 폭이므로 좌측 배경도 같이 내린다 */
  }
  .wrapper::before {
    display: none;
  }
  .login_wrapper {
    width: 100%;
    margin: 0;
    padding: 0;
    align-items: start;
  }
  .login_wrapper > .login_bg__wrapper {
    display: none;
  }
  .login_wrapper > .login_form__wrapper {
    padding: 0px 25px;
    margin: auto;
    margin-top: 70px;
    margin-bottom: 20px;
    height: calc(100% - 90px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .login_wrapper > .login_form__wrapper .__logo {
    margin-bottom: 35px;
    width: 94px;
    height: 34px;
  }
  .login_wrapper > .login_form__wrapper h2 {
    display: none;
  }
  .login_wrapper > .login_form__wrapper .btn_login {
    width: 100%;
    margin-bottom: 20px;
  }
  .login_wrapper > .login_form__wrapper .login_copyright {
    margin-bottom: 20px;
  }
  .login_wrapper > .login_form__wrapper .input_wrapper {
    margin-bottom: 20px;
  }
  .login_wrapper > .login_form__wrapper .input_wrapper:last-of-type {
    margin-bottom: 40px;
  }
}
@media (max-width: 430px) {
  .login_wrapper .login_form__wrapper {
    width: 100%;
  }
  .input_wrapper {
    margin-bottom: 20px;
  }
}

/*# sourceMappingURL=login.css.map */
