@charset "utf-8";
/* ==========================================================================
   라온플레이스 리뉴얼 2026 — 페이지 스킨 테마
   대상: 회원 스킨(skin/member/basic), 공지 게시판(skin/board/we_notice),
         바로결제(html/ppay.php), 청소대행 신청완료(html/request_clean_service.php)

   로드: 각 스킨/페이지에서 add_stylesheet(..., 20) 로 추가.
   ※ add_stylesheet 출력은 default.css 바로 뒤에 삽입되므로
     reset/mobile_shop/sub/sub_mobile_shop/sub_sub/theme.css 보다 "먼저" 로드된다.
     → 모든 규칙은 body.rp + rp-* 래퍼(필요시 id)로 시작해 특이성으로 이긴다.
   토큰(:root)은 css/theme.css 에 정의되어 있으며 여기서는 변수만 사용한다.
   ========================================================================== */

/* --------------------------------------------------------------------------
   0. 공통 폼 프리미티브 (라인 입력창 / 체크박스 / 버튼)
   -------------------------------------------------------------------------- */
body.rp :is(.rp-auth,.rp-board,.rp-ppay) .frm_input,
body.rp :is(.rp-auth,.rp-board,.rp-ppay) select{
  display:block;width:100%;max-width:100%;height:48px;margin:0;padding:10px 2px;
  font-family:var(--f-sans);font-size:1rem;line-height:1.4;color:var(--c-ink);
  background-color:transparent;border:0;border-bottom:1px solid var(--c-line);border-radius:0;box-shadow:none;
  -webkit-appearance:none;appearance:none;
  transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)
}
body.rp :is(.rp-auth,.rp-board,.rp-ppay) select{
  padding-right:28px;cursor:pointer;
  background:no-repeat right 4px center/12px 8px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23666' stroke-width='1.2'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E")
}
body.rp :is(.rp-auth,.rp-board,.rp-ppay) .frm_input::placeholder{color:var(--c-grey-2);opacity:1}
body.rp :is(.rp-auth,.rp-board,.rp-ppay) .frm_input:focus,
body.rp :is(.rp-auth,.rp-board,.rp-ppay) select:focus{
  outline:0;border-bottom-color:var(--c-purple);box-shadow:0 1px 0 0 var(--c-purple)
}
body.rp :is(.rp-auth,.rp-board,.rp-ppay) .frm_input[readonly],
body.rp :is(.rp-auth,.rp-board,.rp-ppay) .frm_input.readonly{color:var(--c-grey);background-color:transparent!important;cursor:default}
body.rp :is(.rp-auth,.rp-board,.rp-ppay) input:-webkit-autofill{-webkit-box-shadow:0 0 0 40px var(--c-white) inset;-webkit-text-fill-color:var(--c-ink)}

/* 필드 라벨 (작은 산세리프) */
body.rp .rp-field-label,
body.rp .rp-auth .rp-auth__lbl{
  display:block;margin:22px 0 2px;color:var(--c-grey);font-family:var(--f-sans);
  font-size:.74rem;font-weight:600;letter-spacing:.14em;line-height:1.4;text-transform:uppercase
}

/* 체크박스 (gnuboard .selec_chk + label > span) */
body.rp .rp-auth .chk_box input[type=checkbox] + label,
body.rp .rp-auth .fregister_agree input[type=checkbox] + label,
body.rp .rp-auth .member_cert_refresh_agree input[type=checkbox] + label{
  display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0;color:var(--c-ink-2);cursor:pointer;vertical-align:middle
}
body.rp .rp-auth .chk_box input[type=checkbox] + label span,
body.rp .rp-auth .fregister_agree input[type=checkbox] + label span,
body.rp .rp-auth .member_cert_refresh_agree input[type=checkbox] + label span{
  flex:none;width:20px;height:20px;background:var(--c-white);border:1px solid var(--c-grey-2);border-radius:0;
  transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)
}
body.rp .rp-auth .chk_box input[type=checkbox] + label span{position:relative;float:none;display:inline-block}
body.rp .rp-auth .chk_box input[type=checkbox]:checked + label span,
body.rp .rp-auth .fregister_agree input[type=checkbox]:checked + label span,
body.rp .rp-auth .member_cert_refresh_agree input[type=checkbox]:checked + label span{background:var(--c-purple);border-color:var(--c-purple)}
body.rp .rp-auth .chk_box input[type=checkbox] + label span:after,
body.rp .rp-auth .fregister_agree input[type=checkbox] + label span:after,
body.rp .rp-auth .member_cert_refresh_agree input[type=checkbox] + label span:after{
  content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid var(--c-white);border-width:0 2px 2px 0;transform:rotate(45deg);opacity:0;transition:opacity .2s
}
body.rp .rp-auth .chk_box input[type=checkbox]:checked + label span:after,
body.rp .rp-auth .fregister_agree input[type=checkbox]:checked + label span:after,
body.rp .rp-auth .member_cert_refresh_agree input[type=checkbox]:checked + label span:after{opacity:1}
body.rp .rp-auth .chk_box input[type=checkbox]:focus-visible + label span,
body.rp .rp-auth .fregister_agree input[type=checkbox]:focus-visible + label span,
body.rp .rp-auth .member_cert_refresh_agree input[type=checkbox]:focus-visible + label span{outline:2px solid var(--c-gold);outline-offset:2px}
body.rp .rp-auth .chk_box input[type=checkbox] + label:hover,
body.rp .rp-auth .fregister_agree input[type=checkbox] + label:hover{color:var(--c-purple)}

/* 기본 체크박스/라디오 (스킨 미지정 영역) */
body.rp :is(.rp-board,.rp-ppay) input[type=checkbox],
body.rp :is(.rp-board,.rp-ppay) input[type=radio]{width:18px;height:18px;margin:0;accent-color:var(--c-purple);vertical-align:middle;cursor:pointer}

/* 버튼: 주 버튼 = .btn-fill 룩, 보조 = .btn-line 룩 */
body.rp :is(.rp-auth,.rp-board,.rp-ppay,.rp-done) .rp-btn-fill,
body.rp .rp-auth .btn_submit,
body.rp .rp-board .btn_submit,
body.rp .rp-auth .reg_btn_submit{
  display:inline-flex;align-items:center;justify-content:center;gap:.8em;
  min-height:52px;height:auto;margin:0;padding:0 2.2em;
  font-family:var(--f-sans);font-size:.84rem;font-weight:600;letter-spacing:.2em;line-height:1.2;text-transform:uppercase;text-decoration:none;
  color:var(--c-white)!important;background:var(--c-purple);border:1px solid var(--c-purple);border-radius:0;box-shadow:none;cursor:pointer;
  transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)
}
body.rp .rp-auth .btn_submit:hover,body.rp .rp-auth .btn_submit:focus-visible,
body.rp .rp-board .btn_submit:hover,body.rp .rp-board .btn_submit:focus-visible,
body.rp .rp-auth .reg_btn_submit:hover{background:var(--c-purple-deep);border-color:var(--c-purple-deep);color:var(--c-white)!important}
body.rp .rp-auth .btn_submit:disabled,body.rp .rp-board .btn_submit:disabled{opacity:.55;cursor:wait}

body.rp .rp-auth .btn_close,
body.rp .rp-board .btn_cancel{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;height:auto;width:auto;margin:0;padding:0 .2em;
  font-family:var(--f-sans);font-size:.84rem;font-weight:600;letter-spacing:.2em;line-height:1.2;text-transform:uppercase;text-decoration:none;
  color:var(--c-ink)!important;background:none;border:0;border-radius:0;cursor:pointer
}
body.rp .rp-auth .btn_close:after,
body.rp .rp-board .btn_cancel:after{content:"";position:absolute;left:0;right:0;bottom:12px;height:1px;background:var(--c-gold);transform-origin:left;transition:transform var(--t-fast) var(--ease),background var(--t-fast)}
body.rp .rp-auth .btn_close:hover,
body.rp .rp-board .btn_cancel:hover{color:var(--c-purple)!important;background:none}
body.rp .rp-auth .btn_close:hover:after,
body.rp .rp-board .btn_cancel:hover:after{background:var(--c-purple);transform:scaleX(.6)}

/* 확인 버튼 줄 */
body.rp .rp-auth .btn_confirm,
body.rp .rp-board .btn_confirm{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 32px;margin:36px 0 0;padding:0;text-align:right
}
body.rp .rp-auth .btn_confirm .btn_submit{min-width:200px}
body.rp .rp-auth .btn_confirm .btn_submit,
body.rp .rp-auth .btn_confirm .btn_close{float:none;width:auto;height:52px!important;margin:0}
body.rp .rp-auth .btn_confirm:after,body.rp .rp-board .btn_confirm:after{display:none}

/* 자동등록방지(캡챠) */
body.rp :is(.rp-auth,.rp-board) #captcha{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:24px 0 0;padding:0;border:0}
body.rp :is(.rp-auth,.rp-board) #captcha legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
body.rp :is(.rp-auth,.rp-board) #captcha #captcha_img{border:1px solid var(--c-line);height:44px;width:auto}
body.rp :is(.rp-auth,.rp-board) #captcha #captcha_key{width:110px;height:44px;padding:0 4px;font-family:var(--f-serif-en);font-size:1.25rem;letter-spacing:.2em;text-align:center;border:0;border-bottom:1px solid var(--c-line);border-radius:0;background:transparent}
body.rp :is(.rp-auth,.rp-board) #captcha #captcha_key:focus{outline:0;border-bottom-color:var(--c-purple)}
body.rp :is(.rp-auth,.rp-board) #captcha #captcha_info{flex-basis:100%;color:var(--c-grey-2);font-size:.8rem}

/* --------------------------------------------------------------------------
   1. 회원 — 카드 레이아웃 (.rp-auth)
   -------------------------------------------------------------------------- */
body.rp .rp-auth{position:relative;width:100%;max-width:420px;margin:0 auto;font-family:var(--f-sans);text-align:left;color:var(--c-ink)}
body.rp .rp-auth:after{display:none}
body.rp .rp-auth--wide{max-width:720px}
body.rp .rp-auth .rp-auth__card,
body.rp #mb_login.rp-auth .mbskin_box,
body.rp #mb_confirm.rp-auth,
body.rp #pw_confirm.rp-auth{
  padding:clamp(28px,5vw,48px);background:var(--c-white);border:1px solid var(--c-line)
}
body.rp .rp-auth .rp-label{margin-bottom:1.1rem}
body.rp .rp-auth h1{
  position:static;margin:0 0 1rem;padding:0;color:var(--c-ink);font-family:var(--f-serif-kr);
  font-size:clamp(1.6rem,3vw,2rem);font-weight:500;line-height:1.3;letter-spacing:-.01em;text-align:left;overflow:visible
}
body.rp .rp-auth fieldset{margin:0;padding:0;border:0;text-align:left}
body.rp .rp-auth legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* 1-1. 로그인 */
body.rp #mb_login.rp-auth{margin-top:0}
body.rp #mb_login.rp-auth h1{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip:rect(0 0 0 0)}
body.rp #mb_login .mb_log_cate{display:flex;margin:0 0 12px;border-bottom:1px solid var(--c-line)}
body.rp #mb_login .mb_log_cate:after{display:none}
body.rp #mb_login .mb_log_cate h2,
body.rp #mb_login .mb_log_cate .join{
  position:relative;flex:1;float:none;width:auto;margin:0;padding:6px 0 16px;background:none;text-align:center;
  font-family:var(--f-serif-kr);font-size:1.2rem;font-weight:500;line-height:1.4
}
body.rp #mb_login .mb_log_cate h2{color:var(--c-ink)}
body.rp #mb_login .mb_log_cate h2:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--c-purple)}
body.rp #mb_login .mb_log_cate .join{display:flex;align-items:flex-start;justify-content:center;color:var(--c-grey-2)!important;transition:color var(--t-fast)}
body.rp #mb_login .mb_log_cate .join:hover{color:var(--c-purple)!important}
body.rp #mb_login #login_fs{padding:0}
body.rp #mb_login #login_fs .frm_input{margin:0}
body.rp #mb_login #login_fs .btn_submit{display:flex;width:100%;margin:32px 0 0}
body.rp #login_info{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;margin:14px 0 0;font-size:.88rem}
body.rp #login_info:after{display:none}
body.rp #login_info .login_if_auto,body.rp #login_info .login_if_lpl{float:none}
body.rp #login_info .login_if_auto label{padding-left:0}
body.rp #login_info .login_if_lpl a{display:inline-flex;align-items:center;min-height:44px;color:var(--c-grey)!important;border-bottom:0;text-decoration:none}
body.rp #login_info .login_if_lpl a:hover{color:var(--c-purple)!important}

/* 소셜로그인 (브랜드 색은 유지, 크기/모서리만 정리) */
body.rp #mb_login #sns_login{margin:28px 0 0;padding:24px 0 0;border:0;border-top:1px solid var(--c-line)}
body.rp #mb_login #sns_login .sns-wrap{display:grid;grid-template-columns:1fr;gap:8px;margin:0!important}
body.rp #mb_login #sns_login .sns-wrap:after{display:none}
body.rp #mb_login #sns_login .sns-icon{float:none!important;width:100%!important;height:48px;margin:0!important;line-height:48px;border-radius:0;background-position:9px 9px}
body.rp #mb_login #sns_login .txt{font-family:var(--f-sans);font-size:.9rem;font-weight:600}

/* 비회원 주문/조회 블록 (쇼핑몰 사용 시) */
body.rp #mb_login #mb_login_notmb,
body.rp #mb_login #mb_login_od_wr{margin:24px 0 0;padding:clamp(24px,4vw,40px);border:1px solid var(--c-line);background:var(--c-white)}
body.rp #mb_login #mb_login_notmb h2,
body.rp #mb_login #mb_login_od_wr h2{margin:0 0 12px;font-family:var(--f-serif-kr);font-size:1.2rem;font-weight:500}
body.rp #mb_login #guest_privacy{border:1px solid var(--c-line);background:var(--c-ivory)}
body.rp #mb_login #mb_login_notmb .btn_submit,
body.rp #mb_login #mb_login_od_wr .btn_submit{display:flex;width:100%;margin-top:20px}
body.rp #mb_login #mb_login_od_wr p{background:var(--c-ivory);color:var(--c-grey);font-size:.88rem}

/* 1-2. 회원 비밀번호 확인 / 비밀글 비밀번호 */
body.rp #mb_confirm.rp-auth,
body.rp #pw_confirm.rp-auth{margin-top:0}
body.rp #mb_confirm.rp-auth h1,
body.rp #pw_confirm.rp-auth h1{margin:0 0 1rem}
body.rp #mb_confirm.rp-auth p,
body.rp #pw_confirm.rp-auth p{margin:0;padding:0 0 24px;border-bottom:1px solid var(--c-line);color:var(--c-grey);font-size:.94rem;line-height:1.75}
body.rp #mb_confirm.rp-auth p strong,
body.rp #pw_confirm.rp-auth p strong{display:block;margin:0 0 6px;color:var(--c-ink);font-size:1rem;font-weight:600}
body.rp #mb_confirm.rp-auth fieldset,
body.rp #pw_confirm.rp-auth fieldset{padding:8px 0 0;text-align:left}
body.rp #mb_confirm.rp-auth .confirm_id{display:block;margin:22px 0 2px;color:var(--c-grey);font-size:.74rem;font-weight:600;letter-spacing:.14em}
body.rp #mb_confirm.rp-auth #mb_confirm_id{display:block;margin:0 0 8px;padding:12px 2px;border-bottom:1px solid var(--c-line);font-family:var(--f-serif-en);font-size:1.2rem;font-weight:500;color:var(--c-ink)}
body.rp #mb_confirm.rp-auth .frm_input,
body.rp #pw_confirm.rp-auth .frm_input{background-color:transparent!important;margin-top:8px}
body.rp #mb_confirm.rp-auth .btn_submit,
body.rp #pw_confirm.rp-auth .btn_submit{display:flex;width:100%;margin:28px 0 0}

/* 1-3. 회원가입 약관 (#fregister) */
body.rp .rp-auth #fregister > p{
  position:relative;height:auto;margin:0 0 24px;padding:16px 20px 16px 48px;
  color:var(--c-ink-2);font-size:.92rem;font-weight:400;line-height:1.6;text-align:left;
  background:var(--c-ivory);border-left:2px solid var(--c-purple);border-radius:0
}
body.rp .rp-auth #fregister > p:before{display:none}
body.rp .rp-auth #fregister > p i{position:absolute;left:18px;top:17px;color:var(--c-purple);font-size:1.1rem}
body.rp .rp-auth #fregister section{margin:0 0 20px;background:var(--c-white);border:1px solid var(--c-line);border-radius:0}
body.rp .rp-auth #fregister h2{margin:0;padding:18px 64px 18px 24px;border-bottom:1px solid var(--c-line);font-family:var(--f-serif-kr);font-size:1.12rem;font-weight:500;line-height:1.5;text-align:left}
body.rp .rp-auth #fregister textarea{display:block;width:100%;height:180px;padding:20px 24px;color:var(--c-grey);font-family:var(--f-sans);font-size:.88rem;line-height:1.75;background:var(--c-white);border:0;border-radius:0;resize:vertical}
body.rp .rp-auth #fregister_private > div{padding:20px 24px;background:var(--c-white)}
body.rp .rp-auth #fregister_private table{width:100%;border-collapse:collapse;font-size:.88rem;line-height:1.6}
body.rp .rp-auth #fregister_private table th{width:33.33%;padding:12px;color:var(--c-ink);font-weight:600;background:var(--c-ivory);border:1px solid var(--c-line)}
body.rp .rp-auth #fregister_private table td{padding:12px;color:var(--c-grey);border:1px solid var(--c-line);border-top:0}
body.rp .rp-auth #fregister .fregister_agree{position:absolute;top:10px;right:14px;margin:0;padding:0;border:0}
body.rp .rp-auth #fregister .fregister_agree input[type=checkbox] + label span{position:relative;top:auto;right:auto}
body.rp .rp-auth #fregister #fregister_chkall{
  position:relative;top:auto;right:auto;display:flex;justify-content:center;margin:0 0 8px;padding:6px 16px;
  line-height:1.5;background:var(--c-ivory);border:1px solid var(--c-line);border-radius:0
}
body.rp .rp-auth #fregister_chkall input[type=checkbox] + label{font-weight:600;color:var(--c-ink)}
body.rp .rp-auth #fregister_chkall input[type=checkbox] + label span{position:relative;top:auto;right:auto}

/* 소셜 회원가입 버튼 줄 */
body.rp .rp-auth #sns_register{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;padding:16px 24px;border:1px solid var(--c-line);border-radius:0}
body.rp .rp-auth #sns_register:after{display:none}
body.rp .rp-auth #sns_register h2{float:none;width:auto;height:auto;padding:0;border:0;font-family:var(--f-serif-kr);font-size:1.05rem;font-weight:500;line-height:1.5}
body.rp .rp-auth #sns_register .sns-wrap{float:none;width:auto;height:auto;padding:0;line-height:1;display:flex;flex-wrap:wrap;gap:6px}
body.rp .rp-auth #sns_register .sns-icon{width:44px;height:44px;margin:0;border-radius:0;background-position:7px 7px}

/* 1-4. 회원가입/정보수정 폼 (#fregisterform) */
body.rp .rp-auth #register_form{margin:0;background:none}
body.rp .rp-auth #register_form .register_form_inner{margin:0 0 20px;padding:clamp(24px,4vw,40px);background:var(--c-white);border:1px solid var(--c-line);border-radius:0}
body.rp .rp-auth #register_form h2{margin:0 0 8px;padding:0;border:0;font-family:var(--f-serif-kr);font-size:1.25rem;font-weight:500;line-height:1.4;text-align:left}
body.rp .rp-auth #register_form .register_form_inner ul{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:0;padding:0}
body.rp .rp-auth #register_form .register_form_inner li{grid-column:1/-1;position:relative;width:auto;float:none;margin:0;padding:0;list-style:none}
body.rp .rp-auth #register_form .register_form_inner li.half_input{grid-column:auto}
body.rp .rp-auth #register_form .register_form_inner li:empty{display:none}
body.rp .rp-auth #register_form .register_form_inner label{
  display:block;margin:22px 0 2px;color:var(--c-grey);font-size:.74rem;font-weight:600;letter-spacing:.12em;line-height:1.6
}
body.rp .rp-auth #register_form .register_form_inner label.sound_only{margin:0}
body.rp .rp-auth #register_form #mb_birth_date_m,
body.rp .rp-auth #register_form #mb_birth_date_d{display:inline-block;width:calc(50% - 10px);vertical-align:top}
body.rp .rp-auth #register_form #mb_birth_date_d{margin-left:16px}
body.rp .rp-auth #register_form #msg_mb_id{display:block;margin-top:6px;color:var(--c-purple);font-size:.82rem}
body.rp .rp-auth #register_form li.chk_box{display:flex;align-items:flex-start;gap:4px;padding-top:12px}
body.rp .rp-auth #register_form li.chk_box label{margin:0;letter-spacing:0}
body.rp .rp-auth #register_form .chk_li{padding:11px 0 0;color:var(--c-ink-2);font-size:.92rem;line-height:1.6}
body.rp .rp-auth #register_form div{margin-bottom:0}
body.rp .rp-auth #register_form .register_form_inner{margin-bottom:20px}
body.rp .rp-auth #fregisterform .btn_confirm{margin-top:12px}
body.rp .rp-auth .tooltip_icon{min-width:24px;color:var(--c-grey-2);font-size:1.15em;vertical-align:-1px}
body.rp .rp-auth .tooltip_icon:hover{color:var(--c-purple)}
body.rp .rp-auth .tooltip{margin:8px 0 0 12px;padding:10px 12px;color:var(--c-white);background:var(--c-ink);font-size:.8rem;letter-spacing:0;line-height:1.5;text-transform:none}
body.rp .rp-auth .tooltip:before{border-right-color:var(--c-ink)}
body.rp .rp-auth #fregisterform #msg_certify{border:1px solid var(--c-purple-soft);background:var(--c-purple-soft);color:var(--c-purple)}
body.rp .rp-auth #fregisterform .cert_desc{color:var(--c-purple)}

/* 소셜 계정 관리 (정보수정) */
body.rp .rp-auth #register_form .reg-form,
body.rp .rp-auth #register_form .sns-wrap-reg{margin:0}

/* 1-5. 회원가입 완료 */
body.rp .rp-auth #reg_result,
body.rp #reg_result.rp-auth{padding:clamp(32px,6vw,64px) clamp(24px,5vw,56px);text-align:center;background:var(--c-white);border:1px solid var(--c-line);border-radius:0}
body.rp #reg_result.rp-auth i{display:inline-block;margin-bottom:.4rem;color:var(--c-gold);font-size:2.2rem}
body.rp #reg_result.rp-auth .reg_result_p{margin:0 0 28px;color:var(--c-ink);font-family:var(--f-serif-kr);font-size:clamp(1.3rem,2.6vw,1.75rem);font-weight:500;line-height:1.5}
body.rp #reg_result.rp-auth .reg_result_p strong{color:var(--c-purple);font-weight:500}
body.rp #reg_result.rp-auth p{color:var(--c-grey);font-size:.94rem;line-height:1.85}
body.rp #reg_result.rp-auth .result_txt{margin:0;padding:18px 0;text-align:left;border-top:1px solid var(--c-line)}
body.rp #reg_result.rp-auth #result_email{margin:20px 0;padding:16px 24px;text-align:left;background:var(--c-ivory);border:0;line-height:2}
body.rp #reg_result.rp-auth #result_email span{display:inline-block;width:110px;color:var(--c-grey);font-size:.82rem;letter-spacing:.08em}
body.rp #reg_result.rp-auth #result_email strong{color:var(--c-purple);font-size:1rem}
body.rp .btn_confirm_reg{max-width:720px;margin:32px auto 0;text-align:center}
body.rp .btn_confirm_reg .reg_btn_submit{
  display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:240px;height:auto;min-height:52px;padding:0 2.2em;
  font-size:.84rem;font-weight:600;letter-spacing:.2em;line-height:1.2;color:var(--c-white)!important;background:var(--c-purple);border:1px solid var(--c-purple);border-radius:0;
  transition:background var(--t-fast) var(--ease)
}
body.rp .btn_confirm_reg .reg_btn_submit:hover{background:var(--c-purple-deep);border-color:var(--c-purple-deep)}

/* 1-6. 아이디/비밀번호 찾기 · 비밀번호 재설정 (새창) · 기존회원 본인인증 */
body.rp #find_info.rp-auth,
body.rp #pw_reset.rp-auth{max-width:420px;padding:24px var(--gutter)}
body.rp #find_info.rp-auth.cert{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:880px}
body.rp :is(#find_info,#pw_reset).rp-auth .new_win_con{float:none;width:auto;margin:0;padding:clamp(24px,4vw,40px);background:var(--c-white);border:1px solid var(--c-line)}
body.rp #find_info.rp-auth.cert .new_win_con:nth-child(2){margin-left:0}
body.rp #find_info.rp-auth h3{display:block;margin:0 0 12px;font-family:var(--f-serif-kr);font-size:1.2rem;font-weight:500;text-align:left}
body.rp #find_info.rp-auth:not(.cert) h3{display:block}
body.rp :is(#find_info,#pw_reset).rp-auth p{margin:0 0 4px;color:var(--c-grey);font-size:.9rem;line-height:1.7}
body.rp :is(#find_info,#pw_reset).rp-auth #info_fs{margin:0}
body.rp #find_info.rp-auth #mb_email{margin:12px 0 0}
body.rp #pw_reset.rp-auth b{display:block;margin:16px 0 0;color:var(--c-ink);font-weight:600}
body.rp #pw_reset.rp-auth .frm_input{margin:12px 0 0}
body.rp :is(#find_info,#pw_reset).rp-auth .win_btn{margin:28px 0 0;text-align:center}
body.rp :is(#find_info,#pw_reset).rp-auth .win_btn .btn_submit{display:flex;width:100%;height:auto}
body.rp .rp-auth .cert_btn{display:grid;grid-template-columns:1fr;gap:8px;margin:16px 0 0}
body.rp .rp-auth .cert_btn .btn_submit,
body.rp #find_info.rp-auth .find_btn .btn_submit{width:100%;color:var(--c-purple)!important;background:var(--c-white);border:1px solid var(--c-purple)}
body.rp .rp-auth .cert_btn .btn_submit:hover,
body.rp #find_info.rp-auth .find_btn .btn_submit:hover{color:var(--c-white)!important;background:var(--c-purple)}

body.rp .member_cert_refresh.rp-auth #member_cert_refresh section{margin:0 0 20px;background:var(--c-white);border:1px solid var(--c-line);border-radius:0}
body.rp .member_cert_refresh.rp-auth #member_cert_refresh h2{margin:0;padding:18px 64px 18px 24px;border-bottom:1px solid var(--c-line);font-family:var(--f-serif-kr);font-size:1.12rem;font-weight:500;text-align:left}
body.rp .member_cert_refresh.rp-auth #member_cert_refresh_private > div{padding:20px 24px}
body.rp .member_cert_refresh.rp-auth #member_cert_refresh_private table th{background:var(--c-ivory);border:1px solid var(--c-line);font-weight:600}
body.rp .member_cert_refresh.rp-auth #member_cert_refresh_private table td{border:1px solid var(--c-line);border-top:0;color:var(--c-grey)}
body.rp .member_cert_refresh.rp-auth .member_cert_refresh_agree{position:absolute;top:10px;right:14px;border:0;padding:0}
body.rp .member_cert_refresh.rp-auth .member_cert_refresh_agree input[type=checkbox] + label span{position:relative;top:auto;right:auto}
body.rp .member_cert_refresh.rp-auth #find_info{margin:0;padding:0}
body.rp .member_cert_refresh.rp-auth #find_info .find_btn{padding:4px 24px 24px;background:var(--c-white)}

/* --------------------------------------------------------------------------
   2. 공지 게시판 (skin/board/we_notice) — .rp-board
   -------------------------------------------------------------------------- */
body.rp .rp-board{width:100%;max-width:1080px;margin:0 auto;font-family:var(--f-sans);color:var(--c-ink)}
body.rp .rp-board #bo_list{max-width:none;margin:0;width:100%!important}

/* 2-1. 상단: 건수 + 검색 + 버튼 */
body.rp .rp-board #bo_btn_top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin:0 0 20px}
body.rp .rp-board .list_top_wrap{flex:1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin:0;min-width:0}
body.rp .rp-board #bo_list_total{display:flex;align-items:baseline;gap:14px;color:var(--c-grey);font-size:.8rem;letter-spacing:.1em}
body.rp .rp-board #bo_list_total .bo_total_count{color:var(--c-ink);font-weight:600}
body.rp .rp-board #bo_list_total .bo_page_count{position:relative;padding-left:14px;color:var(--c-grey-2)}
body.rp .rp-board #bo_list_total .bo_page_count:before{content:"";position:absolute;left:0;top:50%;width:1px;height:10px;background:var(--c-line);transform:translateY(-50%)}
body.rp .rp-board .serch_bn{margin:0}
body.rp .rp-board #bo_sch{margin:0;padding:0;border:0;background:none}
body.rp .rp-board #bo_sch form{display:flex;align-items:flex-end;justify-content:flex-end;gap:16px}
body.rp .rp-board #bo_sch select{width:120px;height:44px;padding:8px 26px 8px 2px;font-size:.9rem;border:0;border-bottom:1px solid var(--c-line);border-radius:0}
body.rp .rp-board #bo_sch form > div{display:flex;align-items:center;width:auto;height:44px;margin:0;padding:0;background:none;border:0;border-bottom:1px solid var(--c-ink);border-radius:0;transition:border-color var(--t-fast)}
body.rp .rp-board #bo_sch form > div:focus-within{border-bottom-color:var(--c-purple)}
body.rp .rp-board #bo_sch .sch_input{width:200px;height:43px;padding:0 4px;font-family:var(--f-sans);font-size:.95rem;color:var(--c-ink);background:transparent;border:0;outline:0}
body.rp .rp-board #bo_sch .sch_btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:43px;padding:0;background:none;border:0;cursor:pointer}
body.rp .rp-board #bo_sch .sch_btn img{width:16px;height:auto;zoom:1;opacity:.7;transition:opacity var(--t-fast)}
body.rp .rp-board #bo_sch .sch_btn:hover img{opacity:1}

/* 관리자/글쓰기 버튼 (작은 라인 버튼) */
body.rp .rp-board .btn_bo_user{display:flex;flex-wrap:wrap;gap:8px;float:none;margin:0;padding:0;list-style:none}
body.rp .rp-board .btn_bo_user li{float:none;margin:0}
body.rp .rp-board .btn_bo_user .btn,
body.rp .rp-board #bo_v_top .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;width:auto;min-width:0;height:44px;margin:0;padding:0 18px;
  font-family:var(--f-sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;line-height:1;text-transform:uppercase;text-decoration:none;
  color:var(--c-ink-2)!important;background:var(--c-white);border:1px solid var(--c-line);border-radius:0;cursor:pointer;
  transition:color var(--t-fast),border-color var(--t-fast),background var(--t-fast)
}
body.rp .rp-board .btn_bo_user .btn:hover,
body.rp .rp-board #bo_v_top .btn:hover{color:var(--c-purple)!important;border-color:var(--c-purple);background:var(--c-white)}
body.rp .rp-board .btn_bo_user .btn_b02,
body.rp .rp-board #bo_v_top .btn_b02{color:var(--c-white)!important;background:var(--c-purple);border-color:var(--c-purple)}
body.rp .rp-board .btn_bo_user .btn_b02:hover,
body.rp .rp-board #bo_v_top .btn_b02:hover{color:var(--c-white)!important;background:var(--c-purple-deep);border-color:var(--c-purple-deep)}
body.rp .rp-board .btn_bo_user .btn i,
body.rp .rp-board #bo_v_top .btn i{font-size:.95em}

/* 카테고리 */
body.rp .rp-board #bo_cate{margin:0 0 24px}
body.rp .rp-board #bo_cate ul{display:flex;flex-wrap:wrap;gap:6px 22px}
body.rp .rp-board #bo_cate li{padding:0}
body.rp .rp-board #bo_cate a{display:inline-flex;align-items:center;min-height:44px;padding:0;color:var(--c-grey);font-size:.92rem;background:none;border:0;border-radius:0}
body.rp .rp-board #bo_cate a:hover,body.rp .rp-board #bo_cate #bo_cate_on{color:var(--c-purple);background:none;border:0;font-weight:600;box-shadow:inset 0 -1px 0 var(--c-purple)}

/* 2-2. 리스트: 제목 + 날짜 2열 라인 리스트 */
body.rp .rp-board #bo_list .tbl_wrap{margin:0}
body.rp .rp-board #bo_list .tbl_head01 table,
body.rp .rp-board #bo_list .tbl_head01 tbody{display:block;width:100%;border:0;border-collapse:collapse}
body.rp .rp-board #bo_list .tbl_head01 table{border-top:1px solid var(--c-ink)}
body.rp .rp-board #bo_list .tbl_head01 thead{display:none}
/* 관리자(전체선택 체크박스가 있을 때)만 헤더 노출 */
body.rp .rp-board #bo_list .tbl_head01 thead:has(#chkall){display:block}
body.rp .rp-board #bo_list .tbl_head01 thead tr{display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--c-line)}
body.rp .rp-board #bo_list .tbl_head01 thead th{display:block;padding:12px 0;border:0;background:none;color:var(--c-grey-2);font-size:.72rem;font-weight:600;letter-spacing:.2em;text-align:left}
body.rp .rp-board #bo_list .tbl_head01 thead th:first-child{width:44px;flex:none}
body.rp .rp-board #bo_list .tbl_head01 thead th.th_title{flex:1;text-align:left}
body.rp .rp-board #bo_list .tbl_head01 thead th:nth-last-child(1),
body.rp .rp-board #bo_list .tbl_head01 thead th:nth-last-child(3){display:none}
body.rp .rp-board #bo_list .tbl_head01 thead th:nth-last-child(2){width:120px;flex:none;text-align:right}
body.rp .rp-board #bo_list .tbl_head01 thead th:nth-last-child(5){width:72px;flex:none}

body.rp .rp-board #bo_list .tbl_head01 tbody tr{display:flex;align-items:center;gap:0 16px;min-height:76px;padding:0 16px;border-bottom:1px solid var(--c-line);transition:background var(--t-fast) var(--ease)}
body.rp .rp-board #bo_list .tbl_head01 tbody td{display:block;padding:20px 0;border:0;background:none!important;color:var(--c-ink);line-height:1.5;white-space:normal;word-break:keep-all}
body.rp .rp-board #bo_list .td_chk{flex:none;width:28px;text-align:left}
body.rp .rp-board #bo_list .td_num2{flex:none;width:56px;color:var(--c-grey-2);font-family:var(--f-serif-en);font-size:1.05rem;letter-spacing:.04em;text-align:left}
body.rp .rp-board #bo_list .td_subject{flex:1;width:auto;max-width:none;min-width:0}
body.rp .rp-board #bo_list .td_name,
body.rp .rp-board #bo_list td.td_num{display:none}
body.rp .rp-board #bo_list .td_datetime{flex:none;width:auto;max-width:none;padding:20px 0;color:var(--c-grey);font-family:var(--f-serif-en);font-size:1.1rem;font-weight:500;letter-spacing:.06em;line-height:1.5;text-align:right;white-space:nowrap}
body.rp .rp-board #bo_list .bo_tit{display:flex;align-items:center;gap:8px;max-width:100%;color:var(--c-ink);font-size:1.05rem;font-weight:400}
body.rp .rp-board #bo_list .bo_tit a{display:flex;align-items:center;gap:6px;min-width:0;color:var(--c-ink)!important;text-decoration:none;transition:color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}
body.rp .rp-board #bo_list .bo_tit a span{padding-right:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
body.rp .rp-board #bo_list .tbl_head01 tbody tr:hover .bo_tit a{color:var(--c-purple)!important;transform:translateX(8px)}
body.rp .rp-board #bo_list .tbl_head01 tbody tr:hover .td_datetime{color:var(--c-purple)}
/* 공지 행 */
body.rp .rp-board #bo_list .bo_notice{background:var(--c-ivory)}
body.rp .rp-board #bo_list .bo_notice td .bo_tit,
body.rp .rp-board #bo_list .bo_notice td .bo_tit a{color:var(--c-ink)!important;font-weight:500}
body.rp .rp-board #bo_list .notice_icon{
  display:inline-flex;align-items:center;justify-content:center;width:auto;height:24px;padding:0 9px;
  color:var(--c-white);background:var(--c-purple);border-radius:0;font-family:var(--f-sans);font-size:.7rem;font-weight:600;letter-spacing:.14em;line-height:1
}
body.rp .rp-board #bo_list .bo_current{color:var(--c-purple);font-family:var(--f-sans);font-size:.75rem;font-weight:600;letter-spacing:.06em}
/* 제목 아이콘 */
body.rp .rp-board #bo_list .bo_tit .new_icon{width:auto;padding:0 2px;color:var(--c-gold);background:none;font-family:var(--f-serif-en);font-size:.9rem;font-weight:600;line-height:1}
body.rp .rp-board #bo_list .bo_tit .hot_icon{width:auto;padding:0 2px;color:var(--c-purple);background:none}
body.rp .rp-board #bo_list .bo_tit .fa-download,
body.rp .rp-board #bo_list .bo_tit .fa-link,
body.rp .rp-board #bo_list .bo_tit .fa-lock{width:auto;height:auto;margin:0;padding:0;color:var(--c-grey-2);background:none;border:0;font-size:.85rem}
body.rp .rp-board #bo_list .cnt_cmt{height:auto;padding:0;color:var(--c-purple);background:none;box-shadow:none;font-family:var(--f-serif-en);font-size:.95rem}
body.rp .rp-board #bo_list .empty_table{flex:1;padding:96px 0;color:var(--c-grey-2);text-align:center}
body.rp .rp-board #bo_list .tbl_head01 tbody tr:has(.empty_table){border-bottom:1px solid var(--c-line)}

/* 하단 관리자 버튼 */
body.rp .rp-board .bo_fx{display:flex;justify-content:flex-end;margin:24px 0 0}
body.rp .rp-board .bo_fx:after{display:none}

/* 2-3. 페이지네이션 (세리프 숫자, 현재 = 보라) */
body.rp .rp-board .pg_wrap{display:flex;justify-content:center;margin:56px 0 0;padding:0;float:none;width:100%}
body.rp .rp-board .pg_wrap:after{display:none}
body.rp .rp-board .pg{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px}
body.rp .rp-board .pg_page,
body.rp .rp-board .pg_current{
  position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;margin:0;padding:0 6px;
  font-family:var(--f-serif-en);font-size:1.2rem;font-weight:500;line-height:1;color:var(--c-grey-2);background:none;border:0;border-radius:0;text-decoration:none
}
body.rp .rp-board .pg_page:hover{color:var(--c-ink);background:none}
body.rp .rp-board .pg_current{color:var(--c-purple)}
body.rp .rp-board .pg_current:after{content:"";position:absolute;left:50%;bottom:8px;width:16px;height:1px;background:var(--c-purple);transform:translateX(-50%)}
body.rp .rp-board .pg_start,
body.rp .rp-board .pg_prev,
body.rp .rp-board .pg_next,
body.rp .rp-board .pg_end{width:44px;padding:0;text-indent:-999px;overflow:hidden;background-repeat:no-repeat;background-position:center;background-size:14px 10px}
body.rp .rp-board .pg_prev{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 10' fill='none' stroke='%23666' stroke-width='1.1'%3E%3Cpath d='M9 1L5 5l4 4'/%3E%3C/svg%3E")}
body.rp .rp-board .pg_next{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 10' fill='none' stroke='%23666' stroke-width='1.1'%3E%3Cpath d='M5 1l4 4-4 4'/%3E%3C/svg%3E")}
body.rp .rp-board .pg_start{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 10' fill='none' stroke='%23666' stroke-width='1.1'%3E%3Cpath d='M7 1L3 5l4 4M11 1L7 5l4 4'/%3E%3C/svg%3E")}
body.rp .rp-board .pg_end{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 10' fill='none' stroke='%23666' stroke-width='1.1'%3E%3Cpath d='M3 1l4 4-4 4M7 1l4 4-4 4'/%3E%3C/svg%3E")}
body.rp .rp-board .pg_start:hover,body.rp .rp-board .pg_prev:hover,body.rp .rp-board .pg_next:hover,body.rp .rp-board .pg_end:hover{background-color:var(--c-ivory)}

/* 2-4. 글 보기 */
body.rp .rp-board--view{max-width:960px}
body.rp .rp-board #bo_v_info{margin:0}
body.rp .rp-board #bo_v_info .bo_v_title{
  margin:0;padding:0 0 22px;color:var(--c-ink);font-family:var(--f-serif-kr);font-size:clamp(1.6rem,3.2vw,2.5rem);
  font-weight:500;line-height:1.35;letter-spacing:-.01em;text-align:left;word-break:keep-all
}
body.rp .rp-board #bo_v_info .bo_v_cate{display:block;margin:0 0 .8rem;color:var(--c-gold);font-family:var(--f-sans);font-size:.75rem;font-weight:600;letter-spacing:var(--ls-label);text-transform:uppercase}
body.rp .rp-board #bo_v_info .info_table table{display:block;width:100%;border:0}
body.rp .rp-board #bo_v_info .info_table table thead{display:block}
body.rp .rp-board #bo_v_info .info_table table thead tr{display:block;width:100%;border:0;border-bottom:1px solid var(--c-ink)}
body.rp .rp-board #bo_v_info .info_table table thead tr th{display:flex;flex-wrap:wrap;gap:4px 0;width:100%;padding:0 0 18px;background:none;font-weight:400;text-align:left}
body.rp .rp-board #bo_v_info .info_table table thead tr th p{margin:0;color:var(--c-grey-2);font-size:.8rem;letter-spacing:.08em}
body.rp .rp-board #bo_v_info .info_table table thead tr th p:not(:last-of-type){margin-right:18px;padding-right:18px}
body.rp .rp-board #bo_v_info .info_table table thead tr th p:not(:last-of-type)::before{height:10px;background-color:var(--c-line)}
body.rp .rp-board #bo_v_info .info_table table thead tr th p span{margin-left:8px;color:var(--c-ink-2);font-size:.88rem;letter-spacing:0}
body.rp .rp-board #bo_v_info .info_table table thead tr th p:nth-of-type(2) span,
body.rp .rp-board #bo_v_info .info_table table thead tr th p:nth-of-type(3) span{font-family:var(--f-serif-en);font-size:1.02rem;font-weight:500;letter-spacing:.04em}
/* 첨부/링크 목록 */
body.rp .rp-board #bo_v_info .info_table table tbody{display:block}
body.rp .rp-board #bo_v_info .info_table table tbody tr{display:flex;border-bottom:1px solid var(--c-line)}
body.rp .rp-board #bo_v_info .info_table table tbody tr th{flex:none;display:flex;align-items:flex-start;justify-content:flex-start;width:72px;padding:18px 0;background:none;color:var(--c-gold);font-size:.74rem;font-weight:600;letter-spacing:.14em;text-align:left}
body.rp .rp-board #bo_v_info .info_table table tbody tr td{flex:1;display:block;width:auto;min-width:0}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul{margin:0;padding:10px 0}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li{line-height:1.5}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;color:var(--c-ink)!important;text-decoration:none}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li a strong{flex:1;max-width:none;min-width:0;color:var(--c-ink-2);font-size:.94rem;font-weight:400;transition:color var(--t-fast)}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li a span{
  flex:none;display:inline-flex;align-items:center;gap:6px;margin:0;padding:0 0 2px;color:var(--c-grey)!important;background:none!important;border-radius:0;
  border-bottom:1px solid var(--c-gold);font-size:.72rem;font-weight:600;letter-spacing:.14em;line-height:1.6
}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li a span img{width:12px;height:auto;margin:0;zoom:1;filter:grayscale(1) brightness(.4)}
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li a:hover strong,
body.rp .rp-board #bo_v_info .info_table table tbody tr td ul li a:hover span{color:var(--c-purple)!important;border-color:var(--c-purple)}

/* 본문 (.prose 는 theme.css) */
body.rp .rp-board #bo_v_atc{max-width:none;min-height:0;height:auto!important;margin:0;border-bottom:1px solid var(--c-line)}
body.rp .rp-board #bo_v_img{margin:40px 0 0}
body.rp .rp-board #bo_v_img img{display:block;max-width:100%;height:auto;margin:0 auto 20px}
body.rp .rp-board #bo_v_con.prose{
  max-width:none;min-height:160px;margin:48px 0 56px;padding:0;color:var(--c-ink-2);font-size:1.05rem;line-height:1.8;letter-spacing:0;
  word-break:keep-all;overflow-wrap:anywhere;overflow:visible
}
body.rp .rp-board #bo_v_con.prose a{color:var(--c-purple);text-decoration:underline}
body.rp .rp-board #bo_v_act{margin:0 0 40px}

/* 수정/삭제/목록 버튼 */
body.rp .rp-board #bo_v_top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;max-width:none;margin:28px 0 0}
body.rp .rp-board #bo_v_top:after{display:none}
body.rp .rp-board #bo_v_top ul{display:flex;flex-wrap:wrap;gap:8px;float:none;margin:0;padding:0}
body.rp .rp-board #bo_v_top li{float:none;margin:0}
body.rp .rp-board #bo_v_top .bo_v_com{margin-left:auto}
body.rp .rp-board #bo_v_top .btn_b03{color:var(--c-ink)!important;border-color:var(--c-ink)}

/* 이전글 / 다음글 */
body.rp .rp-board .bo_v_nb{margin:56px 0 0;padding:0;border-top:1px solid var(--c-ink)}
body.rp .rp-board .bo_v_nb li{display:flex;align-items:center;gap:0 24px;border-bottom:1px solid var(--c-line);list-style:none}
body.rp .rp-board .bo_v_nb li .nb_tit{flex:none;width:96px;padding:22px 0;color:var(--c-gold);background:none;font-size:.74rem;font-weight:600;letter-spacing:.2em;text-align:left}
body.rp .rp-board .bo_v_nb li .nb_tit:after{content:"";display:inline-block;width:18px;height:1px;margin-left:10px;background:currentColor;vertical-align:middle}
body.rp .rp-board .bo_v_nb li > a{flex:1;width:auto;min-width:0;padding:22px 0;color:var(--c-ink-2)!important;font-size:.98rem;text-decoration:none;transition:color var(--t-fast),transform var(--t-fast) var(--ease)}
body.rp .rp-board .bo_v_nb li > a:hover{color:var(--c-purple)!important;font-weight:400;transform:translateX(6px)}

/* 2-5. 댓글 (스킨 포함 시) */
body.rp .rp-board #bo_vc_w,
body.rp .rp-board .bo_vc_w{margin:48px 0 0}
body.rp .rp-board .coment_count{margin:0 0 12px;color:var(--c-grey);font-size:.8rem;letter-spacing:.14em}
body.rp .rp-board .coment_count strong{color:var(--c-purple);font-family:var(--f-serif-en);font-size:1.1rem}
body.rp .rp-board #bo_vc_w h2,body.rp .rp-board #bo_vc h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
body.rp .rp-board .bo_vc_w_info{display:flex;flex-wrap:wrap;gap:0 24px;margin:0 0 12px}
body.rp .rp-board .bo_vc_w_info .frm_input{flex:1;min-width:160px;width:auto}
body.rp .rp-board .bo_vc_w textarea,
body.rp .rp-board #bo_w textarea{
  display:block;width:100%;min-height:140px;padding:16px 18px;font-family:var(--f-sans);font-size:.98rem;line-height:1.7;color:var(--c-ink);
  background:var(--c-white);border:1px solid var(--c-line);border-radius:0;resize:vertical;transition:border-color var(--t-fast)
}
body.rp .rp-board .bo_vc_w textarea:focus,
body.rp .rp-board #bo_w textarea:focus{outline:0;border-color:var(--c-purple)}
body.rp .rp-board .bo_vc_w_wr .btn_confirm{margin:12px 0 0;gap:12px 16px}
body.rp .rp-board .bo_vc_w_wr label{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--c-grey)}
body.rp .rp-board .bo_vc_w_wr .btn_submit{min-width:140px}
body.rp .rp-board #bo_vc{margin:32px 0 0;border-top:1px solid var(--c-ink)}
body.rp .rp-board #bo_vc article{margin:0;padding:20px 0;border-bottom:1px solid var(--c-line)}
body.rp .rp-board #bo_vc header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;color:var(--c-ink);font-size:.9rem;font-weight:600}
body.rp .rp-board #bo_vc .bo_vc_hdinfo{float:none;margin-left:auto;color:var(--c-grey-2);font-family:var(--f-serif-en);font-size:.98rem;font-weight:500}
body.rp .rp-board #bo_vc .cmt_contents{margin:10px 0 0;color:var(--c-ink-2);line-height:1.8}
body.rp .rp-board #bo_vc .bo_vc_act{display:flex;gap:14px;margin:8px 0 0;padding:0}
body.rp .rp-board #bo_vc .bo_vc_act a{display:inline-flex;align-items:center;min-height:36px;color:var(--c-grey)!important;font-size:.78rem;letter-spacing:.1em;background:none;border:0}
body.rp .rp-board #bo_vc .bo_vc_act a:hover{color:var(--c-purple)!important}
body.rp .rp-board #bo_vc_empty{padding:64px 0!important;color:var(--c-grey-2)}

/* 2-6. 글쓰기 */
body.rp .rp-board--write{max-width:960px}
body.rp .rp-board #fwrite{width:100%!important;padding:clamp(24px,4vw,48px);background:var(--c-white);border:1px solid var(--c-line)}
body.rp .rp-board #bo_w .write_div{position:relative;margin:0 0 24px}
body.rp .rp-board #bo_w .bo_w_info{display:flex;flex-wrap:wrap;gap:0 24px}
body.rp .rp-board #bo_w .bo_w_info .frm_input{flex:1;min-width:180px;width:auto}
body.rp .rp-board #bo_w .bo_w_info:empty{display:none}
body.rp .rp-board #bo_w .write_div > input[type=checkbox]{margin:0 6px 0 0}
body.rp .rp-board #bo_w .write_div > input[type=checkbox] + label{display:inline-flex;align-items:center;min-height:44px;margin:0 22px 0 0;color:var(--c-ink-2);font-size:.92rem;vertical-align:middle;cursor:pointer}
body.rp .rp-board #bo_w #wr_subject{height:56px;font-family:var(--f-serif-kr);font-size:1.3rem;font-weight:500}
body.rp .rp-board #bo_w .bo_w_tit > div{position:relative;display:flex;align-items:flex-end;gap:12px}
body.rp .rp-board #bo_w .bo_w_tit .frm_input{flex:1}
body.rp .rp-board #bo_w .btn_frmline{flex:none;display:inline-flex;align-items:center;height:40px;padding:0 14px;color:var(--c-grey)!important;font-size:.76rem;letter-spacing:.06em;background:var(--c-white);border:1px solid var(--c-line);border-radius:0;cursor:pointer}
body.rp .rp-board #bo_w .btn_frmline:hover{color:var(--c-purple)!important;border-color:var(--c-purple)}
body.rp .rp-board #bo_w #autosave_pop{top:60px;border:1px solid var(--c-line);box-shadow:0 12px 32px rgba(0,0,0,.08)}
body.rp .rp-board #bo_w .wr_content{border:0}
body.rp .rp-board #bo_w .wr_content > iframe,
body.rp .rp-board #bo_w .wr_content .cke{max-width:100%}
body.rp .rp-board #bo_w #char_count_desc{color:var(--c-grey);font-size:.85rem}
body.rp .rp-board #bo_w .bo_w_link{display:flex;align-items:flex-end;gap:12px}
body.rp .rp-board #bo_w .bo_w_link label{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:48px;color:var(--c-gold)}
body.rp .rp-board #bo_w .bo_w_link .frm_input{flex:1}
body.rp .rp-board #bo_w .bo_w_flie{padding:16px 0;border-bottom:1px solid var(--c-line)}
body.rp .rp-board #bo_w .bo_w_flie .file_wr{display:flex;align-items:center;gap:12px;margin:0;padding:0;height:auto;border:0;background:none}
body.rp .rp-board #bo_w .bo_w_flie .lb_icon{position:static;flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:44px;line-height:1;color:var(--c-gold);background:none;border:0}
body.rp .rp-board #bo_w .bo_w_flie .frm_file{flex:1;min-width:0;padding:8px 0;font-size:.9rem;color:var(--c-grey)}
body.rp .rp-board #bo_w .bo_w_flie .frm_file::file-selector-button{margin-right:14px;padding:10px 16px;color:var(--c-ink-2);font-family:var(--f-sans);font-size:.78rem;letter-spacing:.08em;background:var(--c-ivory);border:1px solid var(--c-line);border-radius:0;cursor:pointer}
body.rp .rp-board #bo_w .bo_w_flie .frm_input{margin-top:6px}
body.rp .rp-board #bo_w .file_del{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:var(--c-grey);font-size:.85rem}
body.rp .rp-board #bo_w .bo_w_select select{max-width:320px}
body.rp .rp-board #bo_w .btn_confirm{margin:32px 0 0}
body.rp .rp-board #bo_w .btn_confirm .btn_submit{min-width:180px;width:auto;height:auto}
body.rp .rp-board #bo_w a.btn_cancel{width:auto;height:auto;line-height:1.2}

/* --------------------------------------------------------------------------
   3. 바로결제 (html/ppay.php) — .rp-ppay
   (예약 Step3 과 같은 라인 입력 카드 스타일, 플러그인 bootstrap 위에 덮어쓰기)
   -------------------------------------------------------------------------- */
body.rp .rp-ppay{width:100%;max-width:880px;margin:0 auto;font-family:var(--f-sans);color:var(--c-ink)}
body.rp .rp-ppay #bo_v_con{margin:0;padding:0;min-height:0;color:var(--c-ink);letter-spacing:0}
body.rp .rp-ppay .wetoz{font-family:var(--f-sans);font-size:1rem;color:var(--c-ink)}
body.rp .rp-ppay .wetoz .form-step2{margin:0 0 20px;padding:clamp(24px,4.5vw,48px);background:var(--c-white);border:1px solid var(--c-line)}
body.rp .rp-ppay .wetoz .form-step2 h4{
  margin:0 0 4px;padding:0 0 18px;color:var(--c-ink);font-family:var(--f-serif-kr);font-size:clamp(1.25rem,2.2vw,1.6rem);
  font-weight:500;line-height:1.4;border-bottom:1px solid var(--c-ink)
}
/* 테이블 → 라벨/값 라인 행 */
body.rp .rp-ppay .wetoz .form-step2 .form-table,
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody{display:block;width:100%;margin:0;background:none;border:0}
body.rp .rp-ppay .wetoz .form-step2 .form-table colgroup{display:none}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;border-bottom:1px solid var(--c-line)}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr > th,
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr > td{display:block;width:auto;padding:18px 0;background:none!important;border:0!important;vertical-align:middle;line-height:1.5}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr > th{padding-right:16px;color:var(--c-grey);font-size:.76rem;font-weight:600;letter-spacing:.12em;text-align:left}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr > td{color:var(--c-ink)}
/* 연락처 행: 휴대폰/이메일 두 줄 */
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__contact > th:nth-of-type(2),
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__contact > td:nth-of-type(2){border-top:1px solid var(--c-line)!important}
/* 상품 · 금액 = 상품 카드 */
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__goods > td{padding:26px 0;font-family:var(--f-serif-kr);font-size:clamp(1.15rem,2vw,1.4rem);font-weight:500;line-height:1.5}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__total{background:var(--c-ivory);border-bottom:0;margin:0 calc(-1 * clamp(24px,4.5vw,48px));padding:0 clamp(24px,4.5vw,48px)}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__total > td strong{display:inline-flex;align-items:baseline;gap:.3em;color:var(--c-ink-2);font-size:.95rem;font-weight:500}
body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__total #str_tot_price{color:var(--c-purple);font-family:var(--f-serif-en);font-size:clamp(1.9rem,3.6vw,2.6rem);font-weight:500;line-height:1;letter-spacing:.01em}
/* 수량 */
body.rp .rp-ppay .wetoz .count_control{display:inline-flex;align-items:center;gap:0;color:var(--c-grey);font-size:.9rem}
body.rp .rp-ppay .wetoz .count_control button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;color:var(--c-ink-2);background:var(--c-white);border:1px solid var(--c-line);border-radius:0;font-size:.85rem;cursor:pointer;transition:border-color var(--t-fast),color var(--t-fast)}
body.rp .rp-ppay .wetoz .count_control button:hover{color:var(--c-purple);border-color:var(--c-purple)}
body.rp .rp-ppay .wetoz .count_control .num_input{width:56px;height:44px;margin:0 6px 0 0;padding:0;color:var(--c-ink);font-family:var(--f-serif-en);font-size:1.2rem;text-align:center;background:var(--c-white);border:0;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);border-radius:0}
body.rp .rp-ppay .wetoz .count_control .btn-cnt-minus + .num_input{margin-left:0}
/* 입력 */
body.rp .rp-ppay .wetoz .form-step2 .form-table .frm_input,
body.rp .rp-ppay .wetoz .form-step2 .form-table select.frm_input{width:100%;height:48px;padding:10px 2px;font-size:1rem;-webkit-transition:none;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}
body.rp .rp-ppay .wetoz .form-step2 .form-table select.frm_input{padding-right:28px}
body.rp .rp-ppay .wetoz .form-step2 .input-responsive{width:100%}
body.rp .rp-ppay .form-step2 .table .bx-email{display:inline-flex;align-items:center;gap:10px;vertical-align:top}
body.rp .rp-ppay .form-step2 .table .bx-email.head{width:calc(42% - 8px);margin-right:8px}
body.rp .rp-ppay .form-step2 .table .bx-email.tail{width:58%}
body.rp .rp-ppay .form-step2 .table .bx-email:after{display:none}
body.rp .rp-ppay .form-step2 .table .bx-email .frm_input{flex:1;width:auto;min-width:0}
body.rp .rp-ppay .form-step2 .table .bx-email.head .frm_input{width:auto}
body.rp .rp-ppay .form-step2 .table .bx-email span{flex:none;color:var(--c-grey-2);font-family:var(--f-serif-en);font-size:1.1rem}
/* 결제수단 칩 */
body.rp .rp-ppay .wetoz .form-step2 .input-radio-list{display:flex;flex-wrap:wrap;gap:8px}
body.rp .rp-ppay .wetoz .form-step2 .input-radio-list label{
  display:inline-flex;align-items:center;gap:10px;min-height:48px;margin:0;padding:0 18px;color:var(--c-ink-2);font-size:.94rem;font-weight:500;
  background:var(--c-white);border:1px solid var(--c-line);border-radius:0;cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),color var(--t-fast)
}
body.rp .rp-ppay .wetoz .form-step2 .input-radio-list label:hover{border-color:var(--c-purple)}
body.rp .rp-ppay .wetoz .form-step2 .input-radio-list label:has(input:checked){color:var(--c-purple);background:var(--c-purple-soft);border-color:var(--c-purple)}
body.rp .rp-ppay .wetoz .form-step2 .input-radio-list label:has(input:focus-visible){outline:2px solid var(--c-gold);outline-offset:2px}
/* 개인정보 안내 + 동의 */
body.rp .rp-ppay .wetoz .form-step2 .bx-agreement{height:200px;margin:20px 0 0;padding:20px 22px;overflow-y:auto;color:var(--c-grey);font-size:.88rem;line-height:1.8;background:var(--c-ivory);border:0}
body.rp .rp-ppay .wetoz .form-step2 .bx-agreement-check{margin:16px 0 0}
body.rp .rp-ppay .wetoz .form-step2 .bx-agreement-check label{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin:0;color:var(--c-ink);font-size:.95rem;font-weight:500;cursor:pointer}
/* 결제 버튼 */
body.rp .rp-ppay .wetoz .row{margin:0}
body.rp .rp-ppay .wetoz #display_pay_button{display:block;width:100%;float:none;padding:0;margin:8px 0 0}
body.rp .rp-ppay .wetoz #display_pay_button .btn-group{display:block;width:100%;float:none}
body.rp .rp-ppay .wetoz #display_pay_button .btn-action,
body.rp .rp-ppay .wetoz #display_pay_button .btn-action:focus,
body.rp .rp-ppay .wetoz #display_pay_button .btn-action:active{
  display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:60px;padding:0 2em;
  font-family:var(--f-sans);font-size:.92rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;
  color:var(--c-white);background:var(--c-purple);border:1px solid var(--c-purple);border-radius:0;box-shadow:none;outline:0;
  transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)
}
body.rp .rp-ppay .wetoz #display_pay_button .btn-action:hover{color:var(--c-white);background:var(--c-purple-deep);border-color:var(--c-purple-deep)}
body.rp .rp-ppay .wetoz #display_pay_button .btn-action:focus-visible{outline:2px solid var(--c-gold);outline-offset:3px}
body.rp .rp-ppay .wetoz #display_pay_process{padding:20px 0;color:var(--c-grey);font-size:.95rem;letter-spacing:.06em;text-align:center}

/* --------------------------------------------------------------------------
   4. 완료 카드 (html/request_clean_service.php) — .rp-done
   -------------------------------------------------------------------------- */
body.rp .rp-done{max-width:640px;margin:0 auto;padding:clamp(40px,7vw,80px) clamp(24px,5vw,56px);text-align:center;background:var(--c-white);border:1px solid var(--c-line)}
body.rp .rp-done__icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 0 28px;color:var(--c-purple);border:1px solid var(--c-gold);border-radius:50%}
body.rp .rp-done__icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.4}
body.rp .rp-done .rp-label{justify-content:center}
body.rp .rp-done .rp-label:after{content:"";width:28px;height:1px;background:currentColor}
body.rp .rp-done__title{margin:0 0 1rem;color:var(--c-ink);font-family:var(--f-serif-kr);font-size:clamp(1.5rem,3.4vw,2.2rem);font-weight:500;line-height:1.45;letter-spacing:-.01em}
body.rp .rp-done__desc{max-width:440px;margin:0 auto;color:var(--c-grey);font-size:.98rem;line-height:1.85}
body.rp .rp-done .rp-btns{justify-content:center;margin-top:36px}

/* --------------------------------------------------------------------------
   5. Responsive — 1480 / 1160 / 980 / 760 / 480
   -------------------------------------------------------------------------- */
@media (max-width:1160px){
  body.rp .rp-board{max-width:960px}
}
@media (max-width:980px){
  body.rp #find_info.rp-auth.cert{grid-template-columns:1fr;max-width:480px}
  body.rp .rp-board #bo_btn_top{flex-direction:column;align-items:stretch}
  body.rp .rp-board .btn_bo_user{justify-content:flex-end}
}
@media (max-width:760px){
  /* 회원 */
  body.rp .rp-auth .btn_confirm{justify-content:space-between}
  body.rp .rp-auth .btn_confirm .btn_submit{flex:1;min-width:0}
  body.rp .rp-auth #fregister h2,
  body.rp .member_cert_refresh.rp-auth #member_cert_refresh h2{padding:16px 60px 16px 18px;font-size:1.02rem}
  body.rp .rp-auth #fregister textarea{padding:16px 18px;height:160px}
  body.rp .rp-auth #fregister_private > div{padding:16px 18px;overflow-x:auto}
  body.rp .rp-auth #fregister_private table{min-width:420px}
  body.rp .rp-auth #sns_register{padding:16px 18px}

  /* 공지 리스트 */
  body.rp .rp-board .list_top_wrap{flex-direction:column;align-items:stretch}
  body.rp .rp-board .list_top_wrap > div{margin:0}
  body.rp .rp-board #bo_sch form{justify-content:stretch}
  body.rp .rp-board #bo_sch select{flex:none;width:104px}
  body.rp .rp-board #bo_sch form > div{flex:1;min-width:0}
  body.rp .rp-board #bo_sch .sch_input{flex:1;width:100%;min-width:0}
  body.rp .rp-board #bo_list .tbl_head01 tbody tr{gap:0 12px;min-height:68px}
  body.rp .rp-board #bo_list .tbl_head01 tbody tr:not(.bo_notice) .td_num2{display:none}
  body.rp .rp-board #bo_list .tbl_head01 tbody tr{padding:0 8px}
  body.rp .rp-board #bo_list .bo_notice .td_num2{width:auto}
  body.rp .rp-board #bo_list .tbl_head01 tbody td{padding:18px 0}
  body.rp .rp-board #bo_list .bo_tit{font-size:.98rem}
  body.rp .rp-board #bo_list .td_datetime{font-size:.98rem;letter-spacing:.02em}
  body.rp .rp-board #bo_list .tbl_head01 tbody tr:hover .bo_tit a{transform:none}
  body.rp .rp-board .pg_page,body.rp .rp-board .pg_current{min-width:40px;font-size:1.1rem}
  body.rp .rp-board .pg_start,body.rp .rp-board .pg_end{display:none}

  /* 공지 보기 */
  body.rp .rp-board #bo_v_top{flex-direction:column-reverse;align-items:stretch}
  body.rp .rp-board #bo_v_top ul{justify-content:flex-start}
  body.rp .rp-board #bo_v_top .bo_v_com{margin-left:0}
  body.rp .rp-board .bo_v_nb li .nb_tit{width:76px;letter-spacing:.14em}
  body.rp .rp-board .bo_v_nb li .nb_tit:after{display:none}
  body.rp .rp-board .bo_v_nb li > a{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}

  /* 바로결제 */
  body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr{grid-template-columns:1fr}
  body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr > th{padding:18px 0 0}
  body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr > td{padding:6px 0 18px}
  body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__goods > td{padding:6px 0 20px}
  body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__contact > td:nth-of-type(1){padding-bottom:18px}
  body.rp .rp-ppay .wetoz .form-step2 .form-table > tbody > tr.rp-ppay__contact > td:nth-of-type(2){border-top:0!important}
  body.rp .rp-ppay .form-step2 .table .bx-email.head,
  body.rp .rp-ppay .form-step2 .table .bx-email.tail{display:flex;width:100%;margin:0}
  body.rp .rp-ppay .form-step2 .table .bx-email.tail{margin-top:4px}
  body.rp .rp-ppay .form-step2 .table .bx-email.tail .frm_input{width:auto}
  body.rp .rp-ppay .wetoz .form-step2 .input-radio-list label{flex:1 1 calc(50% - 4px);justify-content:flex-start}
}
@media (max-width:480px){
  body.rp .rp-auth #register_form .register_form_inner ul{grid-template-columns:1fr}
  body.rp .rp-auth #register_form .register_form_inner li.half_input{grid-column:1/-1}
  body.rp .rp-auth .btn_confirm{gap:8px 20px}
  body.rp .rp-auth .btn_confirm .btn_submit,
  body.rp .rp-board .btn_submit{padding:0 1.4em;letter-spacing:.16em}
  body.rp #mb_login .mb_log_cate h2,
  body.rp #mb_login .mb_log_cate .join{font-size:1.08rem}
  body.rp .rp-board .btn_bo_user .btn,
  body.rp .rp-board #bo_v_top .btn{padding:0 12px;letter-spacing:.06em}
  body.rp .rp-board #bo_v_info .info_table table thead tr th p:not(:last-of-type){margin-right:12px;padding-right:12px}
  body.rp .rp-board #bo_v_info .info_table table tbody tr th{width:56px}
  body.rp .rp-board #bo_w .btn_confirm{justify-content:space-between}
  body.rp .rp-board #bo_w .btn_confirm .btn_submit{flex:1;min-width:0}
  body.rp .rp-ppay .wetoz .form-step2 .input-radio-list label{flex-basis:100%}
  body.rp .rp-done .rp-btns{flex-direction:column;align-items:stretch}
}

@media (prefers-reduced-motion:reduce){
  body.rp .rp-board #bo_list .tbl_head01 tbody tr:hover .bo_tit a,
  body.rp .rp-board .bo_v_nb li > a:hover{transform:none}
}
