@charset "utf-8";
/* haesol_dev · 해솔글로벌 개발 사이트 · 공통 스타일 */

:root{
  --navy:#0B1220; --navy2:#111C33; --blue:#2E6BFF; --blue2:#4C8DFF;
  --ink:#111827; --gray:#6B7280; --line:#E5E7EB; --bg:#F6F8FB;
  --latin:'Space Grotesk','Noto Sans KR',sans-serif;
  --sans:'Noto Sans KR',sans-serif;
  --rad:14px;
}

/* ── 기본 ─────────────────────────────────────── */
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);font-size:16px;line-height:1.65;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;word-break:keep-all}
h1,h2,h3,h4,p,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;vertical-align:top;border:0}
/* 게시판·일반페이지 본문에 붙여넣은 넓은 표가 모바일에서 화면을 밀지 않게 한다 */
#bo_v_atc{overflow-x:auto}
#bo_v_atc table{max-width:100%}
table{border-collapse:collapse;width:100%}
button{font-family:inherit;cursor:pointer}
input,select,textarea{font-family:inherit;font-size:15px}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
#skip_to_container a{position:absolute;left:-9999px;top:0;z-index:2000;background:var(--blue);color:#fff;padding:10px 18px}
#skip_to_container a:focus{left:0}
.sound_only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* 팝업레이어(관리자 > 팝업레이어관리) — 제목은 읽기전용으로 감추고 창만 보이게 한다 */
#hd_pop{position:relative;z-index:1000;margin:0 auto;height:0}
#hd_pop h2{position:absolute;width:0;height:0;font-size:0;line-height:0;overflow:hidden}
.hd_pops{position:absolute;border:1px solid var(--line);background:#fff;border-radius:var(--rad);overflow:hidden;box-shadow:0 24px 60px -30px rgba(11,18,32,.55)}
.hd_pops img{max-width:100%}
.hd_pops_con{overflow:auto}
.hd_pops_footer{position:relative;padding:0;background:var(--navy);color:#fff;text-align:left}
.hd_pops_footer:after{content:"";display:block;clear:both}
.hd_pops_footer button{padding:11px 14px;border:0;background:none;color:#fff;font-size:13px;cursor:pointer}
.hd_pops_footer .hd_pops_reject{background:var(--navy);text-align:left}
.hd_pops_footer .hd_pops_close{position:absolute;top:0;right:0;background:var(--blue)}
/* 스크롤 등장 효과.
   ★ .js 를 앞에 두는 것은 일부러입니다 — 자바스크립트가 꺼져 있거나 오류로 멈춰도
     본문이 사라지지 않고 그대로 보이게 하려는 안전장치입니다. (head.sub.php 가 .js 를 붙입니다) */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* ── 버튼 ─────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;border-radius:999px;font-size:15px;font-weight:500;border:1px solid transparent;transition:.25s;line-height:1.2}
.btn.blue{background:var(--blue);color:#fff}
.btn.blue:hover{background:#1f56e0;box-shadow:0 8px 24px rgba(46,107,255,.35)}
.btn.ghost{border-color:rgba(255,255,255,.45);color:#fff}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
.btn.line{border-color:var(--line);color:var(--ink);background:#fff}
.btn.line:hover{border-color:var(--blue);color:var(--blue)}
.btn.sm{padding:9px 18px;font-size:14px}
.btn.big{padding:16px 34px;font-size:17px}
.btn.wide{width:100%}

/* ── 헤더 ─────────────────────────────────────── */
.hsd-hd{position:fixed;top:0;left:0;right:0;z-index:1000;transition:background .3s,box-shadow .3s;background:transparent}
.hsd-hd .wrap{display:flex;align-items:center;gap:34px;height:76px;max-width:1400px}
.hsd-hd.solid,.hsd-hd.scrolled{background:rgba(11,18,32,.96);box-shadow:0 2px 20px rgba(0,0,0,.25);backdrop-filter:blur(8px)}
.hsd-hd .logo{display:flex;align-items:center;gap:10px;color:#fff}
.hsd-hd .logo .mark{width:12px;height:12px;border-radius:3px;background:linear-gradient(135deg,var(--blue),var(--blue2));box-shadow:0 0 12px rgba(46,107,255,.8)}
.hsd-hd .logo .en{font-family:var(--latin);font-weight:700;font-size:22px;letter-spacing:.08em}
.hsd-hd .logo .ko{font-size:12px;color:rgba(255,255,255,.55);margin-top:4px}
.hsd-hd .gnb{flex:1}
.hsd-hd .gnb>ul{display:flex;justify-content:center;gap:6px}
.hsd-hd .gnb>ul>li{position:relative}
.hsd-hd .gnb>ul>li>a{display:block;padding:26px 18px;color:rgba(255,255,255,.85);font-weight:500;font-size:16px}
.hsd-hd .gnb>ul>li:hover>a{color:#fff}
.hsd-hd .gnb>ul>li>a::after{content:'';display:block;height:2px;background:var(--blue);transform:scaleX(0);transition:.25s;margin-top:4px}
.hsd-hd .gnb>ul>li:hover>a::after{transform:scaleX(1)}
.hsd-hd .gnb2{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);min-width:180px;background:#0F1930;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;opacity:0;visibility:hidden;transition:.25s;box-shadow:0 18px 40px rgba(0,0,0,.4)}
.hsd-hd .gnb>ul>li:hover .gnb2{opacity:1;visibility:visible;transform:translate(-50%,0)}
.hsd-hd .gnb2 a{display:block;padding:10px 14px;border-radius:8px;color:rgba(255,255,255,.75);font-size:14.5px}
.hsd-hd .gnb2 a:hover{background:rgba(46,107,255,.18);color:#fff}
.hsd-hd .hd-side{display:flex;align-items:center;gap:18px}
.hsd-hd .util{display:flex;gap:14px}
.hsd-hd .util a{font-size:13.5px;color:rgba(255,255,255,.6)}
.hsd-hd .util a:hover{color:#fff}
.hsd-hd .btn.cta{background:var(--blue);color:#fff;padding:11px 22px;font-size:14.5px}
.hsd-hd .btn.cta:hover{background:#1f56e0}
.hsd-hd .ham{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px}
.hsd-hd .ham span{width:24px;height:2px;background:#fff;border-radius:2px}

/* ── 모바일 메뉴 ─────────────────────────────── */
.hsd-dim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1100}
.hsd-mnav{position:fixed;top:0;right:-320px;width:300px;height:100%;background:var(--navy);z-index:1200;transition:right .3s;overflow-y:auto;padding:0 0 30px;color:#fff}
.hsd-mnav.open{right:0}
.hsd-mnav .mhead{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.1)}
.hsd-mnav .mhead .en{font-family:var(--latin);font-weight:700;letter-spacing:.1em}
.hsd-mnav .close{background:none;border:0;color:#fff;font-size:26px;line-height:1}
.hsd-mnav .mlist>li{border-bottom:1px solid rgba(255,255,255,.07)}
.hsd-mnav .mlist>li>a{display:block;padding:15px 22px;font-weight:500}
.hsd-mnav .mlist ul{background:rgba(255,255,255,.04);padding:6px 0}
.hsd-mnav .mlist ul a{display:block;padding:10px 34px;font-size:14px;color:rgba(255,255,255,.7)}
.hsd-mnav .mutil{display:flex;gap:16px;padding:18px 22px 0}
.hsd-mnav .mutil a{font-size:13.5px;color:rgba(255,255,255,.65)}
.hsd-mnav .mtel{display:block;margin:16px 22px 0;text-align:center;border:1px solid var(--blue);border-radius:999px;padding:11px;color:var(--blue2);font-family:var(--latin);font-weight:700}

/* ── 서브페이지 상단 ─────────────────────────── */
.hsd-subhero{background:
  radial-gradient(at 15% 40%, #16306B 0, transparent 55%),
  radial-gradient(at 85% 10%, #123C8F 0, transparent 45%), var(--navy);
  color:#fff;padding:150px 0 64px}
.hsd-subhero .crumb{font-size:12.5px;color:rgba(255,255,255,.5);margin-bottom:18px}
.hsd-subhero .crumb a{color:inherit}
.hsd-subhero .crumb span::before,.hsd-subhero .crumb .g::before{content:'/';margin:0 8px;opacity:.5}
.hsd-subhero .lb{display:block;font-family:var(--latin);font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--blue2);margin-bottom:10px}
.hsd-subhero h1{font-size:clamp(28px,3.4vw,42px);font-weight:700;letter-spacing:-.01em}
.hsd-subhero p{margin-top:14px;color:rgba(255,255,255,.66);max-width:640px}
.hsd-subtabs{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:900}
.hsd-subtabs ul{display:flex;gap:4px;overflow-x:auto}
.hsd-subtabs a{display:block;padding:16px 22px;font-size:15px;color:var(--gray);white-space:nowrap;border-bottom:2px solid transparent}
.hsd-subtabs a.on{color:var(--blue);border-bottom-color:var(--blue);font-weight:700}
.hsd-subtabs a:hover{color:var(--ink)}

/* ── 콘텐츠 영역 ─────────────────────────────── */
.hsd-content{padding:56px 0 110px;background:#fff;min-height:40vh}

/* ── 그룹 페이지 ─────────────────────────────── */
.hsd-grp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px}
.hsd-grp-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.hsd-grp-head h2{font-size:20px}
.hsd-grp-head .more{font-size:13px;color:var(--gray)}
.empty_list{padding:60px 0;text-align:center;color:var(--gray)}

/* ── 푸터 ─────────────────────────────────────── */
.hsd-ft{background:var(--navy);color:rgba(255,255,255,.62);font-size:14px}
.hsd-ft .cols{display:grid;grid-template-columns:minmax(0,1.7fr) .8fr minmax(0,1fr);gap:40px;padding:64px 0 46px}
.hsd-ft .logo{display:flex;align-items:baseline;gap:10px;margin-bottom:18px}
.hsd-ft .logo .en{font-family:var(--latin);font-weight:700;font-size:22px;letter-spacing:.08em;color:#fff}
.hsd-ft .logo .ko{font-size:13px}
.hsd-ft p{line-height:1.9}
.hsd-ft h4{color:#fff;font-size:15px;margin-bottom:16px}
.hsd-ft li{margin-bottom:9px}
.hsd-ft a:hover{color:#fff}
.hsd-ft .tel{font-family:var(--latin);font-size:20px;font-weight:700;color:var(--blue2)}
.hsd-ft .copy{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.1);padding:22px 0;font-size:13px}
#hsd-top{position:fixed;right:26px;bottom:26px;z-index:950;width:46px;height:46px;border-radius:50%;border:0;background:var(--navy2);color:#fff;font-size:18px;opacity:0;visibility:hidden;transition:.3s;box-shadow:0 6px 18px rgba(0,0,0,.25)}
#hsd-top.show{opacity:1;visibility:visible}
#hsd-top:hover{background:var(--blue)}

/* ── 반응형 ──────────────────────────────────── */
@media (max-width:1024px){
  .hsd-hd .gnb{display:none}
  .hsd-hd .util{display:none}
  .hsd-hd .ham{display:flex;margin-left:auto}
  .hsd-hd .wrap{gap:16px}
  .hsd-hd .hd-side{margin-left:auto}
  .hsd-hd .btn.cta{display:none}
  .hsd-ft .cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hsd-grp{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:768px){
  body{font-size:15px}
  .wrap{padding:0 18px}
  .hsd-hd .wrap{height:64px}
  .hsd-subhero{padding:118px 0 46px}
  .hsd-content{padding:40px 0 80px}
  .hsd-ft .cols{grid-template-columns:minmax(0,1fr);gap:26px;padding:44px 0 30px}
}

/* ── 코어 공용 폼 (그누보드가 그리는 화면들) ─────────────────────────
   회원정보수정·비밀번호찾기·쪽지·가입양식처럼 테마가 다시 그리지 않는 화면이
   아래 클래스를 씁니다. 빠지면 입력칸 너비와 표 모양이 없어 화면이 흐트러집니다.
   테두리·배경은 .frm_input(회원/게시판 스킨)이 맡으므로 여기서는 크기만 정합니다. */
/* box-sizing 을 함께 주는 것은 일부러입니다 — 이 테마에는 전역 box-sizing 이 없어서,
   width:100% 에 좌우 padding 이 더해지면 입력칸이 칸 밖으로 삐져나갑니다. */
input,select,textarea,button{box-sizing:border-box}
.full_input{width:100%;box-sizing:border-box}
.half_input{width:49%;box-sizing:border-box}
.twopart_input{width:140px;box-sizing:border-box;max-width:100%}
.left_input{margin-right:6px}
.margin_input{margin-bottom:8px}
.form_01 .frm_label{display:block;margin-bottom:8px;color:var(--gray);font-size:12px;letter-spacing:.06em}
.tbl_frm01{margin:0 0 24px}
.tbl_frm01 table{width:100%;border-collapse:collapse}
.tbl_frm01 th{width:150px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--bg);color:var(--ink);font-weight:500;font-size:14px;text-align:left}
.tbl_frm01 td{padding:12px 16px;border-bottom:1px solid var(--line)}
.tbl_frm01 textarea{width:100%;min-height:180px}
.tbl_wrap{width:100%;overflow-x:auto}
.tbl_wrap table{width:100%;border-collapse:collapse;font-size:14px}
.tbl_wrap caption{position:absolute;width:0;height:0;font-size:0;overflow:hidden}
.tbl_wrap th{padding:12px 14px;border-bottom:1px solid var(--line);background:var(--bg);font-weight:500;text-align:left}
.tbl_wrap td{padding:12px 14px;border-bottom:1px solid var(--line)}

/* 로그인·가입 화면 바깥 틀 (skin/member/hsd_member 가 쓰는 감싸개) */
.join-wrap{max-width:760px;margin:0 auto;padding:0 20px}
.hsd-join .terms{margin-top:6px}
.hsd-join .terms .it{margin-top:16px}
/* 자동등록방지 입력칸 — 코어가 frm_input 없이 내보내므로 여기서 모양을 맞춘다 */
.captcha_box{width:130px;height:48px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font-size:15px;background:#fff}
.captcha_box:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(46,107,255,.12)}

/* ── 좁은 화면(360px 급) 가로 넘침 방지 · 2026-08-31 점검 ─────────────────
   그누보드 코어 화면(새글모음·FAQ·자동등록방지·상품검색)은 고정폭이라
   갤럭시 계열 360px 기기에서 옆으로 밀린다. 이 블록을 지우면 증상이 돌아온다. */
#new_sch,#faq_sch{min-width:0;max-width:100%;box-sizing:border-box}
#pw_confirm,.mbskin,#info_fs{max-width:100%;min-width:0}
#info_fs input,#info_fs .frm_input,#pw_confirm input,.mbskin input{max-width:100%;min-width:0;box-sizing:border-box}
/* 320px 급 좁은 기기 — 한 낱말이 칸보다 길면 그때만 끊어 준다.
   word-break:keep-all 로 한글 단어는 그대로 두되, 넘치는 것보다는 끊는 편이 낫다. */
body{overflow-wrap:break-word}
#new_sch form,#faq_sch form{width:100%;max-width:100%;flex-wrap:wrap}
#new_sch select,#new_sch input,#new_sch .frm_input,
#faq_sch select,#faq_sch input,#faq_sch .frm_input{max-width:100%}
#captcha{max-width:100%}
#captcha img,#captcha audio,#captcha_audio{max-width:100%}
#ssch_q,.ssch_input{max-width:100%}
@media (max-width:480px){
  #new_sch,#faq_sch{padding:18px}
}

/* ── 모바일 입력창 확대 방지 · 2026-08-31 점검 ────────────────────────────
   iOS 사파리는 글자가 16px 보다 작은 입력칸을 누르면 화면을 확대해 버리고,
   사용자가 손으로 되돌려야 한다. 휴대폰에서만 글자를 16px 로 올려 막는다.
   (칸의 높이·테두리·색은 그대로이므로 디자인은 유지된다)
   화면별 규칙(.xx-auth .fld input 등)이 더 세서 !important 로 눌러 둔다 —
   이 한 줄을 빼면 로그인·가입·검색칸에서 확대가 다시 일어난다. */
@media (max-width:768px){
  input[type=text],input[type=password],input[type=email],input[type=tel],
  input[type=number],input[type=search],input[type=url],input[type=date],
  input[type=time],input[type=datetime-local],input[type=month],input[type=week],
  input:not([type]),select,textarea{font-size:16px!important}
}

/* ── 폼 입력칸 한 벌로 통일 · 2026-08-31 점검 ──────────────────────────────
   로그인 · 회원가입 · 비밀번호찾기 · 자동등록방지 칸의 높이·테두리·둥글기·안여백이
   화면마다 달랐다(로그인 50px 인데 가입은 다른 값, 비밀번호찾기는 아예 브라우저 기본).
   ★ 칸 모양을 바꾸려면 이 블록만 고치면 네 화면이 함께 따라간다. */
#mb_login input[type=text],#mb_login input[type=password],#mb_login input[type=email],
#mb_login input[type=tel],#mb_login input[type=number],#mb_login select,
.auth input[type=text],.auth input[type=password],.auth input[type=email],.auth input[type=tel],.auth select,
.hsd-auth input[type=text],.hsd-auth input[type=password],.hsd-auth input[type=email],.hsd-auth select,
#register_form input[type=text],#register_form input[type=password],#register_form input[type=email],
#register_form input[type=tel],#register_form input[type=number],#register_form select,#register_form .frm_input,
#find_info input[type=text],#find_info input[type=email],#find_info select,#find_info .frm_input,
#pw_confirm input[type=password],#pw_confirm .frm_input,
#captcha.m_captcha #captcha_key,#captcha #captcha_key,#captcha .captcha_box,#captcha_key,.captcha_box{
  box-sizing:border-box;height:50px;
  border:1px solid var(--line);border-radius:12px;
  padding:0 15px;font-size:16px;line-height:normal;
  background:#fff;color:inherit;
  -webkit-appearance:none;outline:0;
  transition:border-color .2s}
#mb_login select,.auth select,.hsd-auth select,#register_form select,#find_info select{
  -webkit-appearance:menulist;appearance:menulist;padding-right:8px}
#mb_login textarea,.auth textarea,.hsd-auth textarea,#register_form textarea,#find_info textarea{
  box-sizing:border-box;width:100%;min-height:150px;
  border:1px solid var(--line);border-radius:12px;
  padding:12px 15px;font-size:16px;line-height:1.7;
  background:#fff;color:inherit;-webkit-appearance:none;outline:0}
/* 자동등록방지 칸은 좁으니 폭만 따로 둔다 */
#captcha.m_captcha #captcha_key,#captcha #captcha_key,#captcha .captcha_box,#captcha_key,.captcha_box{width:120px;text-align:center;letter-spacing:.2em}

/* 폼을 감싼 fieldset 에 브라우저 기본 테두리(2px groove)가 남아 회색 홈 박스가 그려졌다.
   로그인·비밀번호찾기·자동등록방지에서 특히 눈에 띄었다. (2026-08-31 점검) */
#mb_login fieldset,.auth fieldset,.hsd-auth fieldset,#fregisterform fieldset,
#register_form fieldset,#find_info fieldset,#pw_confirm fieldset,
fieldset#login_fs,fieldset#info_fs,fieldset#captcha,fieldset.captcha,fieldset.srch,
#fregister fieldset,fieldset.fregister_agree{
  border:0;margin:0;padding:0;min-width:0}
/* 약관 동의 체크줄은 위쪽 여백만 남긴다 (2026-09-01 점검) */
#fregister fieldset.fregister_agree,fieldset.fregister_agree{margin-top:14px}
#mb_login legend,.auth legend,.hsd-auth legend,#register_form legend,#find_info legend{padding:0}

/* ── 칸 옆 버튼·자동등록방지 줄 정렬 · 2026-08-31 점검 ─────────────────────
   '주소 검색' 버튼이 우편번호 칸보다 낮고 한 줄 아래로 밀려 있었고,
   자동등록방지는 그림·입력칸·새로고침 버튼의 높이와 윗선이 제각각이었다.
   칸 높이(50px)에 맞춰 한 줄로 가지런히 세운다. */
#register_form .btn_frmline,#find_info .btn_frmline,#mb_login .btn_frmline,
.auth .btn_frmline,.hsd-auth .btn_frmline,#register_form button.btn_frmline{
  box-sizing:border-box;height:50px;padding:0 16px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  vertical-align:top;line-height:1;white-space:nowrap}
#fregisterform #captcha,#captcha{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%}
#fregisterform #captcha #captcha_img,#captcha #captcha_img,#captcha img{vertical-align:middle;border-radius:12px;max-width:100%}
/* #captcha_reload 는 브라우저 기본 모양(회색 그라데이션)이라 테마와 겉돌았다 (2026-08-31 점검) */
#fregisterform #captcha #captcha_reload,#captcha #captcha_reload,#captcha button{text-indent:0;overflow:visible;width:auto;white-space:nowrap;background-image:none;background:#fff;color:inherit;border:1px solid var(--line);cursor:pointer;font-size:14px;
  box-sizing:border-box;height:50px;min-width:50px;padding:0 12px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;line-height:1}
#captcha #captcha_info,#captcha .captcha_info{flex:1 1 100%;margin:6px 0 0;font-size:13px;line-height:1.6}
#captcha #captcha_audio,#captcha audio{flex:1 1 100%;max-width:100%;margin:0 0 6px}
/* legend 가 섹션 제목(h2)과 같은 '자동등록방지' 를 한 번 더 찍어 두 번 나왔다 → 읽기용으로만 남긴다 */
#captcha legend{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* 안내 문구는 버튼 옆에 끼어 뒤엉켰다 → 늘 아랫줄 전체를 쓰게 한다 */
#fregisterform #captcha #captcha_info,#captcha #captcha_info,#captcha .captcha_info{flex:0 0 100%;min-width:100%}
#captcha #captcha_reload span{display:none}
/* 그누보드 가입양식은 두 칸짜리 줄의 <li> 에도 half_input 클래스를 붙인다.
   입력칸 모양 규칙(.half_input)이 그 <li> 에까지 걸려 비밀번호 줄만 네모 상자가 그려졌다.
   줄을 감싸는 <li> 에서는 칸 모양을 없앤다. (2026-08-31 점검) */
#register_form li.half_input,#register_form li.full_input,#register_form li.twopart_input,
#register_form li.margin_input,#register_form li.left_input,#register_form li.frm_input{
  border:0;background:none;height:auto;padding:0;border-radius:0;box-shadow:none}
/* 반폭 줄(half_input) 안의 입력칸은 그 줄을 꽉 채우게만 한다.
   ★ 줄의 배치(2열이냐 한 줄이냐)는 테마 디자인이므로 건드리지 않는다 —
     display·float·width 를 손댔더니 PC 에서 섹션 카드가 겹쳐 무너졌다. (2026-08-31 점검) */
#register_form li.half_input>input,#register_form li.half_input>.frm_input{width:100%}
/* 우편번호 칸이 줄 전체를 차지해 '주소 검색' 버튼이 아랫줄로 밀렸다.
   칸을 줄이고 버튼을 옆에 붙인다. (2026-08-31 점검) */
#register_form #reg_mb_zip,#register_form input[name=mb_zip],#find_info input[name=mb_zip]{
  width:150px;max-width:48%;display:inline-block;vertical-align:middle;margin-right:8px}
#register_form #reg_mb_zip+.btn_frmline,#register_form input[name=mb_zip]+.btn_frmline{vertical-align:middle}

/* 라벨 옆 도움말 단추(.tooltip_icon)는 코어가 '설명보기' 글자만 내보내고 아이콘은 테마 몫이다.
   그대로 두면 테마마다 빈 동그라미(20×20)이거나 아예 0×0 이라 안 보였다.
   물음표 아이콘으로 통일한다. (2026-08-31 점검) */
#register_form .tooltip_icon,.tooltip_icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:18px;height:18px;min-width:18px;padding:0;margin-left:5px;
  border:1px solid var(--line);border-radius:50%;background:none;
  font-size:0;line-height:1;vertical-align:middle;cursor:pointer}
#register_form .tooltip_icon::before,.tooltip_icon::before{
  content:"?";font-size:11px;font-weight:700;line-height:1;color:inherit}
