@charset "utf-8";
/* ==========================================================================
   MDPS — 회원 페이지 (로그인 / 회원가입 / 비밀번호) 스킨 오버라이드
   - basic 스킨(skin/member/basic) 위에 학회 톤(와인레드 / Pretendard / 카드형) 덧입힘
   - rem base: 10px (mdps.css 기준)
   ========================================================================== */

/* ==========================================================================
   공통 — 페이지 헤드 / 컨테이너
   ========================================================================== */
.mdps-mb-wrap {
  max-width: 1080px;
  margin: 0 auto;
  padding: calc(var(--header-height) + 6rem) 0 4rem;
}
.mdps-mb-wrap--narrow {
  max-width: 480px;
}

.mdps-mb-head {
  text-align: center;
  margin-bottom: 4rem;
}
.mdps-mb-head__eyebrow {
  display: inline-block;
  margin-bottom: 1.4rem;
  padding: 0.4rem 1.4rem;
  font-family: var(--mdps-font-en);
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  color: var(--mdps-primary);
  background: var(--mdps-primary-soft);
  border-radius: 99rem;
}
.mdps-mb-head__title {
  margin: 0;
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: -0.04em;
  color: var(--mdps-text);
}
.mdps-mb-head__desc {
  margin-top: 1.4rem;
  font-size: 1.5rem;
  color: var(--mdps-text-3);
  line-height: 1.6;
}

/* 그누보드 기본 컨테이너 타이틀 / 큰 h1 가리기 (basic 스킨이 출력하는 중복 타이틀) */
.mdps-mb-wrap #mb_login > h1,
.mdps-mb-wrap #mb_confirm > h1,
.mdps-mb-wrap #pw_confirm > h1,
.mdps-mb-wrap #find_info > h3 {
  display: none !important;
}
/* basic 스킨의 mb_log_cate (로그인/회원가입 탭) — 우리가 mdps-mb-head로 대체하므로 숨김 */
.mdps-mb-wrap .mb_log_cate { display: none !important; }

/* ==========================================================================
   카드 — 로그인 / 정보 카드
   ========================================================================== */
.mdps-mb-card {
  background: #fff;
  border: 1px solid var(--mdps-border-light);
  border-radius: 1.6rem;
  box-shadow: 0 2rem 4rem rgba(31, 56, 100, 0.06);
}
.mdps-mb-card__inner {
  padding: 4.4rem 4rem;
}

/* ==========================================================================
   폼 공통 — input / textarea / select
   ========================================================================== */
.mdps-mb-wrap .frm_input,
.mdps-mb-wrap input[type="text"],
.mdps-mb-wrap input[type="password"],
.mdps-mb-wrap input[type="email"],
.mdps-mb-wrap input[type="tel"],
.mdps-mb-wrap input[type="number"],
.mdps-mb-wrap textarea {
  width: 100%;
  height: 5.2rem;
  padding: 0 1.6rem;
  background: #fff;
  border: 1px solid var(--mdps-border);
  border-radius: 0.8rem;
  font-family: var(--mdps-font);
  font-size: 1.5rem;
  color: var(--mdps-text);
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
}
.mdps-mb-wrap textarea {
  height: auto;
  min-height: 14rem;
  padding: 1.4rem 1.6rem;
  line-height: 1.7;
  resize: vertical;
}
.mdps-mb-wrap .frm_input:focus,
.mdps-mb-wrap input:focus,
.mdps-mb-wrap textarea:focus {
  outline: none;
  border-color: var(--mdps-primary);
  box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.12);
}
.mdps-mb-wrap input[readonly],
.mdps-mb-wrap input.readonly {
  background: var(--mdps-surface);
  color: var(--mdps-text-3);
}
.mdps-mb-wrap input::placeholder,
.mdps-mb-wrap textarea::placeholder { color: var(--mdps-soft); }

/* 그누보드 fieldset 기본 테두리 제거 */
.mdps-mb-wrap fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.mdps-mb-wrap legend {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

/* 라벨 */
.mdps-mb-wrap label {
  font-size: 1.4rem;
  color: var(--mdps-text-2);
  font-weight: 500;
}

/* ==========================================================================
   체크박스 / 라디오 — 그누보드 selec_chk + chk_box 패턴 오버라이드
   ========================================================================== */
.mdps-mb-wrap .selec_chk {
  position: absolute;
  width: 0; height: 0;
  opacity: 0; pointer-events: none;
}
.mdps-mb-wrap .chk_box {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.mdps-mb-wrap .chk_box input[type="checkbox"] + label,
.mdps-mb-wrap .chk_box input[type="radio"] + label {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  position: relative;
  padding: 0;
  font-size: 1.45rem;
  color: var(--mdps-text-2);
  cursor: pointer;
  font-weight: 500;
}
.mdps-mb-wrap .chk_box input[type="checkbox"] + label:hover,
.mdps-mb-wrap .chk_box input[type="radio"] + label:hover {
  color: var(--mdps-primary);
}
.mdps-mb-wrap .chk_box input[type="checkbox"] + label > span,
.mdps-mb-wrap .chk_box input[type="radio"] + label > span {
  position: relative;
  top: auto; left: auto; right: auto;
  display: inline-block;
  flex-shrink: 0;
  width: 2rem; height: 2rem;
  margin: 0;
  background: #fff;
  border: 1px solid var(--mdps-border);
  border-radius: 0.4rem;
  transition: all 0.2s;
}
.mdps-mb-wrap .chk_box input[type="radio"] + label > span { border-radius: 50%; }
.mdps-mb-wrap .chk_box input[type="checkbox"]:checked + label > span,
.mdps-mb-wrap .chk_box input[type="radio"]:checked + label > span {
  background: var(--mdps-primary);
  border-color: var(--mdps-primary);
}
.mdps-mb-wrap .chk_box input[type="checkbox"]:checked + label > span::after {
  content: "";
  position: absolute;
  left: 0.6rem; top: 0.2rem;
  width: 0.6rem; height: 1.1rem;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.mdps-mb-wrap .chk_box input[type="radio"]:checked + label > span::after {
  content: "";
  position: absolute;
  left: 0.5rem; top: 0.5rem;
  width: 0.8rem; height: 0.8rem;
  background: #fff;
  border-radius: 50%;
}
.mdps-mb-wrap .chk_box input[type="checkbox"]:checked + label,
.mdps-mb-wrap .chk_box input[type="radio"]:checked + label {
  color: var(--mdps-text);
  font-weight: 600;
}

/* ==========================================================================
   로그인 (#mb_login)
   ========================================================================== */
.mdps-mb-wrap #mb_login.mbskin {
  width: auto;
  margin: 0;
  text-align: left;
}
.mdps-mb-wrap #mb_login.mbskin::after { display: none; }
.mdps-mb-wrap #mb_login .mbskin_box {
  background: #fff;
  border: 1px solid var(--mdps-border-light);
  border-radius: 1.6rem;
  box-shadow: 0 2rem 4rem rgba(31, 56, 100, 0.06);
  padding: 4rem 3.6rem;
}

.mdps-mb-wrap #login_fs {
  padding: 0;
  border: 0;
  margin: 0;
}
.mdps-mb-wrap #login_fs .frm_input {
  margin: 0 0 1rem !important;
}
.mdps-mb-wrap #login_fs .btn_submit {
  display: block;
  width: 100%;
  height: 5.2rem;
  margin: 1.6rem 0 0 !important;
  padding: 0;
  background: var(--mdps-primary);
  color: #fff;
  border: 0;
  border-radius: 0.8rem;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  cursor: pointer;
  transition: background 0.2s;
}
.mdps-mb-wrap #login_fs .btn_submit:hover {
  background: var(--mdps-primary-hover);
}

.mdps-mb-wrap #login_info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.8rem;
}
.mdps-mb-wrap #login_info::after { display: none; }
.mdps-mb-wrap #login_info .login_if_auto,
.mdps-mb-wrap #login_info .login_if_lpl { float: none; }
.mdps-mb-wrap #login_info .login_if_lpl a {
  font-size: 1.4rem;
  color: var(--mdps-text-3);
  border: 0;
  padding: 0;
  text-decoration: none;
  background: transparent;
}
.mdps-mb-wrap #login_info .login_if_lpl a:hover {
  color: var(--mdps-primary);
  text-decoration: underline;
}

/* 로그인 카드 하단 — 회원가입 안내 */
.mdps-mb-login-foot {
  margin-top: 2.4rem;
  text-align: center;
  font-size: 1.45rem;
  color: var(--mdps-text-3);
}
.mdps-mb-login-foot a {
  margin-left: 0.6rem;
  font-weight: 700;
  color: var(--mdps-primary);
}
.mdps-mb-login-foot a:hover { text-decoration: underline; }

/* ==========================================================================
   회원가입 약관 동의 (.register / #fregister)
   ========================================================================== */
.mdps-mb-wrap .register { margin: 0; }
.mdps-mb-wrap .register::after { display: none; }

/* basic 스킨의 빨간 안내 박스 → 연한 레드 톤 카드형 안내 */
.mdps-mb-wrap #fregister > p:first-of-type {
  position: static;
  display: block !important;
  margin: 0 0 2.4rem;
  padding: 1.8rem 2rem;
  background: rgba(192, 57, 43, 0.06);
  border: 0;
  border-radius: 0.6rem;
  color: var(--mdps-primary-hover);
  font-size: 1.45rem;
  font-weight: 600;
  height: auto;
  line-height: 1.6;
  text-align: left;
}
.mdps-mb-wrap #fregister > p:first-of-type::before { display: none; }
.mdps-mb-wrap #fregister > p:first-of-type i { margin-right: 0.6rem; }

/* 약관 섹션 카드 */
.mdps-mb-wrap #fregister section,
.mdps-mb-wrap .fregister_terms,
.mdps-mb-wrap #fregister_term,
.mdps-mb-wrap #fregister_private {
  position: relative;
  margin: 0 0 1.6rem;
  padding: 0;
  background: #fff;
  border: 1px solid var(--mdps-border-light);
  border-radius: 1rem;
  overflow: hidden;
}
.mdps-mb-wrap #fregister h2 {
  display: block;
  margin: 0;
  padding: 1.8rem 2.4rem;
  background: var(--mdps-surface);
  border-bottom: 1px solid var(--mdps-border-light);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--mdps-text);
  text-align: left;
}
.mdps-mb-wrap #fregister textarea {
  display: block;
  width: 100%;
  height: 18rem;
  padding: 1.6rem 2rem;
  border: 0;
  background: #fff;
  font-family: var(--mdps-font);
  font-size: 1.4rem;
  line-height: 1.75;
  color: var(--mdps-text-2);
  resize: none;
}
.mdps-mb-wrap .fregister_terms > div {
  padding: 2rem 2.4rem;
  background: #fff;
}
.mdps-mb-wrap .fregister_terms table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
}
.mdps-mb-wrap .fregister_terms table caption { display: none; }
.mdps-mb-wrap .fregister_terms table th {
  width: 30%;
  padding: 1.2rem 1.4rem;
  background: var(--mdps-surface);
  border: 1px solid var(--mdps-border-light);
  color: var(--mdps-text);
  font-weight: 600;
  font-size: 1.4rem;
  text-align: left;
}
.mdps-mb-wrap .fregister_terms table td {
  padding: 1.2rem 1.4rem;
  border: 1px solid var(--mdps-border-light);
  color: var(--mdps-text-2);
  line-height: 1.6;
}

/* 동의 체크박스 — 섹션 내부 fieldset만 적용 (모두동의 박스는 별도) */
.mdps-mb-wrap fieldset.fregister_agree {
  position: relative;
  top: auto; right: auto;
  display: flex;
  justify-content: flex-end;
  margin: 0;
  padding: 1.4rem 2.4rem;
  border-top: 1px solid var(--mdps-border-light);
  background: var(--mdps-surface-2);
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"] + label {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0;
  font-size: 1.45rem;
  font-weight: 500;
  color: var(--mdps-text-2);
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"] + label::before {
  content: "(필수) 위 내용에 동의합니다";
  margin-right: 0.4rem;
  color: var(--mdps-text-2);
  font-size: 1.45rem;
  font-weight: 500;
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"] + label:hover { color: var(--mdps-primary); }
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"] + label:hover::before { color: var(--mdps-primary); }
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"] + label > span {
  position: relative;
  top: auto; left: auto; right: auto;
  display: inline-block;
  flex-shrink: 0;
  width: 2rem; height: 2rem;
  margin: 0;
  background: #fff;
  border: 1px solid var(--mdps-border);
  border-radius: 0.4rem;
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"]:checked + label > span {
  background: var(--mdps-primary);
  border-color: var(--mdps-primary);
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"]:checked + label > span::after {
  content: "";
  position: absolute;
  left: 0.6rem; top: 0.2rem;
  width: 0.6rem; height: 1.1rem;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"]:checked + label {
  color: var(--mdps-text);
  font-weight: 600;
}
.mdps-mb-wrap fieldset.fregister_agree input[type="checkbox"]:checked + label::before {
  color: var(--mdps-text);
  font-weight: 600;
}
.mdps-mb-wrap fieldset.fregister_agree b.sound_only,
.mdps-mb-wrap fieldset.fregister_agree label > b { display: none !important; }

/* 모두 동의 — 배경/패딩 없음, 검정 텍스트 */
.mdps-mb-wrap #fregister_chkall {
  position: relative;
  display: block;
  margin: 2rem 0 3rem;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  text-align: left !important;
  line-height: 1.6 !important;
}
.mdps-mb-wrap #fregister_chkall input[type="checkbox"] + label {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  padding: 0 !important;
  color: var(--mdps-text) !important;
  font-size: 1.55rem;
  font-weight: 600;
  cursor: pointer;
}
.mdps-mb-wrap #fregister_chkall input[type="checkbox"] + label > span {
  position: relative !important;
  top: auto !important; left: auto !important; right: auto !important;
  display: inline-block;
  flex-shrink: 0;
  width: 2.2rem; height: 2.2rem;
  margin: 0;
  background: #fff !important;
  border: 1px solid var(--mdps-border) !important;
  border-radius: 0.4rem !important;
}
.mdps-mb-wrap #fregister_chkall input[type="checkbox"]:checked + label > span {
  background: var(--mdps-primary) !important;
  border-color: var(--mdps-primary) !important;
}
.mdps-mb-wrap #fregister_chkall input[type="checkbox"]:checked + label > span::after {
  content: "";
  position: absolute;
  left: 0.7rem; top: 0.3rem;
  width: 0.6rem; height: 1.2rem;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.mdps-mb-wrap #fregister_chkall input[type="checkbox"]:checked + label { color: var(--mdps-text) !important; }

/* 약관 동의 / 회원가입 폼의 버튼 영역 */
.mdps-mb-wrap .register .btn_confirm,
.mdps-mb-wrap #fregisterform .btn_confirm {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin: 3rem 0 0;
  padding: 0;
  border: 0;
}
.mdps-mb-wrap .register .btn_confirm .btn_close,
.mdps-mb-wrap #fregisterform .btn_confirm .btn_close,
.mdps-mb-wrap .register .btn_confirm a,
.mdps-mb-wrap #fregisterform .btn_confirm a {
  float: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 14rem;
  height: 5.2rem !important;
  padding: 0 2.6rem;
  background: #fff;
  border: 1px solid var(--mdps-border);
  border-radius: 0.8rem;
  color: var(--mdps-text-2);
  font-size: 1.5rem;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s;
}
.mdps-mb-wrap .register .btn_confirm .btn_close:hover,
.mdps-mb-wrap #fregisterform .btn_confirm .btn_close:hover {
  border-color: var(--mdps-primary);
  color: var(--mdps-primary);
}
.mdps-mb-wrap .register .btn_confirm .btn_submit,
.mdps-mb-wrap #fregisterform .btn_confirm .btn_submit {
  float: none;
  width: auto;
  min-width: 18rem;
  height: 5.2rem !important;
  padding: 0 2.8rem;
  background: var(--mdps-primary);
  color: #fff;
  border: 0;
  border-radius: 0.8rem;
  font-size: 1.55rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s;
}
.mdps-mb-wrap .register .btn_confirm .btn_submit:hover,
.mdps-mb-wrap #fregisterform .btn_confirm .btn_submit:hover {
  background: var(--mdps-primary-hover);
}

/* ==========================================================================
   회원가입 입력 폼 (#fregisterform / #register_form)
   ========================================================================== */
.mdps-mb-wrap #register_form {
  background: transparent;
  margin-bottom: 2rem;
}
.mdps-mb-wrap .register_form_inner {
  margin: 0 0 1.6rem;
  background: #fff;
  border: 1px solid var(--mdps-border-light);
  border-radius: 1rem;
  overflow: hidden;
}
.mdps-mb-wrap .register_form_inner h2 {
  margin: 0;
  padding: 1.8rem 2.4rem;
  background: var(--mdps-surface);
  border-bottom: 1px solid var(--mdps-border-light);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--mdps-text);
}
.mdps-mb-wrap .register_form_inner ul {
  padding: 2.4rem;
  list-style: none;
  margin: 0;
}
.mdps-mb-wrap .register_form_inner li {
  margin-bottom: 1.8rem;
  padding: 0;
  list-style: none;
}
.mdps-mb-wrap .register_form_inner li:last-child { margin-bottom: 0; }
.mdps-mb-wrap .register_form_inner label {
  display: block;
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--mdps-text-2);
  letter-spacing: -0.02em;
}
.mdps-mb-wrap .register_form_inner label.inline { display: inline-block; }
.mdps-mb-wrap .register_form_inner label.frm_label { display: block; }

/* 인증 메시지 */
.mdps-mb-wrap #fregisterform #msg_certify {
  margin: 1rem 0;
  padding: 1rem 1.4rem;
  background: rgba(192, 57, 43, 0.06);
  border: 1px solid var(--mdps-primary-soft);
  border-radius: 0.6rem;
  color: var(--mdps-primary-hover);
  font-size: 1.4rem;
  text-align: center;
}
.mdps-mb-wrap #fregisterform .cert_desc {
  margin-left: 0.6rem;
  color: var(--mdps-primary);
  font-size: 1.3rem;
  font-weight: 500;
}
.mdps-mb-wrap #fregisterform .cert_req {
  margin-left: 0.6rem;
  color: var(--mdps-primary);
  font-size: 1.3rem;
  font-weight: 600;
}

/* 인증/주소검색 등 보조 버튼 */
.mdps-mb-wrap .btn_frmline {
  display: inline-flex;
  align-items: center;
  height: 4rem;
  padding: 0 1.6rem;
  margin: 0 0.4rem 0.6rem 0;
  background: #fff;
  border: 1px solid var(--mdps-border);
  border-radius: 0.6rem;
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--mdps-text-2);
  cursor: pointer;
  transition: all 0.2s;
}
.mdps-mb-wrap .btn_frmline:hover {
  border-color: var(--mdps-primary);
  color: var(--mdps-primary);
}

/* 주소 입력 — 줄바꿈 */
.mdps-mb-wrap #fregisterform .frm_address { margin-top: 0.6rem; }

/* 툴팁 아이콘 */
.mdps-mb-wrap .tooltip_icon {
  display: inline-flex;
  align-items: center;
  margin-left: 0.4rem;
  color: var(--mdps-soft);
  background: transparent;
  border: 0;
  font-size: 1.4rem;
  cursor: pointer;
  vertical-align: middle;
}
.mdps-mb-wrap .tooltip_icon:hover { color: var(--mdps-primary); }
.mdps-mb-wrap .tooltip {
  position: absolute;
  display: none;
  margin-left: 1rem;
  margin-top: 0.6rem;
  padding: 0.8rem 1rem;
  background: var(--mdps-deep);
  color: #fff;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.6;
  border-radius: 0.4rem;
  z-index: 9;
}
.mdps-mb-wrap .tooltip::before {
  content: "";
  position: absolute;
  top: 0.6rem; left: -0.6rem;
  width: 0; height: 0;
  border: 6px solid transparent;
  border-right-color: var(--mdps-deep);
}

/* 메시지 (아이디/닉네임/이메일 중복 체크) */
.mdps-mb-wrap [id^="msg_"]:not(:empty) {
  display: inline-block;
  margin-top: 0.6rem;
  font-size: 1.3rem;
}

/* CAPTCHA */
.mdps-mb-wrap .is_captcha_use { padding: 0; }
.mdps-mb-wrap #captcha #captcha_key {
  margin: 0.6rem 0;
  padding: 0.6rem 1rem;
  border: 1px solid var(--mdps-border);
  border-radius: 0.4rem;
}

/* 동의 라인 (consent-line) — 마케팅/광고 동의 */
.mdps-mb-wrap #fregisterform .consent-line {
  display: flex !important;
  align-items: center;
  gap: 0.8rem;
  margin: 0 !important;
}
.mdps-mb-wrap #fregisterform .consent-line .chk_li { padding-left: 0; }
.mdps-mb-wrap .chk_li { padding-left: 0; font-size: 1.45rem; color: var(--mdps-text-2); }
.mdps-mb-wrap #fregisterform .consent-date {
  margin: 0.4rem 0 0 2.8rem !important;
  font-size: 1.25rem;
  color: var(--mdps-soft);
}
.mdps-mb-wrap #fregisterform .consent-group .sub-consents {
  padding: 1rem 0 0 2.8rem;
  margin: 0.6rem 0 0;
  border-left: 2px solid var(--mdps-border-light);
}
.mdps-mb-wrap #fregisterform .consent-group .sub-consents li { margin-bottom: 0.8rem; }
.mdps-mb-wrap #fregisterform .js-open-consent {
  margin-left: auto;
  padding: 0.4rem 0.8rem;
  background: transparent;
  border: 0;
  color: var(--mdps-primary);
  font-size: 1.25rem;
  text-decoration: underline;
  cursor: pointer;
}

/* ==========================================================================
   회원가입 완료 (#reg_result)
   ========================================================================== */
.mdps-mb-wrap #reg_result {
  padding: 6rem 4rem;
  background: var(--mdps-surface);
  border: 1px solid var(--mdps-border-light);
  border-radius: 1.6rem;
  text-align: center;
}
.mdps-mb-wrap #reg_result h2 {
  margin: 0 0 1.6rem;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--mdps-text);
}
.mdps-mb-wrap #reg_result h2 strong { color: var(--mdps-primary); }
.mdps-mb-wrap #reg_result p { font-size: 1.5rem; line-height: 1.7; color: var(--mdps-text-2); }
.mdps-mb-wrap #reg_result .btn_confirm { margin: 4rem 0 0; }

/* ==========================================================================
   비밀번호 확인 / 회원 비밀번호 / 비밀번호 찾기
   ========================================================================== */
.mdps-mb-wrap #mb_confirm,
.mdps-mb-wrap #pw_confirm,
.mdps-mb-wrap #find_info,
.mdps-mb-wrap #pw_reset {
  background: #fff;
  border: 1px solid var(--mdps-border-light);
  border-radius: 1.6rem;
  padding: 4rem 3.6rem;
}
.mdps-mb-wrap #mb_confirm p,
.mdps-mb-wrap #pw_confirm p {
  margin: 0 0 2rem;
  padding: 0 0 2rem;
  border-bottom: 1px solid var(--mdps-border-light);
  font-size: 1.5rem;
  line-height: 1.7;
  color: var(--mdps-text-2);
}
.mdps-mb-wrap #mb_confirm p strong,
.mdps-mb-wrap #pw_confirm p strong {
  display: block;
  margin: 0 0 0.6rem;
  color: var(--mdps-primary);
  font-size: 1.7rem;
  font-weight: 700;
}
.mdps-mb-wrap #mb_confirm fieldset,
.mdps-mb-wrap #pw_confirm fieldset { padding: 0; text-align: left; }

/* ==========================================================================
   소셜 로그인 박스 — 호환
   ========================================================================== */
.mdps-mb-wrap #sns_login,
.mdps-mb-wrap #sns_register {
  margin-top: 1.6rem;
  padding: 2rem;
  border: 1px solid var(--mdps-border-light);
  border-radius: 1rem;
  background: var(--mdps-surface);
}

/* ==========================================================================
   반응형
   ========================================================================== */
@media (max-width: 768px) {
  .mdps-mb-wrap { padding: 9rem 2rem 6rem; }
  .mdps-mb-head__title { font-size: 2.8rem; }
  .mdps-mb-wrap .mdps-mb-card__inner,
  .mdps-mb-wrap #mb_login .mbskin_box {
    padding: 3rem 2.2rem;
  }
  .mdps-mb-wrap .register_form_inner ul,
  .mdps-mb-wrap .fregister_terms > div { padding: 1.6rem; }
  .mdps-mb-wrap #fregister h2,
  .mdps-mb-wrap .register_form_inner h2 { padding: 1.4rem 1.6rem; font-size: 1.5rem; }
  .mdps-mb-wrap .fregister_terms table th { width: 32%; }
  .mdps-mb-wrap .register .btn_confirm,
  .mdps-mb-wrap #fregisterform .btn_confirm { flex-direction: column; gap: 0.8rem; }
  .mdps-mb-wrap .register .btn_confirm .btn_close,
  .mdps-mb-wrap .register .btn_confirm .btn_submit,
  .mdps-mb-wrap #fregisterform .btn_confirm .btn_close,
  .mdps-mb-wrap #fregisterform .btn_confirm .btn_submit { width: 100%; min-width: 0; }
}
