@charset "utf-8";


/* ============================================================
   HIGHEND REALTY — 회원 스킨 통합 CSS
   각 스킨 파일의 <style> 블록을 원본 그대로 이어붙임
   수정: 2026-04-23
============================================================ */


/* ============================================================
   LOGIN   [login.skin.php]
============================================================ */

/* === 헤더 강제 표시 (흰 배경 페이지에서도 보이게) === */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a {
    color: #222 !important;
}
#hd a:hover, #hd .gnb a:hover {
    color: #3e5d71 !important;
}
/* 로고 이미지가 흰색 버전이면 어두운 버전으로 (있을 경우) */
#hd .logo img {
    filter: none !important;
}

/* === 로그인 페이지 (일반 서브페이지 형식) === */
body{background:#fff;color:#222}

.login-wrap{
    max-width:480px;
    margin:0 auto;
    padding:140px 20px 100px;
}

/* 페이지 타이틀 */
.login-page-head{
    text-align:center;
    margin-bottom:40px;
    padding-bottom:24px;
    border-bottom:1px solid #e8e8e4;
}
.login-page-en{
    font-family:'Cormorant Garamond',serif;
    font-size:13px;
    letter-spacing:.3em;
    color:#3e5d71;
    text-transform:uppercase;
    margin-bottom:8px;
}
.login-page-title{
    font-family:'Pretendard',sans-serif;
    font-size:30px;
    font-weight:700;
    color:#111;
    letter-spacing:.02em;
}

/* 안내 메시지 */
.login-error{
    background:#fff3cd;
    border:1px solid #ffc107;
    color:#856404;
    padding:12px 16px;
    border-radius:4px;
    font-size:13px;
    margin-bottom:20px;
    display:flex;
    align-items:center;
    gap:8px;
}

/* 폼 */
.login-form-group{margin-bottom:18px}
.login-form-group label{
    display:block;
    font-size:12px;
    font-weight:600;
    color:#3e5d71;
    margin-bottom:8px;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.login-form-group input{
    width:100%;
    padding:14px 16px;
    border:1px solid #ddd;
    border-radius:4px;
    font-size:14px;
    font-family:inherit;
    background:#fafafa;
    transition:all .2s;
}
.login-form-group input:focus{
    outline:none;
    border-color:#3e5d71;
    background:#fff;
    box-shadow:0 0 0 3px rgba(62,93,113,.08);
}

/* 옵션 (자동로그인 / 찾기) */
.login-opts{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:6px 0 24px;
}
.login-save{
    display:flex;
    align-items:center;
    gap:6px;
    font-size:13px;
    color:#555;
    cursor:pointer;
}
.login-save input{
    accent-color:#3e5d71;
    width:14px;
    height:14px;
}
.login-find{
    font-size:13px;
    color:#888;
    text-decoration:none;
    border-bottom:1px solid transparent;
    transition:all .2s;
}
.login-find:hover{color:#3e5d71;border-bottom-color:#3e5d71}

/* 버튼 */
.btn-login{
    width:100%;
    padding:16px;
    background:#3e5d71;
    color:#fff;
    border:none;
    border-radius:4px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:background .2s;
    letter-spacing:.1em;
    margin-bottom:10px;
}
.btn-login:hover{background:#2d4a5a}
.btn-join{
    display:block;
    width:100%;
    padding:15px;
    background:#fff;
    color:#3e5d71;
    border:1px solid #3e5d71;
    border-radius:4px;
    font-size:14px;
    font-weight:600;
    text-align:center;
    text-decoration:none;
    transition:all .2s;
    box-sizing:border-box;
}
.btn-join:hover{background:#3e5d71;color:#fff}

/* 디바이더 */
.login-divider{
    display:flex;
    align-items:center;
    gap:12px;
    margin:18px 0;
    color:#bbb;
    font-size:11px;
    letter-spacing:.1em;
}
.login-divider::before,
.login-divider::after{
    content:'';
    flex:1;
    height:1px;
    background:#e8e8e4;
}

/* 모바일 반응형 */
@media(max-width:768px){
    .login-wrap{padding:120px 20px 60px}
    .login-page-title{font-size:24px}
}

/* ============================================================
   REGISTER (약관동의)   [register.skin.php]
============================================================ */

/* === 헤더 강제 표시 (흰 배경 페이지에서도 보이게) === */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a {
    color: #222 !important;
}
#hd a:hover, #hd .gnb a:hover {
    color: #3e5d71 !important;
}
#hd .logo img {
    filter: none !important;
}

/* === 약관동의 페이지 (일반 서브페이지 형식) === */
body{background:#fff;color:#222}

.reg-wrap{
    max-width:680px;
    margin:0 auto;
    padding:140px 20px 100px;
}

/* 페이지 타이틀 */
.reg-page-head{
    text-align:center;
    margin-bottom:40px;
    padding-bottom:24px;
    border-bottom:1px solid #e8e8e4;
}
.reg-page-en{
    font-family:'Cormorant Garamond',serif;
    font-size:13px;
    letter-spacing:.3em;
    color:#3e5d71;
    text-transform:uppercase;
    margin-bottom:8px;
}
.reg-page-title{
    font-family:'Pretendard',sans-serif;
    font-size:30px;
    font-weight:700;
    color:#111;
    letter-spacing:.02em;
    margin-bottom:8px;
}
.reg-page-sub{
    font-size:13px;
    color:#888;
}

/* 단계 표시 */
.reg-steps{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    margin-bottom:40px;
}
.reg-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
}
.reg-step-num{
    width:34px;height:34px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:12px;font-weight:700;
    background:#e8e8e4;color:#999;
    transition:all .2s;
}
.reg-step.active .reg-step-num{background:#076bc1;color:#fff;box-shadow:0 4px 12px rgba(7,107,193,.25)}
.reg-step.done .reg-step-num{background:#3e5d71;color:#fff}
.reg-step-label{font-size:11px;color:#999;white-space:nowrap;letter-spacing:.05em}
.reg-step.active .reg-step-label{color:#076bc1;font-weight:600}
.reg-step.done .reg-step-label{color:#3e5d71}
.reg-step-arrow{color:#ccc;font-size:14px;padding:0 14px;margin-bottom:18px}

/* 섹션 */
.reg-section{margin-bottom:32px}

.reg-section-title{
    font-size:12px;
    font-weight:700;
    color:#3e5d71;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-bottom:14px;
    padding-bottom:10px;
    border-bottom:2px solid #3e5d71;
    display:inline-block;
}

/* 약관 내용 */
.reg-terms{
    border:1px solid #e0e0e0;
    background:#fafafa;
    padding:16px 18px;
    font-size: 14px;
    color:#555;
    line-height:1.9;
    height:160px;
    overflow-y:auto;
    border-radius:4px;
    margin-bottom:12px;
}
.reg-terms::-webkit-scrollbar{width:6px}
.reg-terms::-webkit-scrollbar-track{background:#f0f0f0}
.reg-terms::-webkit-scrollbar-thumb{background:#bbb;border-radius:3px}

.reg-terms-table{
    width:100%;
    border-collapse:collapse;
    margin-bottom:12px;
    font-size:12.5px;
}
.reg-terms-table th{
    background:#f5f7f9;
    padding:10px 14px;
    border:1px solid #e0e0e0;
    font-weight:600;
    color:#3e5d71;
    text-align:left;
}
.reg-terms-table td{
    padding:10px 14px;
    border:1px solid #e0e0e0;
    color:#555;
    line-height:1.7;
}

/* 동의 체크 */
.reg-check{
    display:flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
    font-size:13.5px;
    color:#333;
    padding:12px 16px;
    background:#fafafa;
    border:1px solid #e8e8e4;
    border-radius:4px;
    margin-top:6px;
    transition:all .2s;
    user-select:none;
}
.reg-check:hover{
    border-color:#3e5d71;
    background:#f0f4f7;
}
.reg-check input{
    accent-color:#3e5d71;
    width:16px;
    height:16px;
    flex-shrink:0;
    cursor:pointer;
}

.reg-check-all{
    display:flex;
    align-items:center;
    gap:10px;
    cursor:pointer;
    font-size:14.5px;
    font-weight:700;
    color:#fff;
    padding:14px 18px;
    background:#3e5d71;
    border:1px solid #3e5d71;
    border-radius:4px;
    margin-top:20px;
    transition:all .2s;
    user-select:none;
}
.reg-check-all:hover{background:#2d4a5a}
.reg-check-all input{
    accent-color:#fff;
    width:18px;
    height:18px;
    flex-shrink:0;
    cursor:pointer;
}

.req{color:#e74c3c;font-size:11px;margin-left:4px}

/* 버튼 */
.reg-btns{
    display:flex;
    gap:10px;
    margin-top:32px;
}
.reg-btn-cancel{
    flex:1;
    padding:16px;
    background:#fff;
    color:#666;
    font-size:14px;
    font-weight:600;
    border:1px solid #ddd;
    border-radius:4px;
    cursor:pointer;
    text-align:center;
    text-decoration:none;
    display:block;
    transition:all .2s;
    box-sizing:border-box;
}
.reg-btn-cancel:hover{border-color:#999;color:#333}
.reg-btn-submit{
    flex:2;
    padding:16px;
    background:#3e5d71;
    color:#fff;
    font-size:14px;
    font-weight:700;
    border:none;
    border-radius:4px;
    cursor:pointer;
    transition:background .2s;
    letter-spacing:.1em;
}
.reg-btn-submit:hover{background:#2d4a5a}

/* 모바일 */
@media(max-width:768px){
    .reg-wrap{padding:120px 20px 60px}
    .reg-page-title{font-size:24px}
    .reg-btns{flex-direction:column}
    .reg-step-arrow{padding:0 8px}
    .reg-terms-table th,
    .reg-terms-table td{padding:8px 10px;font-size:11.5px}
}

/* ============================================================
   REGISTER FORM (정보입력)   [register_form.skin.php]
============================================================ */

/* === 헤더 강제 표시 (흰 배경 페이지에서도 보이게) === */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a {
    color: #222 !important;
}
#hd a:hover, #hd .gnb a:hover {
    color: #3e5d71 !important;
}
#hd .logo img {
    filter: none !important;
}

/* === 회원가입 폼 (일반 서브페이지 형식) === */
body{background:#fff;color:#222}

.reg-wrap{
    max-width:780px;
    margin:0 auto;
    padding:140px 20px 100px;
}

/* 페이지 타이틀 */
.reg-page-head{
    text-align:center;
    margin-bottom:40px;
    padding-bottom:24px;
    border-bottom:1px solid #e8e8e4;
}
.reg-page-en{
    font-family:'Cormorant Garamond',serif;
    font-size:13px;
    letter-spacing:.3em;
    color:#3e5d71;
    text-transform:uppercase;
    margin-bottom:8px;
}
.reg-page-title{
    font-family:'Pretendard',sans-serif;
    font-size:30px;
    font-weight:700;
    color:#111;
    letter-spacing:.02em;
}

/* 단계 표시 */
.reg-steps{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    margin-bottom:40px;
}
.reg-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
}
.reg-step-num{
    width:34px;height:34px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:12px;font-weight:700;
    background:#e8e8e4;color:#999;
    transition:all .2s;
}
.reg-step.done .reg-step-num{background:#3e5d71;color:#fff}
.reg-step.active .reg-step-num{background:#076bc1;color:#fff;box-shadow:0 4px 12px rgba(7,107,193,.25)}
.reg-step-label{font-size:11px;color:#999;white-space:nowrap;letter-spacing:.05em}
.reg-step.active .reg-step-label{color:#076bc1;font-weight:600}
.reg-step.done .reg-step-label{color:#3e5d71}
.reg-step-arrow{color:#ccc;font-size:14px;padding:0 14px;margin-bottom:18px}

/* 섹션 */
.reg-section{
    margin-bottom:36px;
    padding-bottom:32px;
    border-bottom:1px solid #f0f0f0;
}
.reg-section:last-of-type{
    border-bottom:none;
    margin-bottom:0;
    padding-bottom:0;
}
.reg-section-title{
    font-size: 16px;
    font-weight:700;
    color:#3e5d71;
    letter-spacing: 0em;
    text-transform:uppercase;
    margin-bottom:20px;
    padding-bottom:10px;
    border-bottom:2px solid #3e5d71;
    display:inline-block;
}

/* 행 */
.reg-row{
    display:grid;
    grid-template-columns:160px 1fr;
    gap:14px;
    align-items:start;
    margin-bottom:16px;
}
.reg-label{
    font-size:13px;
    font-weight:600;
    color:#333;
    padding-top:10px;
    line-height:1.4;
}
.reg-label em{color:#e74c3c;font-style:normal;margin-left:2px}
.reg-label small{
    display:block;
    font-size:11px;
    color:#aaa;
    font-weight:400;
    margin-top:3px;
}

/* 입력 */
.reg-input{
    width:100%;
    padding:11px 14px;
    border:1px solid #e0e0e0;
    border-radius:4px;
    font-size:14px;
    color:#333;
    outline:none;
    transition:all .2s;
    font-family:inherit;
    background:#fafafa;
}
.reg-input:focus{
    border-color:#3e5d71;
    background:#fff;
    box-shadow:0 0 0 3px rgba(62,93,113,.08);
}
.reg-input-wrap{display:flex;gap:8px}
.reg-input-wrap .reg-input{flex:1}

/* 🆕 2026-05-04 희망지역 구→동 한 줄 드롭다운 (item_form 패턴) */
.reg-area-row{
    display:flex !important;
    flex-wrap:nowrap !important;    /* 한 줄 강제 — 다음 줄로 안 넘김 */
    gap:8px;
    align-items:stretch;
    width:100%;
    box-sizing:border-box;
}
.reg-area-row > .reg-area-select,
.reg-area-row > .reg-area-input{
    flex:1 1 50% !important;        /* 균등 분할 강제 (구/동 50:50) */
    width:50% !important;           /* 다른 .reg-input 스타일 우선권 차단 */
    min-width:0 !important;         /* flex 아이템 줄어듦 허용 (overflow 방지) */
    box-sizing:border-box;
}
.reg-area-row .is-hidden{display:none !important}
.reg-area-hint{
    display:block;
    color:#888;
    font-size:11px;
    margin-top:4px;
}

/* 🆕 중복확인 메시지 (그누보드 jquery.register_form.js가 채움) */
.reg-msg{
    display:block;
    margin-top:6px;
    font-size:12px;
    color:#3e5d71;
    min-height:16px;
    padding-left:2px;
}
.reg-msg:empty{display:none}

/* 🆕 그누보드 표준 클래스 호환 - 기존 reg-input 스타일에 영향 없음 */
.frm_input.reg-input{padding:11px 14px}
.full_input.reg-input{width:100%}
.reg-btn-check{
    padding:11px 18px;
    background:#fff;
    border:1px solid #3e5d71;
    border-radius:4px;
    font-size:12px;
    font-weight:600;
    color:#3e5d71;
    cursor:pointer;
    white-space:nowrap;
    transition:all .2s;
}
.reg-btn-check:hover{background:#3e5d71;color:#fff}
textarea.reg-input{height:90px;resize:vertical;line-height:1.6}
select.reg-input{background:#fff;cursor:pointer}

/* 주소 */
.reg-addr{display:flex;flex-direction:column;gap:8px}
.reg-addr-zip{display:flex;gap:8px}
.reg-addr-zip .reg-input{width:130px}

/* 체크박스 그룹 */
.reg-check-group{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.reg-check-label{
    display:flex;
    align-items:center;
    gap:6px;
    cursor:pointer;
    font-size:13px;
    color:#444;
    padding:8px 14px;
    background:#f8f9fa;
    border:1px solid #e8e8e4;
    border-radius:4px;
    transition:all .2s;
    user-select:none;
}
.reg-check-label:hover{
    border-color:#3e5d71;
    background:#f0f4f7;
    color:#3e5d71;
}
.reg-check-label input{
    accent-color:#3e5d71;
    flex-shrink:0;
    cursor:pointer;
}
.reg-check-label:has(input:checked){
    border-color:#3e5d71;
    background:#3e5d71;
    color:#fff;
    font-weight:500;
}

/* 희망지역 */
.reg-region-wrap{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.reg-region-group{
    background:#fafbfc;
    border:1px solid #e8e8e4;
    border-radius:4px;
    padding:10px 14px;
}
.reg-region-group.reg-region-special{
    background:#fff8ec;
    border-color:#f0e0c0;
}
.reg-region-gu{
    font-size:12px;
    font-weight:700;
    color:#3e5d71;
    display:block;
    margin-bottom:8px;
    padding-bottom:6px;
    border-bottom:1px solid #e8e8e4;
    letter-spacing:.05em;
}
.reg-region-gu-label{
    margin-bottom:8px !important;
    padding:6px 12px !important;
    font-weight:600 !important;
    font-size:12.5px !important;
    background:#fff !important;
    border:1px dashed #b8c5d0 !important;
}
.reg-region-gu-label:has(input:checked){
    background:#3e5d71 !important;
    border:1px solid #3e5d71 !important;
    color:#fff !important;
}
.reg-region-dongs{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}
.reg-check-sm{padding:5px 10px;font-size:12px}

/* 날짜 */
.reg-date-wrap{display:flex;gap:8px}
.reg-select-sm{width:130px;flex:none}

/* 버튼 */
.reg-btns{
    display:flex;
    gap:10px;
    margin-top:40px;
}
.reg-btn-cancel{
    flex:1;
    padding:16px;
    background:#fff;
    color:#666;
    font-size:14px;
    font-weight:600;
    border:1px solid #ddd;
    border-radius:4px;
    cursor:pointer;
    text-align:center;
    text-decoration:none;
    display:block;
    transition:all .2s;
    box-sizing:border-box;
}
.reg-btn-cancel:hover{border-color:#999;color:#333}
.reg-btn-submit{
    flex:2;
    padding:16px;
    background:#3e5d71;
    color:#fff;
    font-size:14px;
    font-weight:700;
    border:none;
    border-radius:4px;
    cursor:pointer;
    transition:background .2s;
    letter-spacing:.1em;
}
.reg-btn-submit:hover{background:#2d4a5a}

/* 모바일 */
@media(max-width:768px){
    .reg-wrap{padding:120px 20px 60px}
    .reg-page-title{font-size:24px}
    .reg-row{grid-template-columns:1fr;gap:6px}
    .reg-label{padding-top:0}
    .reg-btns{flex-direction:column}
    .reg-step-arrow{padding:0 8px}
}

/* 🆕 캡차 컨테이너 */
.reg-captcha-wrap{
    background:#fafbfc;
    border:1px solid #e8e8e4;
    border-radius:4px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
}
/* 그누보드 캡차 내부 요소 스타일 통일 */
.reg-captcha-wrap img,
.reg-captcha-wrap canvas,
.reg-captcha-wrap iframe{
    border:1px solid #ddd;
    border-radius:3px;
    background:#fff;
    vertical-align:middle;
}
.reg-captcha-wrap input[type="text"]{
    padding:11px 14px;
    border:1px solid #e0e0e0;
    border-radius:4px;
    font-size:14px;
    background:#fff;
    outline:none;
    transition:all .2s;
    min-width:140px;
    flex:1;
}
.reg-captcha-wrap input[type="text"]:focus{
    border-color:#3e5d71;
    box-shadow:0 0 0 3px rgba(62,93,113,.08);
}
.reg-captcha-wrap button,
.reg-captcha-wrap a.captcha_reload,
.reg-captcha-wrap a.captcha_mp3{
    padding:8px 12px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:3px;
    color:#666;
    font-size:12px;
    cursor:pointer;
    text-decoration:none;
    transition:all .2s;
}
.reg-captcha-wrap button:hover,
.reg-captcha-wrap a.captcha_reload:hover{
    border-color:#3e5d71;
    color:#3e5d71;
}
/* reCAPTCHA 컨테이너 */
.reg-captcha-wrap .g-recaptcha{margin:0}

/* ============================================================
   REGISTER RESULT (가입완료)   [register_result.skin.php]
============================================================ */

/* === 헤더 강제 표시 (흰 배경 페이지에서도 보이게) === */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a {
    color: #222 !important;
}
#hd a:hover, #hd .gnb a:hover {
    color: #3e5d71 !important;
}
#hd .logo img {
    filter: none !important;
}

/* === 가입완료 페이지 (일반 서브페이지 형식) === */
body{background:#fff;color:#222}

.reg-wrap{
    max-width: 1200px;
    margin:0 auto;
    padding:140px 20px 100px;
}

/* 페이지 타이틀 */
.reg-page-head{
    text-align:center;
    margin-bottom:40px;
    padding-bottom:24px;
    border-bottom:1px solid #e8e8e4;
}
.reg-page-en{
    font-family:'Cormorant Garamond',serif;
    font-size:13px;
    letter-spacing:.3em;
    color:#3e5d71;
    text-transform:uppercase;
    margin-bottom:8px;
}
.reg-page-title{
    font-family:'Pretendard',sans-serif;
    font-size:30px;
    font-weight:700;
    color:#111;
    letter-spacing:.02em;
}

/* 단계 표시 */
.reg-steps{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    margin-bottom:40px;
}
.reg-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
}
.reg-step-num{
    width:34px;height:34px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:12px;font-weight:700;
    background:#e8e8e4;color:#999;
    transition:all .2s;
}
.reg-step.active .reg-step-num{background:#076bc1;color:#fff;box-shadow:0 4px 12px rgba(7,107,193,.25)}
.reg-step.done .reg-step-num{background:#3e5d71;color:#fff}
.reg-step-label{font-size:11px;color:#999;white-space:nowrap;letter-spacing:.05em}
.reg-step.active .reg-step-label{color:#076bc1;font-weight:600}
.reg-step.done .reg-step-label{color:#3e5d71}
.reg-step-arrow{color:#ccc;font-size:14px;padding:0 14px;margin-bottom:18px}

/* 결과 박스 */
.reg-result{
    text-align:center;
    padding:60px 40px;
    background:#fafbfc;
    border:1px solid #e8e8e4;
    border-radius:8px;
    margin-bottom:24px;
}
.reg-result-icon{
    width:80px;
    height:80px;
    margin:0 auto 24px;
    background:#3e5d71;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:40px;
    font-weight:300;
    box-shadow:0 8px 24px rgba(62,93,113,.25);
}
.reg-result-title{
    font-size:26px;
    font-weight:700;
    color:#111;
    line-height:1.4;
    margin-bottom:14px;
}
.reg-result-title strong{
    color:#3e5d71;
    font-weight:700;
}
.reg-result-sub{
    font-size:14px;
    color:#666;
    margin-bottom:32px;
}

/* 이메일 인증 박스 */
.reg-email-box{
    background:#fff;
    border:1px solid #e8e8e4;
    border-radius:6px;
    padding:24px 28px;
    margin:0 auto 28px;
    max-width:480px;
    text-align:left;
}
.reg-email-box > p{
    font-size:13px;
    color:#666;
    line-height:1.7;
    margin-bottom:16px;
    padding-bottom:16px;
    border-bottom:1px solid #f0f0f0;
}
.reg-email-info{
    display:flex;
    align-items:center;
    gap:14px;
    padding:8px 0;
}
.reg-email-label{
    font-size:12px;
    color:#888;
    width:60px;
    flex-shrink:0;
}
.reg-email-info strong{
    color:#3e5d71;
    font-size:14px;
    font-weight:600;
}

/* 안내 사항 */
.reg-notes{
    list-style:none;
    max-width:480px;
    margin:0 auto;
    padding:0;
    text-align:left;
}
.reg-notes li{
    font-size:12.5px;
    color:#777;
    padding:6px 0 6px 18px;
    position:relative;
    line-height:1.6;
}
.reg-notes li::before{
    content:'·';
    position:absolute;
    left:6px;
    color:#3e5d71;
    font-weight:bold;
    font-size:18px;
    line-height:1;
    top:8px;
}

/* 버튼 */
.reg-btn-wrap{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:32px;
}
.reg-btn-main{
    display:inline-block;
    padding:16px 56px;
    background:#3e5d71;
    color:#fff;
    font-size:14px;
    font-weight:700;
    border:none;
    border-radius:4px;
    cursor:pointer;
    text-align:center;
    text-decoration:none;
    transition:background .2s;
    letter-spacing:.1em;
}
.reg-btn-main:hover{background:#2d4a5a;color:#fff}
.reg-btn-sub{
    display:inline-block;
    padding:16px 36px;
    background:#fff;
    color:#666;
    font-size:14px;
    font-weight:600;
    border:1px solid #ddd;
    border-radius:4px;
    cursor:pointer;
    text-align:center;
    text-decoration:none;
    transition:all .2s;
}
.reg-btn-sub:hover{border-color:#3e5d71;color:#3e5d71}

/* 모바일 */
@media(max-width:768px){
    .reg-wrap{padding:120px 20px 60px}
    .reg-page-title{font-size:24px}
    .reg-result{padding:40px 24px}
    .reg-result-title{font-size:22px}
    .reg-result-icon{width:64px;height:64px;font-size:32px}
    .reg-step-arrow{padding:0 8px}
    .reg-btn-wrap{flex-direction:column}
    .reg-btn-main, .reg-btn-sub{width:100%;padding:14px}
    .reg-email-box{padding:18px}
}

/* ============================================================
   MEMBER CONFIRM   [member_confirm.skin.php]
============================================================ */

/* === 헤더 강제 표시 (흰 배경 페이지에서도 보이게) === */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a {
    color: #222 !important;
}
#hd a:hover, #hd .gnb a:hover {
    color: #3e5d71 !important;
}

/* === 공통 === */
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: 'Pretendard','Malgun Gothic',sans-serif;
    background: #fff;
    color: #222;
    -webkit-font-smoothing: antialiased;
}

/* === 비밀번호 재확인 === */
.confirm-wrap {
    min-height: 70vh;
    padding: 140px 20px 80px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.confirm-inner {
    width: 100%;
    max-width: 480px;
}

.confirm-page-head {
    text-align: center;
    margin-bottom: 40px;
}
.confirm-page-en {
    font-family: 'Cormorant Garamond', serif;
    font-size: 13px;
    font-weight: 400;
    color: #3e5d71;
    letter-spacing: 0.3em;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.confirm-page-title {
    font-size: 28px;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.02em;
}
.confirm-page-desc {
    font-size: 13px;
    color: #888;
    margin-top: 10px;
    line-height: 1.7;
}

/* === 회원 아이디 표시 === */
.confirm-id-box {
    background: #fafaf8;
    border: 1px solid #e8e8e4;
    padding: 16px 20px;
    margin-bottom: 20px;
    text-align: center;
}
.confirm-id-label {
    font-size: 12px;
    color: #999;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
    display: block;
}
.confirm-id-value {
    font-size: 18px;
    font-weight: 700;
    color: #3e5d71;
}

/* === 폼 === */
.confirm-form-group { margin-bottom: 16px; }
.confirm-form-group label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 8px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.confirm-form-group input {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 14px;
    transition: border 0.2s;
    font-family: inherit;
    background: #fff;
}
.confirm-form-group input:focus {
    outline: none;
    border-color: #3e5d71;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(62,93,113,0.1);
}

/* === 버튼 === */
.btn-confirm {
    width: 100%;
    padding: 15px;
    background: #3e5d71;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
    letter-spacing: 0.05em;
    margin-top: 8px;
}
.btn-confirm:hover {
    background: #2d4a5a;
}

.confirm-cancel {
    display: block;
    text-align: center;
    margin-top: 16px;
    font-size: 13px;
    color: #999;
    text-decoration: none;
}
.confirm-cancel:hover { color: #3e5d71; }

/* 경고 박스 (탈퇴 시) */
.confirm-warn {
    background: #fff5f5;
    border-left: 3px solid #c62828;
    padding: 14px 16px;
    margin-bottom: 20px;
    font-size: 13px;
    color: #c62828;
    line-height: 1.7;
}


/* ============================================================
   PASSWORD (게시판 비밀글)   [password.skin.php]
============================================================ */

#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a { color: #222 !important; }
#hd a:hover, #hd .gnb a:hover { color: #3e5d71 !important; }

* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: 'Pretendard','Malgun Gothic',sans-serif;
    background: #fff;
    color: #222;
    -webkit-font-smoothing: antialiased;
}

.pw-wrap {
    min-height: 70vh;
    padding: 140px 20px 80px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.pw-inner { width: 100%; max-width: 480px; }

.pw-page-head { text-align: center; margin-bottom: 40px; }
.pw-page-en {
    font-family: 'Cormorant Garamond', serif;
    font-size: 13px;
    color: #3e5d71;
    letter-spacing: 0.3em;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.pw-page-title {
    font-size: 24px;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.02em;
}

.pw-notice {
    background: #fafaf8;
    border-left: 3px solid #3e5d71;
    padding: 16px 20px;
    margin-bottom: 24px;
    font-size: 13px;
    color: #555;
    line-height: 1.8;
}
.pw-notice strong {
    color: #3e5d71;
    display: block;
    font-weight: 700;
    margin-bottom: 4px;
}

.pw-form-group { margin-bottom: 16px; }
.pw-form-group label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 8px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.pw-form-group input {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 14px;
    background: #fff;
}
.pw-form-group input:focus {
    outline: none;
    border-color: #3e5d71;
    box-shadow: 0 0 0 3px rgba(62,93,113,0.1);
}

.btn-pw {
    width: 100%;
    padding: 15px;
    background: #3e5d71;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
    letter-spacing: 0.05em;
    margin-top: 8px;
}
.btn-pw:hover { background: #2d4a5a; }

/* ============================================================
   PASSWORD LOST   [password_lost.skin.php]
============================================================ */

/* 헤더 강제 표시 */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a { color: #222 !important; }
#hd a:hover, #hd .gnb a:hover { color: #3e5d71 !important; }

* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: 'Pretendard','Malgun Gothic',sans-serif;
    background: #fff;
    color: #222;
    -webkit-font-smoothing: antialiased;
}

.find-wrap {
    min-height: 70vh;
    padding: 140px 20px 80px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.find-inner {
    width: 100%;
    max-width: 480px;
}

.find-page-head {
    text-align: center;
    margin-bottom: 40px;
}
.find-page-en {
    font-family: 'Cormorant Garamond', serif;
    font-size: 13px;
    font-weight: 400;
    color: #3e5d71;
    letter-spacing: 0.3em;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.find-page-title {
    font-size: 28px;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.02em;
}
.find-page-desc {
    font-size: 13px;
    color: #888;
    margin-top: 10px;
    line-height: 1.7;
}

/* 안내 박스 */
.find-info-box {
    background: #fafaf8;
    border-left: 3px solid #3e5d71;
    padding: 16px 20px;
    margin-bottom: 24px;
    font-size: 13px;
    color: #555;
    line-height: 1.8;
}

/* 폼 */
.find-form-group { margin-bottom: 16px; }
.find-form-group label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 8px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.find-form-group input {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 14px;
    transition: border 0.2s;
    font-family: inherit;
    background: #fff;
}
.find-form-group input:focus {
    outline: none;
    border-color: #3e5d71;
    box-shadow: 0 0 0 3px rgba(62,93,113,0.1);
}

/* 캡차 영역 */
.find-captcha {
    margin: 16px 0;
    padding: 14px;
    background: #fafaf8;
    border: 1px solid #e8e8e4;
    border-radius: 4px;
}

/* 버튼 */
.btn-find {
    width: 100%;
    padding: 15px;
    background: #3e5d71;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
    letter-spacing: 0.05em;
    margin-top: 8px;
}
.btn-find:hover { background: #2d4a5a; }

.find-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 28px 0 16px;
    color: #ccc;
    font-size: 11px;
    letter-spacing: 0.1em;
}
.find-divider::before,
.find-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #eee;
}

.find-alt-btns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.find-alt-btn {
    flex: 1;
    min-width: 140px;
    padding: 12px;
    background: #fff;
    color: #3e5d71;
    border: 1px solid #d0d8dd;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    text-align: center;
}
.find-alt-btn:hover {
    background: #3e5d71;
    color: #fff;
    border-color: #3e5d71;
}

.find-bottom {
    text-align: center;
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid #eee;
    font-size: 13px;
}
.find-bottom a {
    color: #888;
    text-decoration: none;
    margin: 0 8px;
}
.find-bottom a:hover { color: #3e5d71; }

/* ============================================================
   PASSWORD RESET   [password_reset.skin.php]
============================================================ */

#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a { color: #222 !important; }
#hd a:hover, #hd .gnb a:hover { color: #3e5d71 !important; }

* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: 'Pretendard','Malgun Gothic',sans-serif;
    background: #fff;
    color: #222;
    -webkit-font-smoothing: antialiased;
}

.reset-wrap {
    min-height: 70vh;
    padding: 140px 20px 80px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.reset-inner { width: 100%; max-width: 480px; }

.reset-page-head { text-align: center; margin-bottom: 40px; }
.reset-page-en {
    font-family: 'Cormorant Garamond', serif;
    font-size: 13px;
    color: #3e5d71;
    letter-spacing: 0.3em;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.reset-page-title {
    font-size: 28px;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.02em;
}
.reset-page-desc {
    font-size: 13px;
    color: #888;
    margin-top: 10px;
    line-height: 1.7;
}

.reset-id-box {
    background: #fafaf8;
    border: 1px solid #e8e8e4;
    padding: 16px 20px;
    margin-bottom: 24px;
    text-align: center;
}
.reset-id-label {
    font-size: 12px;
    color: #999;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
    display: block;
}
.reset-id-value {
    font-size: 18px;
    font-weight: 700;
    color: #3e5d71;
}

.reset-form-group { margin-bottom: 16px; }
.reset-form-group label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 8px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.reset-form-group input {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 14px;
    transition: border 0.2s;
    background: #fff;
}
.reset-form-group input:focus {
    outline: none;
    border-color: #3e5d71;
    box-shadow: 0 0 0 3px rgba(62,93,113,0.1);
}

.reset-hint {
    font-size: 12px;
    color: #999;
    margin-top: 4px;
    padding-left: 2px;
}

.btn-reset {
    width: 100%;
    padding: 15px;
    background: #3e5d71;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
    letter-spacing: 0.05em;
    margin-top: 12px;
}
.btn-reset:hover { background: #2d4a5a; }


/* ============================================================
   아래 섹션: register_form.skin.php 에서 이동됨 (2026-04-23)
   정보입력 폼 전용 스타일 (헤더 강제 표시 + reg-input 등)
   ============================================================ */
/* === 헤더 강제 표시 (흰 배경 페이지에서도 보이게) === */
#hd, #hd.sc {
    background: #fff !important;
    border-bottom: 1px solid #e8e8e4 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
#hd a, #hd .gnb a, #hd .lnb a, #hd .logo a {
    color: #222 !important;
}
#hd a:hover, #hd .gnb a:hover {
    color: #3e5d71 !important;
}
#hd .logo img {
    filter: none !important;
}

/* === 회원가입 폼 (일반 서브페이지 형식) === */
body{background:#fff;color:#222}

.reg-wrap{
    max-width: 1000px;
    margin:0 auto;
    padding:140px 20px 100px;
}

/* 페이지 타이틀 */
.reg-page-head{
    text-align:center;
    margin-bottom:40px;
    padding-bottom:24px;
    border-bottom:1px solid #e8e8e4;
}
.reg-page-en{
    font-family:'Cormorant Garamond',serif;
    font-size:13px;
    letter-spacing:.3em;
    color:#3e5d71;
    text-transform:uppercase;
    margin-bottom:8px;
}
.reg-page-title{
    font-family:'Pretendard',sans-serif;
    font-size:30px;
    font-weight:700;
    color:#111;
    letter-spacing:.02em;
}

/* 단계 표시 */
.reg-steps{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    margin-bottom:40px;
}
.reg-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
}
.reg-step-num{
    width: 60px;
    height: 60px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size: 18px;
    font-weight:700;
    background:#e8e8e4;
    color:#999;
    transition:all .2s;
}
.reg-step.done .reg-step-num{background:#3e5d71;color:#fff}
.reg-step.active .reg-step-num{background:#076bc1;color:#fff;box-shadow:0 4px 12px rgba(7,107,193,.25)}
.reg-step-label{font-size:11px;color:#999;white-space:nowrap;letter-spacing:.05em}
.reg-step.active .reg-step-label{color:#076bc1;font-weight:600}
.reg-step.done .reg-step-label{color:#3e5d71}
.reg-step-arrow{color:#ccc;font-size:14px;padding:0 14px;margin-bottom:18px}

/* 섹션 */
.reg-section{
    margin-bottom:36px;
    padding-bottom:32px;
    border-bottom:1px solid #f0f0f0;
}
.reg-section:last-of-type{
    border-bottom:none;
    margin-bottom:0;
    padding-bottom:0;
}
.reg-section-title{
    font-size: 16px;
    font-weight:700;
    color:#3e5d71;
    letter-spacing: 0em;
    text-transform:uppercase;
    margin-bottom:20px;
    padding-bottom:10px;
    border-bottom:2px solid #3e5d71;
    display:inline-block;
}

/* 행 */
.reg-row{
    display:grid;
    grid-template-columns:160px 1fr;
    gap:14px;
    align-items:start;
    margin-bottom:16px;
}
.reg-label{
    font-size: 16px;
    font-weight:600;
    color:#333;
    padding-top:10px;
    line-height:1.4;
}
.reg-label em{color:#e74c3c;font-style:normal;margin-left:2px}
.reg-label small{
    display:block;
    font-size:11px;
    color:#aaa;
    font-weight:400;
    margin-top:3px;
}

/* 입력 */
.reg-input{
    width:100%;
    padding:11px 14px;
    border:1px solid #e0e0e0;
    border-radius:4px;
    font-size:14px;
    color:#333;
    outline:none;
    transition:all .2s;
    font-family:inherit;
    background:#fafafa;
}
.reg-input:focus{
    border-color:#3e5d71;
    background:#fff;
    box-shadow:0 0 0 3px rgba(62,93,113,.08);
}
.reg-input-wrap{display:flex;gap:8px}
.reg-input-wrap .reg-input{flex:1}

/* 🆕 중복확인 메시지 (그누보드 jquery.register_form.js가 채움) */
.reg-msg{
    display:block;
    margin-top:6px;
    font-size:12px;
    color:#3e5d71;
    min-height:16px;
    padding-left:2px;
}
.reg-msg:empty{display:none}

/* 🆕 그누보드 표준 클래스 호환 - 기존 reg-input 스타일에 영향 없음 */
.frm_input.reg-input{padding:11px 14px}
.full_input.reg-input{width:100%}
.reg-btn-check{
    padding:11px 18px;
    background:#fff;
    border:1px solid #3e5d71;
    border-radius:4px;
    font-size:12px;
    font-weight:600;
    color:#3e5d71;
    cursor:pointer;
    white-space:nowrap;
    transition:all .2s;
}
.reg-btn-check:hover{background:#3e5d71;color:#fff}
textarea.reg-input{height:90px;resize:vertical;line-height:1.6}
select.reg-input{background:#fff;cursor:pointer}

/* 주소 */
.reg-addr{display:flex;flex-direction:column;gap:8px}
.reg-addr-zip{display:flex;gap:8px}
.reg-addr-zip .reg-input{width:130px}

/* 체크박스 그룹 */
.reg-check-group{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.reg-check-label{
    display:flex;
    align-items:center;
    gap:6px;
    cursor:pointer;
    font-size:13px;
    color:#444;
    padding:8px 14px;
    background:#f8f9fa;
    border:1px solid #e8e8e4;
    border-radius:4px;
    transition:all .2s;
    user-select:none;
}
.reg-check-label:hover{
    border-color:#3e5d71;
    background:#f0f4f7;
    color:#3e5d71;
}
.reg-check-label input{
    accent-color:#3e5d71;
    flex-shrink:0;
    cursor:pointer;
}
.reg-check-label:has(input:checked){
    border-color:#3e5d71;
    background:#3e5d71;
    color:#fff;
    font-weight:500;
}

/* 희망지역 */
.reg-region-wrap{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.reg-region-group{
    background:#fafbfc;
    border:1px solid #e8e8e4;
    border-radius:4px;
    padding:10px 14px;
}
.reg-region-group.reg-region-special{
    background:#fff8ec;
    border-color:#f0e0c0;
}
.reg-region-gu{
    font-size:12px;
    font-weight:700;
    color:#3e5d71;
    display:block;
    margin-bottom:8px;
    padding-bottom:6px;
    border-bottom:1px solid #e8e8e4;
    letter-spacing:.05em;
}
.reg-region-gu-label{
    margin-bottom:8px !important;
    padding:6px 12px !important;
    font-weight:600 !important;
    font-size:12.5px !important;
    background:#fff !important;
    border:1px dashed #b8c5d0 !important;
}
.reg-region-gu-label:has(input:checked){
    background:#3e5d71 !important;
    border:1px solid #3e5d71 !important;
    color:#fff !important;
}
.reg-region-dongs{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}
.reg-check-sm{padding:5px 10px;font-size:12px}

/* 날짜 */
.reg-date-wrap{display:flex;gap:8px}
.reg-select-sm{width:130px;flex:none}

/* 버튼 */
.reg-btns{
    display:flex;
    gap:10px;
    margin-top:40px;
}
.reg-btn-cancel{
    flex:1;
    padding:16px;
    background:#fff;
    color:#666;
    font-size:14px;
    font-weight:600;
    border:1px solid #ddd;
    border-radius:4px;
    cursor:pointer;
    text-align:center;
    text-decoration:none;
    display:block;
    transition:all .2s;
    box-sizing:border-box;
}
.reg-btn-cancel:hover{border-color:#999;color:#333}
.reg-btn-submit{
    flex:2;
    padding:16px;
    background:#3e5d71;
    color:#fff;
    font-size:14px;
    font-weight:700;
    border:none;
    border-radius:4px;
    cursor:pointer;
    transition:background .2s;
    letter-spacing:.1em;
}
.reg-btn-submit:hover{background:#2d4a5a}

/* 모바일 */
@media(max-width:768px){
    .reg-wrap{padding:120px 20px 60px}
    .reg-page-title{font-size:24px}
    .reg-row{grid-template-columns:1fr;gap:6px}
    .reg-label{padding-top:0}
    .reg-btns{flex-direction:column}
    .reg-step-arrow{padding:0 8px}
}

/* 🆕 캡차 컨테이너 */
.reg-captcha-wrap{
    background:#fafbfc;
    border:1px solid #e8e8e4;
    border-radius:4px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
}
/* 그누보드 캡차 내부 요소 스타일 통일 */
.reg-captcha-wrap img,
.reg-captcha-wrap canvas,
.reg-captcha-wrap iframe{
    border:1px solid #ddd;
    border-radius:3px;
    background:#fff;
    vertical-align:middle;
}
.reg-captcha-wrap input[type="text"]{
    padding:11px 14px;
    border:1px solid #e0e0e0;
    border-radius:4px;
    font-size:14px;
    background:#fff;
    outline:none;
    transition:all .2s;
    min-width:140px;
    flex:1;
}
.reg-captcha-wrap input[type="text"]:focus{
    border-color:#3e5d71;
    box-shadow:0 0 0 3px rgba(62,93,113,.08);
}
.reg-captcha-wrap button,
.reg-captcha-wrap a.captcha_reload,
.reg-captcha-wrap a.captcha_mp3{
    padding:8px 12px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:3px;
    color:#666;
    font-size:12px;
    cursor:pointer;
    text-decoration:none;
    transition:all .2s;
}
.reg-captcha-wrap button:hover,
.reg-captcha-wrap a.captcha_reload:hover{
    border-color:#3e5d71;
    color:#3e5d71;
}
/* reCAPTCHA 컨테이너 */
.reg-captcha-wrap .g-recaptcha{margin:0}


/* ============================================================
   아래 섹션: member_confirm.skin.php 에서 이동됨 (2026-04-23)
   탈퇴 모드 버튼 오버라이드 (body 에 is-leave 클래스 있을 때만)
   ============================================================ */
body.is-leave .btn-confirm { background: #c62828; }
body.is-leave .btn-confirm:hover { background: #a51e1e; }
