@charset "utf-8";

/* ══════════════════════════════════════════════════════
   컬러 팔레트 (레퍼런스 이미지 기반 — 인디고 계열)
   --rg-bg       : #f8fafc  (따뜻한 아이보리 배경)
   --rg-card     : #FFFFFF  (카드 배경)
   --rg-gold     : #4f46e5  (인디고 포인트)
   --rg-gold-dk  : #312e81  (짙은 구리)
   --rg-gold-lt  : #a5b4fc  (밝은 라이트 인디고)
   --rg-text-1   : #0f172a  (주 텍스트)
   --rg-text-2   : #475569  (보조 텍스트)
   --rg-line     : #e2e8f0  (구분선)
   --rg-input-bg : #f8fafc  (입력 배경)
══════════════════════════════════════════════════════ */

/* ── 전체 래퍼 ─────────────────────────────────────── */
.register {
	max-width: 680px;
	width: 100%;
	font-family: inherit;
}

/* ── 페이지 타이틀 ─────────────────────────────────── */
.register-title {
	text-align: center;
	padding: 32px 0 24px;
}
.register-title h2 {
	font-size: 1.35rem;
	font-weight: 700;
	color: #0f172a;
	margin-bottom: 6px;
}
.register-title p {
	font-size: .83rem;
	color: #64748b;
}

/* ── 섹션 카드 ─────────────────────────────────────── */
.rg-section {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	margin-bottom: 14px;
	overflow: hidden;
}

/* 섹션 헤더 */
.rg-section-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 22px 14px;
	background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%);
	border-bottom: 1px solid #e2e8f0;
}
.rg-section-num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px; height: 28px;
	border-radius: 50%;
	background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%);
	color: #fff;
	font-size: .75rem;
	font-weight: 800;
	flex-shrink: 0;
}
.rg-section-head h5 {
	margin: 0;
	font-size: .9rem;
	font-weight: 700;
	color: #0f172a;
}

/* 섹션 바디 */
.rg-section-body {
	padding: 20px 22px;
}

/* ── 폼 행(row) ────────────────────────────────────── */
.rg-row {
	display: grid;
	grid-template-columns: 100px 1fr;
	align-items: start;
	gap: 8px 12px;
	margin-bottom: 14px;
}
.rg-row:last-child { margin-bottom: 0; }
.rg-row.rg-row--half {
	grid-template-columns: 100px 1fr 100px 1fr;
}

/* 라벨 */
.rg-label {
	padding-top: 9px;
	font-size: .78rem;
	font-weight: 600;
	color: #475569;
	line-height: 1.4;
}
.rg-label .req {
	display: inline-block;
	width: 5px; height: 5px;
	background: #4f46e5;
	border-radius: 50%;
	vertical-align: middle;
	margin-left: 2px;
	margin-bottom: 3px;
}

/* ── 입력 필드 ─────────────────────────────────────── */
.register .form-control,
.register input[type="text"],
.register input[type="password"],
.register input[type="email"],
.register textarea {
	height: 40px;
	padding: 0 12px;
	background: #f8fafc;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	color: #0f172a;
	font-size: .83rem;
	outline: none;
	transition: border-color .15s, background .15s;
}
.register textarea {
	height: auto;
	padding: 10px 12px;
	resize: vertical;
}
.register .form-control:focus,
.register input[type="text"]:focus,
.register input[type="password"]:focus,
.register input[type="email"]:focus,
.register textarea:focus {
	border-color: #4f46e5;
	background: #fff;
}
.register .form-control.required:not(:placeholder-shown):valid {
	border-color: #7BA87B;
}

/* ── 입력 힌트 텍스트 ──────────────────────────────── */
.rg-hint {
	font-size: .74rem;
	color: #64748b;
	padding-top: 4px;
	line-height: 1.5;
}
.register #msg_mb_id,
.register #msg_mb_nick { font-size: .74rem; margin-top: 3px; }

/* ── 주소 그룹 ─────────────────────────────────────── */
.register .input-group .form-control { border-radius: 8px 0 0 8px; }
.register .input-group-append .btn { border-radius: 0 8px 8px 0; }
.register .input-group-text {
	background: #eef2ff;
	border: 1px solid #cbd5e1;
	color: #475569;
	font-size: .78rem;
	border-radius: 8px 0 0 8px;
}

/* ── 체크박스 ──────────────────────────────────────── */
.register .custom-control-label {
	font-size: .82rem;
	color: #334155;
	cursor: pointer;
	padding-top: 1px;
}
.register .custom-control-label::before {
	border-color: #cbd5e1;
	background: #f8fafc;
	border-radius: 5px;
}
.register .custom-control-input:checked ~ .custom-control-label::before {
	background: linear-gradient(135deg, #4f46e5, #312e81);
	border-color: #4f46e5;
}

/* ── 본인확인 버튼 ─────────────────────────────────── */
.register .btn-primary {
	background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%);
	border: none;
	border-radius: 8px;
	color: #fff;
	font-size: .82rem;
	font-weight: 700;
	padding: 0 18px;
	height: 40px;
	transition: all .15s;
}
.register .btn-primary:hover {
	background: linear-gradient(135deg, #6366f1 0%, #4338ca 100%);
	color: #fff;
}
.register #msg_certify {
	font-size: .78rem;
	color: #6A9A6A;
	margin-top: 6px;
}

/* ── 캡차 ──────────────────────────────────────────── */
.register #captcha_area,
.register .captcha_area {
	background: #f8fafc;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	padding: 14px;
}

/* ── 하단 버튼 ─────────────────────────────────────── */
.rg-actions {
	display: flex;
	gap: 10px;
	margin-top: 20px;
	margin-bottom: 30px;
}
.rg-actions .btn-submit {
	flex: 2;
	height: 50px;
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h));
	border: none;
	border-radius: 12px;
	color: #fff;
	font-size: .95rem;
	font-weight: 800;
	letter-spacing: .04em;
	cursor: pointer;
	transition: transform .15s ease, filter .15s ease;
}
.rg-actions .btn-submit:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
}
.rg-actions .btn-submit:disabled { opacity: .6; cursor: not-allowed; transform: none; }
.rg-actions .btn-cancel {
	flex: 1;
	height: 50px;
	background: #eef2ff;
	border: 1px solid #cbd5e1;
	border-radius: 12px;
	color: #475569;
	font-size: .9rem;
	font-weight: 700;
	cursor: pointer;
	transition: all .15s;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
.rg-actions .btn-cancel:hover { background: #e2e8f0; color: #1e1b4b; }

/* ── 하단 링크 ─────────────────────────────────────── */
.rg-footer-links {
	text-align: center;
	font-size: .78rem;
	color: #64748b;
	padding-bottom: 20px;
}
.rg-footer-links a { color: #4f46e5; text-decoration: none; font-weight: 600; }
.rg-footer-links a:hover { color: #312e81; }
.rg-footer-links span { margin: 0 8px; color: #cbd5e1; }

/* ── 기존 list-group 오버라이드 (원본 PHP 유지용) ───── */
.register .list-group { border: none; background: transparent; }
.register .list-group-item {
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	border-radius: 0 !important;
}
.register .form-group { margin-bottom: 0; }

/* ══════════════════════════════════════════════════════
   Bootstrap primary 색상 전역 오버라이드
   (이 스킨의 style.css 는 회원 스킨에서만 로드되므로
    Bootstrap primary 를 브라운/구리 계열로 전면 교체)
══════════════════════════════════════════════════════ */

/* bg-primary 배경 오버라이드 */
.bg-primary {
    background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%) !important;
    color: #eef2ff !important;
}
/* border-primary */
.border-primary { border-color: #4f46e5 !important; }
/* text-primary */
.text-primary { color: #4f46e5 !important; }

/* btn-primary (Bootstrap .btn.btn-primary 등) */
.btn.btn-primary,
button.btn-primary,
a.btn.btn-primary,
.btn-primary {
    background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%) !important;
    border-color: transparent !important;
    color: #fff !important;
    font-weight: 700;
    transition: all .15s !important;
}
.btn.btn-primary:hover,
button.btn-primary:hover,
a.btn.btn-primary:hover {
    background: linear-gradient(135deg, #6366f1 0%, #4338ca 100%) !important;
    color: #fff !important;
}

/* ── 팝업 공통 topNav 헤더 ──────────────────────────── */
#topNav {
    background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%) !important;
}
#topNav h5 {
    color: #eef2ff;
    font-size: .95rem;
    font-weight: 700;
    margin: 0;
}
#topNav .close,
#topNav .text-white {
    color: rgba(245,234,216,.8) !important;
    opacity: 1;
}
#topNav .close:hover { color: #eef2ff !important; }

/* ── 팝업 구분선 (bg-primary 4px bar) ─────────────── */
.w-100.bg-primary[style*="height:4px"],
.w-100.mb-0.bg-primary {
    background: linear-gradient(90deg, #4f46e5 0%, #312e81 60%, #1e1b4b 100%) !important;
    height: 3px !important;
}

/* ── 팝업 list-group 아이템 ─────────────────────────── */
#profile .list-group-item,
#scrap .list-group-item,
#point .list-group-item,
#memo_list .list-group-item,
#memo_view .list-group-item,
#memo_write .list-group-item,
#scrap_do .list-group-item,
#fmail .list-group-item,
#mb_confirm .list-group-item {
    border-color: #e2e8f0 !important;
    background: #fff;
    color: #0f172a;
}
#profile .list-group-item b,
#scrap .list-group-item b,
#point .list-group-item b,
#memo_list .list-group-item b {
    color: #334155;
}
/* bg-light 행 (포인트 소계, 보관일수 등) */
#point .list-group-item.bg-light,
#memo_list .bg-light,
#fmail .bg-light {
    background: #f8fafc !important;
    color: #475569 !important;
}

/* ── 팝업 내 form-control ──────────────────────────── */
#profile .form-control,
#scrap .form-control,
#point .form-control,
#memo_list .form-control,
#memo_view .form-control,
#memo_write .form-control,
#scrap_do .form-control,
#fmail .form-control,
#mb_confirm .form-control {
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    color: #0f172a;
    border-radius: 8px;
}
#memo_write .form-control:focus,
#scrap_do .form-control:focus,
#fmail .form-control:focus,
#mb_confirm .form-control:focus {
    border-color: #4f46e5;
    background: #fff;
    outline: none;
}

/* ── 팝업 input-group 텍스트 ───────────────────────── */
#mb_confirm .input-group-text,
#memo_write .input-group-text,
#fmail .input-group-text,
#scrap_do .input-group-text {
    background: #eef2ff;
    border-color: #cbd5e1;
    color: #475569;
    font-size: .82rem;
}

/* ── sly-tab 탭 내비 ───────────────────────────────── */
.sly-tab .sly-list { border-color: #cbd5e1 !important; }
.sly-tab .sly-list li a {
    color: #475569 !important;
    font-size: .82rem;
}
.sly-tab .sly-list li.active a,
.sly-tab .sly-list li.active > a {
    color: #1e1b4b !important;
    font-weight: 700;
    border-bottom: 2px solid #4f46e5;
}
.sly-tab .sly-list li a:hover { color: #4f46e5 !important; }

/* ── 페이지네이션 ───────────────────────────────────── */
.pagination .page-item.active .page-link {
    background: linear-gradient(135deg, #4f46e5, #312e81) !important;
    border-color: transparent !important;
    color: #fff !important;
}
.pagination .page-link {
    color: #312e81 !important;
    border-color: #cbd5e1 !important;
}
.pagination .page-link:hover {
    background: #eef2ff !important;
    color: #1e1b4b !important;
}

/* ── 프로필 팝업 ─────────────────────────────────────── */
#profile .rounded-circle {
    border: 3px solid #cbd5e1;
}

/* ── 쪽지/스크랩 링크 색상 ──────────────────────────── */
#memo_list a, #memo_view a, #scrap a {
    color: #475569;
}
#memo_list a:hover, #memo_view a:hover, #scrap a:hover {
    color: #4f46e5;
}
/* 읽지 않은 쪽지 강조 */
#memo_list .orangered { color: #4f46e5 !important; font-weight: 700; }

/* ── 메일보내기 라디오 ──────────────────────────────── */
#fmail .custom-control-input:checked ~ .custom-control-label::before {
    background: linear-gradient(135deg, #4f46e5, #312e81);
    border-color: #4f46e5;
}

/* ── 스크랩 팝업 ─────────────────────────────────────── */
#scrap_do strong { color: #0f172a; font-size: .9rem; }

/* ── 홈으로 돌아가기 공통 링크 ───────────────────────── */
#profile a[href], #scrap a[href], #point a[href],
#memo_list a[href], #memo_view a[href], #memo_write a[href],
#scrap_do a[href], #fmail a[href],
#mb_confirm a[href] {
    color: #64748b;
}
.text-center > a[href*="G5_URL"],
p.text-center > a {
    color: #64748b !important;
    font-size: .8rem;
    text-decoration: none;
}
.text-center > a[href*="G5_URL"]:hover,
p.text-center > a:hover { color: #4f46e5 !important; }

/* ── 쪽지 뷰 버튼 그룹 ──────────────────────────────── */
#memo_view .btn-group .btn.btn-primary {
    border-radius: 6px !important;
    margin-right: 4px;
    padding: 6px 14px;
    font-size: .82rem;
}

/* ── btn_b01 (이전/다음) ─────────────────────────────── */
.btn_b01 {
    background: #eef2ff;
    border: 1px solid #cbd5e1;
    color: #475569;
    border-radius: 8px;
    padding: 5px 12px;
    font-size: .82rem;
    text-decoration: none;
    transition: all .15s;
}
.btn_b01:hover { background: #e2e8f0; color: #1e1b4b; }

/* ══════════════════════════════════════════════════════
   로그인 페이지 (#mb_login)
══════════════════════════════════════════════════════ */
#mb_login {
    max-width: 360px;
    padding: 0 12px;
}
#mb_login .login-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 14px;
}
#mb_login .login-card-head {
    background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%);
    padding: 28px 24px 24px;
    text-align: center;
}
#mb_login .login-card-head .login-logo-text {
    font-size: 1.3rem;
    font-weight: 800;
    color: #eef2ff;
    letter-spacing: .06em;
    text-transform: uppercase;
}
#mb_login .login-card-head .login-logo-sub {
    font-size: .74rem;
    color: rgba(79,70,229,.85);
    margin-top: 4px;
}
#mb_login .login-card-body { padding: 22px 24px; }

#mb_login .login-auto-row {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
}
/* 입력 그룹 */
#mb_login .input-group { margin-bottom: 10px; }
#mb_login .input-group-text {
    background: #eef2ff;
    border: 1px solid #cbd5e1;
    border-right: none;
    color: #9A7060;
    border-radius: 8px 0 0 8px;
    width: 42px;
    justify-content: center;
}
#mb_login .form-control {
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-left: none;
    border-radius: 0 8px 8px 0;
    color: #0f172a;
    font-size: .84rem;
    height: 42px;
    outline: none;
    transition: border-color .15s;
}
#mb_login .form-control:focus {
    border-color: #4f46e5;
    background: #fff;
}
/* 로그인 버튼 */
#mb_login .btn-login {
    display: block;
    width: 100%;
    height: 46px;
    margin-top: 14px;
    background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%);
    border: none;
    border-radius: 10px;
    color: #fff;
    font-size: .9rem;
    font-weight: 800;
    letter-spacing: .05em;
    cursor: pointer;
    transition: all .15s;
}
#mb_login .btn-login:hover {
    background: linear-gradient(135deg, #6366f1 0%, #4338ca 100%);
    transform: translateY(-1px);
}
/* 하단 링크 */
#mb_login .login-links {
    display: flex;
    justify-content: space-between;
    margin-top: 14px;
    font-size: .78rem;
}
#mb_login .login-links a { color: #4f46e5; text-decoration: none; font-weight: 600; }
#mb_login .login-links a:hover { color: #312e81; }
#mb_login .login-home-link {
    text-align: center;
    margin-top: 12px;
    font-size: .78rem;
}
#mb_login .login-home-link a { color: #64748b; text-decoration: none; }
#mb_login .login-home-link a:hover { color: #4f46e5; }
/* 자동로그인 스위치 */
#mb_login .custom-control-label {
    font-size: .8rem;
    color: #475569;
    cursor: pointer;
}
#mb_login .custom-control-input:checked ~ .custom-control-label::before {
    background: linear-gradient(135deg, #4f46e5, #312e81);
    border-color: #4f46e5;
}

/* ══════════════════════════════════════════════════════
   회원정보 찾기 (#find_info)
══════════════════════════════════════════════════════ */
#find_info {
    max-width: 560px;
    margin: 0 auto;
    padding: 0 12px;
}
#find_info .fi-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 14px;
}
#find_info .fi-card-head {
    display: flex; align-items: center; gap: 12px;
    padding: 16px 22px 14px;
    background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%);
    border-bottom: 1px solid #e2e8f0;
}
#find_info .fi-card-num {
    display: flex; align-items: center; justify-content: center;
    width: 28px; height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #4f46e5, #312e81);
    color: #fff;
    font-size: .78rem; font-weight: 800;
    flex-shrink: 0;
}
#find_info .fi-card-head h5 {
    margin: 0; font-size: .9rem; font-weight: 700; color: #0f172a;
}
#find_info .fi-card-body { padding: 20px 22px; }
#find_info p { font-size: .83rem; color: #475569; line-height: 1.6; margin-bottom: 12px; }
#find_info .input-group-text {
    background: #eef2ff;
    border: 1px solid #cbd5e1; border-right: none;
    color: #9A7060; font-size: .82rem;
    border-radius: 8px 0 0 8px;
}
#find_info .form-control {
    background: #f8fafc;
    border: 1px solid #cbd5e1; border-left: none;
    border-radius: 0 8px 8px 0;
    color: #0f172a; font-size: .83rem; height: 42px;
    transition: border-color .15s;
}
#find_info .form-control:focus {
    border-color: #4f46e5;
    background: #fff;
}
#find_info .btn-primary,
#find_info .btn-send {
    background: linear-gradient(135deg, #4f46e5, #312e81) !important;
    border: none !important; border-radius: 0 8px 8px 0;
    color: #fff !important; font-size: .82rem; font-weight: 700;
    padding: 0 16px; height: 42px;
    transition: all .15s;
}
#find_info .btn-primary:hover, #find_info .btn-send:hover {
    background: linear-gradient(135deg, #6366f1, #4338ca) !important;
}
#find_info .cert-divider {
    text-align: center;
    border-top: 1px solid #e2e8f0;
    padding-top: 18px; margin-top: 6px;
}
#find_info .cert-divider h3 {
    font-size: .92rem; font-weight: 700; color: #0f172a; margin-bottom: 14px;
}

/* ══════════════════════════════════════════════════════
   비밀번호 재설정 (#pw_reset)
══════════════════════════════════════════════════════ */
#pw_reset {
    max-width: 480px;
    margin: 0 auto;
    padding: 0 12px;
}
#pw_reset .pw-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 20px;
}
#pw_reset .pw-card-head {
    display: flex; align-items: center; gap: 12px;
    padding: 16px 22px 14px;
    background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%);
    border-bottom: 1px solid #e2e8f0;
}
#pw_reset .pw-card-num {
    display: flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: 50%;
    background: linear-gradient(135deg, #4f46e5, #312e81);
    color: #fff; font-size: .82rem; font-weight: 800;
    flex-shrink: 0;
}
#pw_reset .pw-card-head h5 {
    margin: 0; font-size: .9rem; font-weight: 700; color: #0f172a;
}
#pw_reset .pw-card-body { padding: 20px 22px; }
#pw_reset p { font-size: .83rem; color: #475569; margin-bottom: 14px; }
#pw_reset .mb-id-badge {
    display: inline-block;
    background: #eef2ff;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 6px 14px;
    font-size: .82rem; font-weight: 700; color: #334155;
    margin-bottom: 16px;
}
#pw_reset .input-group { margin-bottom: 10px; }
#pw_reset .input-group-text {
    background: #eef2ff;
    border: 1px solid #cbd5e1; border-right: none;
    color: #9A7060; border-radius: 8px 0 0 8px;
    width: 42px; justify-content: center;
}
#pw_reset .form-control {
    background: #f8fafc;
    border: 1px solid #cbd5e1; border-left: none;
    border-radius: 0 8px 8px 0;
    color: #0f172a; font-size: .83rem; height: 42px;
    transition: border-color .15s;
}
#pw_reset .form-control:focus {
    border-color: #4f46e5; background: #fff;
}
#pw_reset .btn-pw-submit {
    display: block; width: 100%;
    height: 46px; margin-top: 16px;
    background: linear-gradient(135deg, #4f46e5 0%, #312e81 100%);
    border: none; border-radius: 10px;
    color: #fff; font-size: .9rem; font-weight: 800;
    cursor: pointer;
    transition: all .15s;
}
#pw_reset .btn-pw-submit:hover {
    background: linear-gradient(135deg, #6366f1, #4338ca);
    transform: translateY(-1px);
}

/* ══════════════════════════════════════════════════════
   회원가입 완료 (.rg-result)
══════════════════════════════════════════════════════ */
.rg-result {
    max-width: 600px;
    margin: 0 auto;
    padding: 0 12px 30px;
}
.rg-result .result-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    overflow: hidden;
}
.rg-result .result-head {
    background: linear-gradient(135deg, #1e1b4b 0%, #312e81 100%);
    padding: 28px 24px 24px;
    text-align: center;
}
.rg-result .result-icon {
    font-size: 2.2rem;
    margin-bottom: 10px;
}
.rg-result .result-head h4 {
    color: #eef2ff;
    font-size: 1.1rem;
    font-weight: 800;
    margin: 0;
}
.rg-result .result-head p {
    color: rgba(79,70,229,.85);
    font-size: .8rem;
    margin-top: 6px;
    margin-bottom: 0;
}
.rg-result .result-body {
    padding: 22px 24px;
}
.rg-result .result-body ul {
    list-style: none;
    padding: 0; margin: 0;
}
.rg-result .result-body ul li {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid #F0E4D4;
    font-size: .83rem; color: #334155; line-height: 1.6;
}
.rg-result .result-body ul li:last-child { border-bottom: none; }
.rg-result .result-body ul li::before {
    content: "•";
    color: #4f46e5;
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 1px;
}
.rg-result .result-table {
    width: 100%; margin-top: 10px; margin-bottom: 4px;
    border-collapse: collapse; font-size: .82rem;
}
.rg-result .result-table th {
    background: #eef2ff; color: #334155;
    font-weight: 700; padding: 8px 12px;
    border: 1px solid #cbd5e1; text-align: center;
}
.rg-result .result-table td {
    padding: 8px 12px;
    border: 1px solid #cbd5e1; text-align: center; color: #0f172a;
}
.rg-result .result-footer {
    padding: 16px 24px 22px;
    text-align: center;
}
.rg-result .btn-home {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 0 28px; height: 44px;
    background: linear-gradient(135deg, #4f46e5, #312e81);
    border: none; border-radius: 10px;
    color: #fff; font-size: .88rem; font-weight: 800;
    text-decoration: none;
    transition: all .15s;
}
.rg-result .btn-home:hover {
    background: linear-gradient(135deg, #6366f1, #4338ca);
    color: #fff; transform: translateY(-1px);
}

/* ── 반응형 ────────────────────────────────────────── */
@media (max-width: 575px) {
	.rg-section-body { padding: 16px; }
	.rg-section-head { padding: 14px 16px 12px; }
	.rg-row { grid-template-columns: 1fr; gap: 4px; }
	.rg-row.rg-row--half { grid-template-columns: 1fr; }
	.rg-label { padding-top: 0; }
	.rg-actions { flex-direction: column-reverse; }
	.rg-actions .btn-submit,
	.rg-actions .btn-cancel { flex: none; }
}

/* ══════════════════════════════════════════════════════
   운영용 클린 테마 오버라이드 (화이트 + 옅은 블루)
   - 웜톤 제거
   - CTA(확인/회원가입완료 등)만 레드 그라데이션
══════════════════════════════════════════════════════ */
:root {
	--rg-bg: #f8fafc;
	--rg-card: #ffffff;
	--rg-line: #e2e8f0;
	--rg-text-1: #0f172a;
	--rg-text-2: #64748b;
	--rg-primary: #4b6bfb;
	--rg-primary-h: #3448d1;
	--rg-primary-lt: #eef2ff;
	/* 브라운/레드 계열 완전 제거: CTA도 인디고로 통일 */
	--rg-cta-1: var(--rg-primary);
	--rg-cta-2: var(--rg-primary-h);
}

body { background: var(--rg-bg); }

.register-title h2 { color: var(--rg-text-1); }
.register-title p { color: var(--rg-text-2); }

.rg-section {
	border-color: var(--rg-line);
}
.rg-section-head {
	background: linear-gradient(135deg, #ffffff 0%, var(--rg-primary-lt) 100%);
	border-bottom-color: var(--rg-line);
}
.rg-section-num {
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h));
}
.rg-section-head h5 { color: var(--rg-text-1); }

.register .form-control,
.register input[type="text"],
.register input[type="password"],
.register input[type="email"],
.register textarea {
	background: #f8fafc;
	border-color: var(--rg-line);
	color: var(--rg-text-1);
}
.register .form-control:focus,
.register input[type="text"]:focus,
.register input[type="password"]:focus,
.register input[type="email"]:focus,
.register textarea:focus {
	border-color: var(--rg-primary);
}
.register .input-group-text {
	background: var(--rg-primary-lt);
	border-color: var(--rg-line);
	color: var(--rg-text-2);
}

/* 기본 primary(회원 스킨 내부) = 옅은 블루 */
.bg-primary,
#topNav {
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h)) !important;
}
.text-primary { color: var(--rg-primary) !important; }
.border-primary { border-color: #c7d2fe !important; }

.btn.btn-primary,
button.btn-primary,
a.btn.btn-primary,
.btn-primary {
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h)) !important;
	border-color: transparent !important;
	color: #fff !important;
}
.btn.btn-primary:hover,
button.btn-primary:hover,
a.btn.btn-primary:hover {
	background: linear-gradient(135deg, #5b7cfe, #3b55e0) !important;
}

/* CTA 버튼(완료/확인 등)만 레드 */
.rg-actions .btn-submit,
#mb_login .btn-login,
#pw_reset .btn-pw-submit,
.rg-result .btn-home {
	/* 레드 CTA 제거 → 인디고 CTA로 통일 */
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h)) !important;
	border: none !important;
	color: #fff !important;
}
.rg-actions .btn-submit:hover,
#mb_login .btn-login:hover,
#pw_reset .btn-pw-submit:hover,
.rg-result .btn-home:hover {
	filter: brightness(1.06) !important;
}

/* ── 최종 강제 덮어쓰기: 파일 앞쪽 웜톤 하드코딩 무력화 ── */
.register-title h2,
.rg-section-head h5,
.rg-section-body,
.rg-label,
.register .custom-control-label,
#find_info p,
#pw_reset p {
	color: var(--rg-text-1) !important;
}
.register-title p,
.rg-hint,
.rg-footer-links,
#find_info p,
#pw_reset p {
	color: var(--rg-text-2) !important;
}
.rg-section,
.fi-card,
#profile .list-group-item,
#scrap .list-group-item,
#point .list-group-item,
#memo_list .list-group-item,
#memo_view .list-group-item,
#memo_write .list-group-item,
#scrap_do .list-group-item,
#fmail .list-group-item,
#mb_confirm .list-group-item {
	border-color: var(--rg-line) !important;
}
.rg-section-head,
.fi-card-head {
	background: linear-gradient(135deg, #ffffff 0%, var(--rg-primary-lt) 100%) !important;
	border-bottom-color: var(--rg-line) !important;
}
.rg-section-num,
.fi-card-num {
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h)) !important;
	color: #fff !important;
}
.rg-label .req { background: var(--rg-primary) !important; }
.register .input-group-text,
#find_info .input-group-text,
#pw_reset .input-group-text {
	background: var(--rg-primary-lt) !important;
	border-color: var(--rg-line) !important;
	color: var(--rg-text-2) !important;
}
.register .form-control,
#find_info .form-control,
#pw_reset .form-control {
	background: #f8fafc !important;
	border-color: var(--rg-line) !important;
	color: var(--rg-text-1) !important;
}
.register .form-control:focus,
#find_info .form-control:focus,
#pw_reset .form-control:focus {
	border-color: var(--rg-primary) !important;
}
/* 비번찾기: 인증메일 보내기 버튼(브라운 잔존 제거) */
#find_info .btn-send,
#find_info button.btn-send {
	background: linear-gradient(135deg, var(--rg-primary), var(--rg-primary-h)) !important;
	border: none !important;
	color: #fff !important;
}
#find_info .btn-send:hover,
#find_info button.btn-send:hover {
	filter: brightness(1.06) !important;
}

.rg-actions .btn-cancel {
	background: #fff;
	border-color: var(--rg-line);
	color: var(--rg-text-2);
}
.rg-actions .btn-cancel:hover {
	background: var(--rg-primary-lt);
	border-color: #c7d2fe;
	color: var(--rg-text-1);
}

/* 테마(theme.css)·indigo.css·Bootstrap 포커스 링까지 회원가입 폼 그림자 제거 */
.register,
.register *,
.register *::before,
.register *::after {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
}
.register .form-control:focus,
.register .btn:focus,
.register .btn-primary:focus,
.register .btn.focus,
.register .custom-control-input:focus ~ .custom-control-label::before {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
}
