@charset "utf-8";

/* ### 기본 스타일 커스터마이징 시작 ### */
.mbskin {text-align:center;}
.mbskin h1 {font-size:1.75em;margin:40px 0 25px}
.mbskin .policy-text {text-align: left; line-height: 30px;}
.mbskin p strong {padding-bottom:5px; font-size:1.083em}

/* 버튼 */
.mbskin .btn_submit {display:block; width:100%; height:50px;line-height:50px; padding:0 10px; border:0; font-weight:bold; background:#3a8afd; color:#fff; border-radius:8px}
/* ### 기본 스타일 커스터마이징 끝 ### */

/* 회원가입 공통 */
.register {padding:15px}

/* 회원가입 약관 */
#fregister section {position:relative; background:#fff; border:1px solid #e5e9f0; border-radius: 8px; padding: 2rem 2rem; margin-top: 30px;}
#fregister_chkall {position:relative; display:flex; align-items:center; padding:15px; text-align:left; border-radius: 8px; border-bottom:1px solid #e5e9f0; background:#efefef;}
#fregister h2 {font-size:1.2em;}
#fregister textarea {display:block; width:100%; height:250px; padding:10px; background:#fbfbfb; border:0; font-size: 15px; line-height:1.5em; color:#000;}

#fregister .policy-text {color: #000; font-size: 15px; line-height: 1.6;}
#fregister .policy-text ul {margin: 10px 0;}
#fregister .policy-text ul li::before{content: ''; width: 4px; height: 1px; display: inline-block; background: #000; margin-right: 8px; margin-bottom: 4px;}

#fregister p i {font-size:1.2em; vertical-align:middle}
#fregister .btn_confirm {margin-top: 15px}
#fregister_private .tbl_head01 {margin:0}
#fregister_private .tbl_head01 caption {position:absolute; font-size:0; line-height:0; overflow:hidden; top:0; color:#fff}

/* 회원가입 입력 */
#fregisterform .btn_confirm {text-align:center; margin:20px 0}
#fregisterform .btn_confirm .btn_submit {width:49%; height:45px; padding:0 30px; font-weight:bold; font-size:1.083em}
#fregisterform .btn_confirm .btn_cancel {width:49%; line-height:45px; height:45px; padding:0 30px; font-weight:bold; border-radius:3px; border:1px solid #dcdcdc; font-size:1.083em; background:#fff}
#fregisterform .cert_req {margin-left:5px; line-height:28px;}

#fregisterform #reg_mb_email, #fregisterform .frm_address {width:100%}
#fregisterform textarea {width:100%; height:84px}
#fregisterform #msg_certify {margin:5px 0; padding:5px; border:1px solid #dbecff; background:#eaf4ff; text-align:center}
#fregisterform .frm_address,
#fregisterform .password {margin: 6px 0 0}
#fregisterform #mb_addr3 {display:block; margin:5px 0 0}
#fregisterform #mb_addr_jibeon {display:block; margin:5px 0 0}
#fregisterform .form_01 {margin-bottom:30px}
#fregisterform .form_01 h2 {font-size:1.167em; margin:0 0 5px}
#fregisterform .frm_label {display:block; font-size:1.083em; margin:15px 0 5px; color:#555}
#fregisterform .btn_frmline {margin-bottom:5px; width:auto; height:30px; line-height:30px; padding:0 10px; font-weight:bold}
#fregisterform .rgs_name_li button {margin:5px 0 0; width:auto}
#fregisterform .reg_mb_img_file {margin-bottom:30px}
#fregisterform .reg_mb_img_file img {max-width:100%; height:auto}

.filebox .fileName {display:inline-block; position:relative; width:100%; height:45px; padding-left:10px; margin-right:5px; line-height:30px; border:1px solid #d0d3db; background-color:#fff; color:red; vertical-align:middle}
.filebox .btn_file {display:inline-block; position:absolute; right:8px; top:8px; border:1px solid #3a8afd; border-radius:3px; width:70px; height:30px; color:#3a8afd; font-size:1em; line-height:30px; font-weight:bold; text-align:center; vertical-align:middle}
.filebox input[type="file"] {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0}

.adress {width:100%}
.adress #reg_mb_zip {width:100%; position:relative}
.adress .btn_frmline {position:absolute; top:8px; right:15px; height:40px; padding:0 10px; border-radius:3px}

/* (기존 유지) 다른 체크박스 스타일 */
.chk_box {position:relative}
.chk_box input[type="checkbox"] + label {padding-left:10px; color:#676e70}
.chk_box input[type="checkbox"] + label:hover {color:#2172f8}
.chk_box input[type="checkbox"] + label span {position:absolute; top:1px; left:0; width:17px; height:17px; display:block; background:#fff; border:1px solid #d0d4df; border-radius:3px}
.chk_box input[type="checkbox"]:checked + label {color:#000}
.chk_box input[type="checkbox"]:checked + label span {background:url('./img/chk.png') no-repeat 50% 50% #3a8afd; border-color:#1471f6; border-radius:3px}
.chk_li {padding-left:10px; line-height:20px}

/* -----------------------------
   약관 동의(회원가입) 전용 보강
   ----------------------------- */

/* 기존 스킨: selec_chk를 완전 숨김 → 약관 영역에서는 보이도록 덮어쓰기 */
.selec_chk {position:absolute; top:0; left:0; width:0; height:0; opacity:0; outline:0; z-index:-1; overflow:hidden} /* (기존 정의 유지) */

/* ✅ 약관 영역에서는 네이티브 체크박스 보이기 */
.fregister_agree .selec_chk {
  position:static !important;
  width:20px !important;
  height:20px !important;
  margin:2px 8px 0 0 !important;
  opacity:1 !important;
  overflow:visible !important;
  clip:auto !important;
  clip-path:none !important;
  z-index:auto !important;
  -webkit-appearance:checkbox !important;
  appearance:auto !important;
}

/* ✅ 좌측 체크박스 / 우측 텍스트 정렬 */
.fregister_agree {display:flex !important; gap:10px !important;}
.fregister_agree label {flex:1 1 auto; line-height:1.6; cursor:pointer; color:#676e70}
.fregister_agree label:hover {color:#2172f8}

/* 커스텀 가짜 체크박스(span)는 약관 영역에서 숨김(중복 방지) */
.fregister_agree input[type="checkbox"] + label span {display:none !important}

/* 포커스 링(키보드 접근성) */
.fregister_agree .selec_chk:focus-visible {outline:2px solid #1471f6; outline-offset:2px}

/* 전체동의 라인도 동일하게 적용 */
.fregister_agree.chk_all input[type="checkbox"] + label span {top:0} /* 숨겨지지만 안전하게 초기화 */

/* === 약관 섹션 제목행(체크 + 제목) 정렬 === */
#fregister .fregister_head{
	display:flex;
	align-items:center;
	gap:10px;
	padding-bottom: 22px;
	margin-bottom: 22px;
	border-bottom:1px solid #e5e9f0;
}

/* 제목 내부에 label이 있으므로 클릭=체크 */
#fregister .fregister_head h2{
  margin:0;
  font-size:1.2em;
}
#fregister .fregister_head h2 label{
  cursor:pointer;
  font-weight:600;
  color:#111;
}

/* 제목행에서도 네이티브 체크박스 표시 */
#fregister .fregister_head .selec_chk{
  position:static !important;
  width:20px !important;
  height:20px !important;
  margin:0 6px 0 0 !important;
  opacity:1 !important;
  clip:auto !important;
  clip-path:none !important;
  -webkit-appearance:checkbox !important;
  appearance:auto !important;
}

/* 스킨의 가짜 체크박스(span) 중복 방지 */
#fregister .fregister_head input[type="checkbox"] + h2 label > span{
  display:none !important;
}

@media(max-width: 767px) {
	.sns-wrap {gap: 10px !important;}
}


/* 회원가입 완료 */
/* ===== 회원가입 완료 페이지 전용: 네임스페이스 #g5regc / .g5regc- ===== */

/* 컨테이너 */
#g5regc { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif; }
#g5regc { padding: 40px; }
#g5regc { background: #f7f8fa; }

/* 카드 */
#g5regc .g5regc-card { max-width: 720px; }
#g5regc .g5regc-card { margin: 0 auto; }
#g5regc .g5regc-card { background: #ffffff; }
#g5regc .g5regc-card { border: 1px solid #e5e7eb; }
#g5regc .g5regc-card { border-radius: 16px; }
#g5regc .g5regc-card { box-shadow: 0 8px 28px rgba(0, 0, 0, 0.06); }
#g5regc .g5regc-card { padding: 36px; }

/* 헤더 */
#g5regc .g5regc-head { text-align: center; }
#g5regc .g5regc-head { margin-bottom: 28px; }

/* 아이콘 */
#g5regc .g5regc-icon { display: inline-flex; }
#g5regc .g5regc-icon { align-items: center; }
#g5regc .g5regc-icon { justify-content: center; }
#g5regc .g5regc-icon { width: 64px; }
#g5regc .g5regc-icon { height: 64px; }
#g5regc .g5regc-icon { margin-bottom: 12px; }
#g5regc .g5regc-icon svg { width: 64px; }
#g5regc .g5regc-icon svg { height: 64px; }

/* 타이틀/리드 */
#g5regc .g5regc-title { font-size: 1.625rem; }
#g5regc .g5regc-title { line-height: 1.3; }
#g5regc .g5regc-title { font-weight: 700; }
#g5regc .g5regc-title { letter-spacing: -0.3px; }
#g5regc .g5regc-title { margin: 0 0 8px 0; }

#g5regc .g5regc-lead { font-size: 1rem; }
#g5regc .g5regc-lead { line-height: 1.7; }
#g5regc .g5regc-lead { color: #111827; }
#g5regc .g5regc-lead { margin: 0 0 4px 0; }

#g5regc .g5regc-lead-sub { font-size: 0.95rem; }
#g5regc .g5regc-lead-sub { line-height: 1.7; }
#g5regc .g5regc-lead-sub { color: #374151; }
#g5regc .g5regc-lead-sub { margin: 0; }

/* 섹션 타이틀/텍스트 */
#g5regc .g5regc-sec-title { font-size: 1.125rem; }
#g5regc .g5regc-sec-title { font-weight: 700; }
#g5regc .g5regc-sec-title { margin: 28px 0 10px 0; }
#g5regc .g5regc-sec-title { color: #111827; }

#g5regc .g5regc-text { margin: 0 0 14px 0; }
#g5regc .g5regc-text { color: #374151; }
#g5regc .g5regc-text { line-height: 1.7; }

/* 사용자 정보 박스 (이전 #result_email 대체) */
#g5regc .g5regc-userinfo { border: 1px solid #e5e7eb; }
#g5regc .g5regc-userinfo { border-radius: 12px; }
#g5regc .g5regc-userinfo { overflow: hidden; }
#g5regc .g5regc-userinfo { margin: 14px 0; }
#g5regc .g5regc-row { display: grid; }
#g5regc .g5regc-row { grid-template-columns: 120px 1fr; }
#g5regc .g5regc-row { border-top: 1px solid #e5e7eb; }
#g5regc .g5regc-row:first-child { border-top: none; }
#g5regc .g5regc-userinfo dt { background: #f9fafb; }
#g5regc .g5regc-userinfo dt { padding: 12px 14px; }
#g5regc .g5regc-userinfo dt { font-weight: 600; }
#g5regc .g5regc-userinfo dt { color: #111827; }
#g5regc .g5regc-userinfo dd { padding: 12px 14px; }
#g5regc .g5regc-userinfo dd { margin: 0; }
#g5regc .g5regc-userinfo dd { color: #111827; }
#g5regc .g5regc-userinfo dd { word-break: break-all; }

/* 버튼 영역 */
#g5regc .g5regc-btns { display: flex; }
#g5regc .g5regc-btns { gap: 10px; }
#g5regc .g5regc-btns { margin-top: 24px; }
#g5regc .g5regc-btns { justify-content: center; }

/* 버튼 공통 */
#g5regc .g5regc-btn { display: inline-flex; }
#g5regc .g5regc-btn { align-items: center; }
#g5regc .g5regc-btn { justify-content: center; }
#g5regc .g5regc-btn { height: 44px; }
#g5regc .g5regc-btn { padding: 0 18px; }
#g5regc .g5regc-btn { border-radius: 10px; }
#g5regc .g5regc-btn { font-weight: 700; }
#g5regc .g5regc-btn { line-height: 1; }
#g5regc .g5regc-btn { border: 1px solid transparent; }
#g5regc .g5regc-btn { text-decoration: none; }
#g5regc .g5regc-btn { cursor: pointer; }

/* 버튼 스타일 */
#g5regc .g5regc-btn-primary { background: #1a73e8; }
#g5regc .g5regc-btn-primary { color: #ffffff; }
#g5regc .g5regc-btn-primary:hover { background: #155fc0; }
#g5regc .g5regc-btn-primary:active { background: #134fa0; }
#g5regc .g5regc-btn-primary:focus-visible { outline: 3px solid #90c2ff; }
#g5regc .g5regc-btn-primary:focus-visible { outline-offset: 2px; }

#g5regc .g5regc-btn-ghost { background: #ffffff; }
#g5regc .g5regc-btn-ghost { color: #1f2937; }
#g5regc .g5regc-btn-ghost { border-color: #d1d5db; }
#g5regc .g5regc-btn-ghost:hover { background: #f3f4f6; }
#g5regc .g5regc-btn-ghost:active { background: #e5e7eb; }
#g5regc .g5regc-btn-ghost:focus-visible { outline: 3px solid #c7d2fe; }
#g5regc .g5regc-btn-ghost:focus-visible { outline-offset: 2px; }

/* 스크린리더 전용 (현재는 사용 X) */
#g5regc .g5regc-sr-only { position: absolute; }
#g5regc .g5regc-sr-only { width: 1px; }
#g5regc .g5regc-sr-only { height: 1px; }
#g5regc .g5regc-sr-only { padding: 0; }
#g5regc .g5regc-sr-only { margin: -1px; }
#g5regc .g5regc-sr-only { overflow: hidden; }
#g5regc .g5regc-sr-only { clip: rect(0, 0, 0, 0); }
#g5regc .g5regc-sr-only { white-space: nowrap; }
#g5regc .g5regc-sr-only { border: 0; }

/* 반응형 */
@media (max-width: 600px) {
  #g5regc { padding: 24px; }
  #g5regc .g5regc-card { padding: 24px; }
  #g5regc .g5regc-title { font-size: 1.35rem; }
  #g5regc .g5regc-row { grid-template-columns: 96px 1fr; }
  #g5regc .g5regc-btn { height: 42px; }
  #g5regc .g5regc-btn { padding: 0 16px; }
}


/* 아이디/비밀번호 찾기 */
#find_info h3 {display:none;margin-bottom:30px;text-align:center;font-size:1.1em;}
#find_info.cert h3 {display:block;}
#find_info #info_fs p {margin:0 0 10px;line-height:1.5em;font-size:0.92em;color:#4162ff}
#find_info #info_fs #mb_email {width:100%}
#find_info #captcha {margin:5px 0}
#find_info .find_btn .btn_submit {margin:5px 0;width:100%;}

/* 비밀번호 재설정 */
#pw_reset #info_fs {margin-bottom: 10px}
#pw_reset .frm_input {margin:10px 0 0}

/* 기존 회원 본인인증 */
#member_cert_refresh section {position:relative;background:#fff;border-bottom:1px solid #e5e9f0;padding:15px}
#member_cert_refresh_chkall {position:relative;font-weight:bold;text-align:left;background:#fff;padding:15px;border-top:1px solid #e5e9f0;border-bottom:1px solid #e5e9f0;border-radius:3px}
#member_cert_refresh h2 {text-align:left;padding-bottom:15px;line-height:1.7em;font-size:1.4em}
#member_cert_refresh textarea {display:block;width:100%;height:180px;padding:10px;background:#fbfbfb;border:1px solid #d1d7d8;line-height:1.5em;color:#555}
#member_cert_refresh p {position:relative;text-align:left;color:#fff;line-height:18px;padding:15px;font-size:1.1em;background:#f2838f;margin:15px;border-radius:5px}
#member_cert_refresh p:before {content:"";position:absolute;top:0;left:0;width:5px;height:100%;border-radius:5px 0 0 5px;background:#da4453}
#member_cert_refresh p i {font-size:1.2em;vertical-align:middle}
#member_cert_refresh .btn_confirm {margin:15px 10px}
#member_cert_refresh_private .tbl_head01 {margin:0}
#member_cert_refresh_private .tbl_head01 caption {position:absolute;font-size:0;line-height:0;overflow:hidden;top:0;color:#fff}
.member_cert_refresh_agree input[type="checkbox"] + label {color:#676e70}
.member_cert_refresh_agree input[type="checkbox"] + label:hover {color:#2172f8}
.member_cert_refresh_agree input[type="checkbox"] + label span {position:absolute;top:20px;right:15px;width:17px;height:17px;display:block;background:#fff;border:1px solid #999;border-radius:3px}
.member_cert_refresh_agree input[type="checkbox"]:checked + label {color:#000}
.member_cert_refresh_agree input[type="checkbox"]:checked + label span {background:url('./img/chk.png') no-repeat 50% 50% #3a8afd;border-color:#1471f6;border-radius:3px}
.member_cert_refresh_agree.chk_all input[type="checkbox"] + label span {top:15px}

#member_cert_refresh #find_info .find_btn > div {margin:10px 0;padding:0}

/* 로그인 */
#mb_login {}
#mb_login h1 {font-size: 1.5em;text-align:center;margin:30px 0 20px}
#mb_login h2 {margin:0}
#mb_login p {padding:10px 0;line-height:1.5em}
#mb_login #login_frm {position:relative;}
#mb_login #login_frm div {margin:10px 0;text-align:left}
#mb_login .frm_input {width:100%;margin:5px 0; border: 1px solid #dedede; padding: 10px; border-radius: 8px;}
#mb_login #login_info label {padding-left:23px}
#mb_login .btn_submit {width:100%; border-radius: 8px; height:50px;margin:10px 0 0;font-size:1.083em;font-weight:bold;}
#mb_login .mb_login_join:after {display:block;visibility:hidden;clear:both;content:""}
#mb_login .mb_login_join h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#mb_login .mb_login_join a {display:block; border: 1px solid #e3e3e3; border-radius: 8px; height: 50px; line-height: 50px; margin-top: 10px;}
#login_password_lost {border-right:1px solid #cdcdcd}

#flogin {background:#fff;margin:20px 0}

#mb_login_notmb {background:#fff; margin-top: 50px;}
#mb_login_notmb .chk_box input[type="checkbox"] + label{padding-left:20px}
#mb_login_notmb h2 {font-size: 1.5em; margin: 0 0 16px; text-align: center;}
#mb_login_notmb p {border:0;padding:0;margin:10px;}
#guest_privacy {border:1px solid #ccc; text-align:left; line-height:1.6em; color:#666; background:#fafafa; padding:10px; height: 290px; margin-top: 20px; overflow-y:auto}
#mb_login_notmb .btn_submit {width:100%; display:block; height: 50px; line-height: 50px;}

#mb_login_od_wr {background:#fff;border-bottom:1px solid #ccc;padding:20px}
#mb_login_od_wr p {border:0;text-align:left}
#mb_login_od_wr p strong {display:inline}
#mb_login_odinfo {margin:10px 0 0 ;background:#f3f3f3;padding:10px}
#mb_login_odinfo h2 {font-size:1.167em}

#mb_login #sns_login {margin-top:0;border-color:#edeaea;}
#mb_login #sns_login:after {display:block;visibility:hidden;clear:both;content:""}
#mb_login #sns_login h3 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#mb_login #sns_login .sns-wrap {margin:0 !important}
#mb_login #sns_login .txt {font-size:0.95em;padding-left:5px !important;border-left:0 !important}

/* 쪽지 */
.memo_list {border-top:1px solid #ececec;}
.memo_list li {border-bottom:1px solid #ececec;background:#fff;padding:10px 15px;list-style:none;position:relative}
.memo_list li:after {display:block;visibility:hidden;clear:both;content:""}
.memo_list li.read {background:#f6f6f6}
.memo_list li.empty_li {text-align:center;padding:20px 0;color:#666}

.memo_list .memo_li {float:left}
.memo_list .profile_big_img {position:relative;margin-right:15px}
.memo_list .profile_big_img img {border-radius:50%;width:52px;height:52px}
.memo_list .memo_name {padding-top:5px;float:none}
.memo_list .memo_preview a{display:block;margin-right:30px;padding-top:10px;font-weight:normal !important;font-size:1.2em}
.memo_list .memo_preview a:hover{text-decoration:underline}
.memo_list .memo_name a,
.memo_list .memo_name .sv_wrap {font-weight:bold}
.memo_list .no_read {position:absolute;bottom:0;right:0;display:inline-block;background:#3a8afd;border:1px solid #e1edff;text-indent:-9999px;border-radius:10px;width:10px;height:10px;box-shadow:0 0 10px 3px #9ec3f9}
.memo_list .no_read {animation:blinker 1s linear infinite}

@keyframes blinker {
	50% {opacity:0}
	}

#memo_list h1#win_title {padding:10px 10px 10px 20px}
#memo_list .memo_datetime {font-size:0.92em;color:#888d92}
#memo_list .memo_del {position:absolute;right:15px;top:15px;padding:10px;color:#c7c9cb;font-size:1.4em}
#memo_list .memo_cnt {margin-top:5px;font-weight:normal;display:inline-block;font-size:1.2em}

#memo_view_contents {margin-bottom:20px;border-top:1px solid #ececec;border-bottom:1px solid #ececec}
#memo_view_contents h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#memo_view_ul {margin:0;list-style:none;background:#f6f6f6}
#memo_view_ul:after {display:block;visibility:hidden;clear:both;content:""}
.memo_view_li {position:relative;/*padding:10px;float:left;width:50%*/}

.memo_view_li .profile_img img {display:none}
.memo_from {position:relative;background:#fff;border-bottom:1px solid #ececec;padding:15px 20px}
.memo_from li {float:left}
.memo_from li.memo_profile img {width:40px;height:40px;border-radius:50%}
.memo_from li:first-child {margin-right:10px}
.memo_from li.memo_view_nick {width:80%}
.memo_from li.memo_view_nick a {font-weight:bold !important}
.memo_from li.memo_view_date {display:block;color:#555;line-height:24px}
.memo_from li.memo_op_btn {position:absolute}
.memo_from li.list_btn {right:53px;}
.memo_from li.del_btn {right:15px;}
.memo_from:after {display:block;visibility:hidden;clear:both;content:""}

.memo_btn {width:100%}
.memo_btn a {display:inline-block;width:50%;font-size:1em;color:#888d92;padding:20px}
.memo_btn a.btn_right {float:right;text-align:right}
.memo_btn a i {font-size:1.2em;color:#acabab;vertical-align:bottom}

#memo_view p {padding:10px;min-height:150px;height:auto !important;height:150px;background:#fff;line-height:1.8em}
#memo_view textarea {height:100px}

#memo_write .form_01 {padding:20px;border-top:1px solid #ececec}

.reply_btn {display:inline-block;width:150px;height:45px;line-height:50px;padding:0 10px;font-weight:bold;background:#3a8afd;color:#fff;border-radius:3px;vertical-align:bottom;margin-right:5px}
#memo_write .reply_btn {font-size:1em}

/* 스크랩 */
#scrap li:after {display:block;visibility:hidden;clear:both;content:""}
#scrap li {position:relative;padding:20px;border-bottom:1px solid #ececec}
#scrap .scrap_tit {font-weight:bold;display:block;font-size:1.083em;margin-bottom:10px;line-height:1.3em}
#scrap .scrap_cate {float:left;display:block;color:#ac92ec;background:#eeeaf8;padding:3px;border-radius:3px;font-size:0.92em;margin-right:10px}
#scrap .scrap_datetime {color:#777;line-height:18px}
#scrap .scrap_del {position:absolute;top:15px;right:15px;font-size:18px;color:#c7c9cb}
#scrap .scrap_del:hover {color:#3a8afd}

#scrap_do textarea {width:100%;height:100px}
#scrap_do .scrap_tit {margin-bottom:10px;background:#f3f3f3;padding:10px 15px;font-size:1.2em;font-weight:bold}
#scrap_do label {display:block;margin:0 0 5px;font-size:1em}
#scrap_do .win_btn:after {display:block;visibility:hidden;clear:both;content:""}
#scrap .win_btn, #scrap_do .win_btn {margin:20px 0;text-align:center}
#scrap_do .win_btn .btn_submit {float:inherit}
#scrap_do .win_desc {margin:0 20px}

/* 포인트 */
#point {text-align:center}
#point h1 {text-align:left}
#point .point_all {margin:15px;border-radius:5px;background:#edf3fc;border:1px solid #d6e2f4;color:#485172;font-size:1.083em}
#point .point_all:after {display:block;visibility:hidden;clear:both;content:""}
#point .point_all li {float:left;width:50%;padding:20px;text-align:left}
#point .point_all li span {float:right;color:#485172;font-weight:bold}
#point .point_all li:last-child {border-left:1px solid #d6e2f4}
#point .point_all .full_li {width:100%;border-bottom:1px solid #d6e2f4;text-align:left}
#point .point_all .full_li span {color:#000;font-weight:bold;font-size:1.2em}
#point .point_status{background:#737373;border:0;color:#fff;font-weight:bold;font-size:1.083em;text-align:left}
#point .point_status:after {display:block;visibility:hidden;clear:both;content:""}
#point .point_status span{margin-left:10px;float:right}

.point_list {margin-bottom:20px}
.point_list li:first-child {border-top:1px solid #ececec}
.point_list li {border-bottom:1px solid #ececec;background:#fff;padding:15px;list-style:none;position:relative}
.point_list li:after {display:block;visibility:hidden;clear:both;content:""}

.point_list .point_use {background:#f6f6f6}
.point_list .point_use .point_num {font-size:1.25em;color:#ff4f76;font-weight:bold;float:right}
.point_list .point_num {font-size:1.25em;color:#3a8afd;font-weight:bold;position:absolute;right:15px;top:25px}
.point_list .point_top {line-height:15px;margin:0 0 5px}
.point_list .point_top:after {display:block;visibility:hidden;clear:both;content:""}
.point_list .point_tit {font-weight:bold;float:left;font-size:1.083em;display:block}
.point_list .point_date1 {float:left;color:#888d92}
.point_list .point_date {float:left;color:#888d92}
.point_list .txt_expired {color:red;margin-left:5px}

#point .pg_wrap {width:100%;float:inherit;text-align:center}
#point .btn_close {margin:20px auto}

/* 회원 비밀번호 확인 */
#mb_confirm {max-width:320px;margin:30px auto}
#mb_confirm h1 {margin:0 0 15px;padding:0 10px;font-size:1.3em}
#mb_confirm p {padding:15px 10px;border-bottom:1px solid #cfded8;border-bottom:0;background:#fff}
#mb_confirm p strong {display:block}
#mb_confirm fieldset {position:relative;margin:20px 0;text-align:left;color:#555}
#mb_confirm_id {font-weight:bold;display:block;font-size:1.083em;margin:5px 0}
#mb_confirm_pw {display:block;margin-top:10px;width:100%}
#mb_confirm .btn_submit {width:100%;height:40px;border-radius:3px;margin:10px 0}

/* 비밀글 비밀번호 확인 */
#pw_confirm fieldset {position:relative;margin:0 0 5px;padding:15px 0;border-top:1px solid #fffefe}
#pw_wr_password {width:100%}
#pw_confirm .btn_submit {margin:5px 0;width:100%;border-radius:3px;height:45px;font-weight:bold;font-size:1.083em}

/* 폼메일 */
#formmail #subject {width:100%}
#formmail textarea {width:100%;height:100px}
#formmail .frm_file {padding-left:50px}
#formmail .file_wr {border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;height:40px}
#formmail .lb_icon {position:absolute;top:1px;left:1px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;background:#fff;text-align:center;color:#b2b2b2}

.chk_box input[type="radio"] {position:absolute;top:0;left:0;width:0;height:0;opacity:0;outline:0;z-index:-1;overflow:hidden}
.chk_box input[type="radio"] + label {position:relative;padding-left:23px;display:inline-block;color:#676e70}
.chk_box input[type="radio"] + label span {position:absolute;top:0;left:0;width:15px;height:15px;display:block;background:#f7f8f9;border:1px solid #cdd6df;border-radius:50%}
.chk_box input[type="radio"]:checked + label {color:#3a8afd}
.chk_box input[type="radio"]:checked + label span {border-color:#3a8afd}
.chk_box input[type="radio"]:checked + label span:before {width:7px;height:7px;background:#3a8afd;content:'';position:absolute;top:3px;left:3px;border-radius:50%}

/* 자기소개 */
#profile section {margin:10px}
#profile h2 {margin:0}
#profile .sv_wrap a {}
#profile .profile_img img {border-radius:50%}
#profile table {width:100%;border-collapse:collapse}
#profile table th {background:#fff;padding:10px;width:90px;text-align:left;border-bottom:1px solid #eee}
#profile table td {background:#fff;padding:10px;border-bottom:1px solid #eee}
#profile p {color:#6794d3;background:#fff;padding:10px;border:1px solid #eee;margin:10px 0}



/* ▼ 세로 중앙 정렬 전용 스타일(간섭 최소화) */
/* 페이지 높이(헤더/푸터 감안한 동적 값) 없으면 100dvh/100vh 대체 */
  .login_wrap{
    min-height: var(--availH, 100dvh);
    display: flex;
    flex-direction: column;
    justify-content: center;   /* 세로 중앙 */
    padding: 24px 16px;        /* 가장자리 여백 */
    box-sizing: border-box;
    gap: 24px;                 /* 여러 블록 사이 간격 */
  }

  /* 내부 블록(로그인/비회원/주문조회)을 폭 제한 + 가운데 정렬(가로) */
  .login_wrap > .mbskin,
  .login_wrap > section.mbskin,
  .login_wrap > div.mbskin{margin-inline: auto;}

  /* 제목 간격만 살짝 정리 */
  #mb_login h1{ margin: 0 0 16px; text-align: center; }


@media (min-width: 768px) {
	.login_wrap {display: flex; max-width: 1200px; margin: 0 auto;}
	#mb_login {display: flex; gap: 50px; max-width: 950px;}
	#mb_login_notmb {padding: 0; margin: 0;}
	#mb_login h1, #mb_login_notmb h2 {font-size: 2em;}
	#mb_login_notmb {margin-top: 0; width: 42%;}
}