@charset "utf-8";/* 초기화 */
html { overflow-y: scroll; }
body { margin: 0; padding: 0; font-size: 14px; font-family: 'Pretendard','Noto Sans KR','Malgun Gothic',dotum,sans-serif; color: #111827; background: #fff; letter-spacing: -.02em; line-height: 1.6; }
html, h1, h2, h3, h4, h5, h6, form, fieldset, img { margin: 0; padding: 0; border: 0; }
h1, h2, h3, h4, h5, h6 { font-size: 1em; font-family: inherit; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
ul { margin: 0; padding: 0; list-style: none; }
ol, li, dl, dt, dd { margin: 0; padding: 0; }
legend { position: absolute; margin: 0; padding: 0; font-size: 0; line-height: 0; text-indent: -9999em; overflow: hidden; }
label, input, button, select, img { vertical-align: middle; }
input, button, textarea, select { margin: 0; padding: 0; font-family: inherit; font-size: 1em; }
button { cursor: pointer; }
select { margin: 0; }
p { margin: 0; padding: 0; word-break: keep-all; }
hr { display: none; }
pre { overflow-x: auto; font-size: 1.1em; }
a { color: inherit; text-decoration: none; transition: .2s ease; }
*,:after,:before { box-sizing: border-box; }
/* 입력 */
input[type=text], input[type=password], input[type=tel], input[type=email], textarea, select { outline: none; transition: .2s ease; }
input[type=text]:focus, input[type=password]:focus, input[type=tel]:focus, input[type=email]:focus, textarea:focus, select:focus { box-shadow: 0 0 0 4px rgba(52,192,236,.1); border-color: #34c0ec !important; }
.placeholdersjs { color: #aaa !important; }
/* PC 기본 폭 */
#hd, #wrapper, #ft { min-width: 1200px; }
#hd_pop, #hd_wrapper, #tnb .inner, #gnb .gnb_wrap, #container_wr, #ft_wr { width: 1200px; }
/* 팝업레이어 */
#hd_pop { z-index: 999999999; position: relative; margin: 0 auto; width: 1200px; height: 0; }
#hd_pop h2 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
.hd_pops { position: absolute; border: 1px solid #eef2f7; background: #fff; border-radius: 20px; overflow: hidden; box-shadow: 0 20px 50px rgba(15,23,42,.12); }
.hd_pops img { max-width: 100%; }
.hd_pops_footer { padding: 0; background: #111827; color: #fff; text-align: left; position: relative; }
.hd_pops_footer:after { display: block; visibility: hidden; clear: both; content: ""; }
.hd_pops_footer button { padding: 12px 16px; border: 0; color: #fff; font-weight: 600; }
.hd_pops_footer .hd_pops_reject { background: #111827; text-align: left; }
.hd_pops_footer .hd_pops_close { background: #374151; position: absolute; top: 0; right: 0; }
/* 상단 레이아웃 */
#hd { background: #fff; border-bottom: 1px solid #eef2f7; }
#hd_h1 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#hd_wrapper { position: relative; margin: 0 auto; }
#hd_wrapper:after { display: block; visibility: hidden; clear: both; content: ""; }
#logo { float: left; padding: 30px 0 0; }
.hd_sch_wr { float: left; padding: 30px 0; width: 445px; margin-left: 65px; }
#hd_sch h3 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#hd_sch { border: 1px solid #e5e7eb; border-radius: 999px; overflow: hidden; background: #f8fafc; }
#hd_sch #sch_str { float: left; width: 385px; height: 45px; padding-left: 18px; border-radius: 999px 0 0 999px; background: transparent; border: 0; border-right: 0; font-size: 14px; color: #111827; }
#hd_sch #sch_submit { float: left; width: 60px; height: 45px; border: 0; background: transparent; color: #111827; border-radius: 0 999px 999px 0; cursor: pointer; font-size: 16px; }
#tnb { border-bottom: 1px solid #eef2f7; margin: 0 auto; background: #fff; }
#tnb:after { display: block; visibility: hidden; clear: both; content: ""; }
#tnb .inner { margin: 0 auto; }
#hd_define, #hd_qnb { float: left; }
#hd_qnb { float: right; text-align: right; }
#hd_define:after, #hd_qnb:after { display: block; visibility: hidden; clear: both; content: ""; }
#hd_define li, #hd_qnb li { float: left; font-size: 13px; line-height: 14px; border-right: 1px solid #e5e7eb; position: relative; text-align: center; margin: 14px 10px 14px 0; padding-right: 10px; }
#hd_define li:last-child, #hd_qnb li:last-child { padding-right: 0; margin-right: 0; border-right: 0; }
#hd_define li a, #hd_qnb li a { display: inline-block; color: #6b7280; font-weight: 500; }
#hd_define li.active a, #hd_define li a:hover, #hd_qnb li a:hover { color: #111827; }
.hd_login { position: absolute; right: 0; top: 45px; }
.hd_login > li { float: left; position: relative; margin: 0 5px; }
.hd_login > li.login a { color: #111827; padding: 9px 14px; border-radius: 999px; border: 1px solid #e5e7eb; font-weight: 700; }
.hd_login > li.login a:hover { background: #111827; border-color: #111827; color: #fff; }
.hd_login > li a { color: #111827; }
.hd_login > li.shop_login { margin-top: -15px; }
.hd_login .fa-shopping-cart { font-size: 1.6em; }
.hd_login .count { display: inline-flex; align-items: center; justify-content: center; position: absolute; top: -7px; right: -10px; padding: 0 5px; border-radius: 999px; background: #ef4444; color: #fff; min-width: 16px; height: 16px; font-size: 11px; font-weight: 800; line-height: 16px; }
/* 메뉴 */
#hd_menu { position: relative; background: #fff; width: 1200px; margin: 0 auto; border-bottom: 1px solid #eef2f7; }
#hd_menu:after { display: block; visibility: hidden; clear: both; content: ""; }
#hd_menu button#menu_open { float: left; width: 265px; height: 54px; border: 0; background: #111827; text-align: left; color: #fff; padding: 0 22px; font-weight: 800; font-size: 15px; border-radius: 18px 18px 0 0; }
.hd_menu { float: left; display: inline-block; width: 935px; font-size: 14px; }
.hd_menu:after { display: block; visibility: hidden; clear: both; content: ""; }
.hd_menu li { float: left; width: 20%; padding: 14px 0; line-height: 26px; text-align: center; }
.hd_menu li a { display: block; color: #111827; border-right: 0; font-weight: 700; }
.hd_menu li a:hover { color: #34c0ec; }
/* 사이드 메뉴 */
#side_menu { height: 100%; position: fixed; top: 0; right: 0; background: #fff; border-left: 1px solid #eef2f7; z-index: 120; padding-left: 50px; box-shadow: -10px 0 40px rgba(15,23,42,.08); }
#quick { position: absolute; top: 50%; left: 0; width: 50px; transform: translateY(-50%); }
#quick li { position: relative; }
#quick li button { width: 50px; height: 50px; border: 0; font-size: 18px; background: #fff; color: #6b7280; transition: .2s ease; }
#quick li button:hover, .btn_sm_on i { color: #34c0ec; }
#quick .qk_tit { display: none; position: absolute; top: 10px; right: 60px; white-space: pre; padding: 0 14px; line-height: 30px; background: #111827; color: #fff; font-size: 12px; border-radius: 999px; box-shadow: 0 10px 24px rgba(15,23,42,.14); }
#quick .qk_tit:after { content: ""; position: absolute; top: 10px; right: -8px; display: inline-block; width: 0; height: 0; border-style: solid; border-top: 5px solid transparent; border-bottom: 5px solid transparent; border-left: 5px solid #111827; color: transparent; }
#quick li:hover .qk_tit { display: block; }
#tabs_con { height: 100%; text-align: left; }
.side_mn_wr1, .side_mn_wr2, .side_mn_wr3, .side_mn_wr4 { display: none; width: 230px; overflow-y: auto; height: 100%; }
.qk_con { display: none; position: relative; width: 230px; height: 100%; background: #fff; border-left: 1px solid #eef2f7; }
.qk_con h2.s_h2 { position: relative; margin: 0; font-size: 17px; padding: 18px; border-bottom: 1px solid #eef2f7; color: #111827; font-weight: 800; }
.qk_con h2.s_h2 span { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; padding: 2px 8px; border-radius: 999px; text-align: center; background: rgba(52,192,236,.1); color: #34c0ec; font-size: 12px; font-weight: 800; vertical-align: middle; }
.qk_con_wr { padding: 0; height: 100%; overflow-y: auto; }
.qk_con_wr .btn_side_shop { position: relative; width: 100%; height: 34px; background: none; border: 0; text-align: left; font-weight: 700; }
.qk_con_wr .btn_side_shop span { position: absolute; top: 5px; right: 0; padding: 0 7px; line-height: 20px; border-radius: 999px; color: #fff; background: #ef4444; font-size: 12px; }
.qk_con_wr .con_close { position: fixed; top: 0; right: 230px; width: 50px; height: 50px; border: 0; background: none; font-size: 25px; color: #d1d5db; }
.qk_con_wr .con_close:hover { color: #111827; }
.qk_con_wr .side_tnb { padding: 25px; }
.qk_con_wr .side_tnb li a { display: block; line-height: 28px; color: #4b5563; padding: 6px 0; font-weight: 600; }
.qk_con_wr .side_tnb li:hover a { color: #34c0ec; }
/* 카테고리 */
#category { display: none; position: absolute; border: 1px solid #eef2f7; width: 100%; background: #fff; z-index: 1000; box-shadow: 0 18px 50px rgba(15,23,42,.1); border-radius: 0 0 24px 24px; overflow: hidden; }
#category h2 { font-size: 18px; padding: 18px 22px; border-bottom: 1px solid #eef2f7; color: #111827; font-weight: 800; }
#category ul:after { display: block; visibility: hidden; clear: both; content: ""; }
#category ul li:nth-child(5n+1) { border-left: 0; }
#category .cate_li_1 { float: left; width: 20%; min-height: 150px; padding: 22px; border-left: 1px solid #eef2f7; }
#category .cate_li_1_a { font-size: 16px; display: block; position: relative; margin-bottom: 12px; font-weight: 800; color: #111827; }
#category .cate_li_1_a:hover { color: #34c0ec; }
#category .cate_li_2 { line-height: 2em; }
#category .cate_li_2 a { color: #6b7280; font-size: 14px; }
#category .cate_li_2 a:hover { color: #111827; }
#category .close_btn { position: absolute; top: 0; right: 0; width: 56px; height: 56px; background: #fff; color: #9ca3af; border: 0; vertical-align: top; font-size: 18px; }
#category .close_btn:hover { color: #111827; }
#category_all_bg { display: none; background: rgba(15,23,42,.25); width: 100%; height: 100%; position: fixed; left: 0; top: 0; z-index: 999; backdrop-filter: blur(2px); }
#category .no-cate { text-align: center; padding: 20px; color: #9ca3af; }
/* 중간 레이아웃 */
#wrapper { z-index: 5; position: relative; width: 100%; background: #fff; }
#wrapper.is_community { background: #fff; }
#wrapper:after { display: block; visibility: hidden; clear: both; content: ""; }
#wrapper_title { padding: 32px 0 24px; font-size: 28px; font-weight: 800; color: #111827; letter-spacing: -.04em; }
.lt_wr { width: 49%; }
.lt_wr:nth-child(2n+1) { clear: both; }
/* aside + wrapper */
#aside { position: absolute; top: 0; left: 0; margin: 0 10px 0 0; width: 265px; }
#side_pd { position: relative; border: 1px solid #eef2f7; background: #fff; border-radius: 22px; margin-bottom: 18px; overflow: hidden; box-shadow: 0 10px 30px rgba(15,23,42,.04); }
#side_pd h2 { border-bottom: 1px solid #eef2f7; padding: 18px; font-size: 16px; font-weight: 800; color: #111827; }
#side_pd .bx-wrapper { padding-bottom: 10px; height: 400px; overflow: hidden; }
#side_pd .bx-controls { display: inline-block; position: absolute; right: 10px; top: 14px; }
#side_pd .bx-prev, #side_pd .bx-next { display: inline-block; width: 24px; height: 24px; text-indent: -9999em; border-radius: 50%; background-color: #f3f4f6; background-repeat: no-repeat; background-position: 50% 50%; }
#side_pd .bx-prev { background-image: url('../img/btn_prev.png'); }
#side_pd .bx-next { background-image: url('../img/btn_next.png'); }
#container { position: relative; margin: 0 auto; width: 1200px; min-height: 500px; height: auto !important; }
#container:after { display: block; visibility: hidden; clear: both; content: ""; }
#container .shop-content { position: relative; padding: 1px 0; }
#container .is_index { margin-left: 285px; }
.shop-content #bo_v { margin-top: 20px; }
#idx_hit { overflow: hidden; }
#idx_hit:after { display: block; visibility: hidden; clear: both; content: ""; }
#idx_hit .owl-prev, #idx_hit .owl-next { position: absolute; top: 50%; width: 40px; height: 40px; margin-top: -20px; text-indent: -9999em; border-radius: 50%; background-color: #fff; box-shadow: 0 8px 20px rgba(15,23,42,.08); background-repeat: no-repeat; background-position: 50% 50%; }
#idx_hit .owl-prev { left: 0; background-image: url('../img/btn_idx_left.png'); }
#idx_hit .owl-next { right: 0; background-image: url('../img/btn_idx_right.png'); }
.sale_prd h2 { font-size: 18px; margin: 24px 0 14px; font-weight: 800; color: #111827; }
.st_bg { display: inline-block; width: 1px; height: 10px; margin: 0 10px; background: #e5e7eb; vertical-align: -1px; }
/* 텍스트 크기 조절 */
#text_size { display: none; position: absolute; top: -31px; left: -1px; }
#text_size button { padding: 0 10px; height: 30px; border: 1px solid #e5e7eb; border-bottom: 0; background: #111827; color: #fff; cursor: pointer; }
/* 하단 레이아웃 */
#ft { background: #111827; margin: 0 auto; text-align: center; }
#ft h1 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#ft_wr { max-width: 1240px; margin: 0; padding: 48px 0; position: relative; display: inline-block; text-align: left; }
#ft_wr:after { display: block; visibility: hidden; clear: both; content: ""; }
#ft_wr .ft_cnt { width: 25%; float: left; padding: 0 20px; }
#ft_link { text-align: left; }
#ft_link a { display: block; color: #fff; line-height: 2em; font-weight: 600; }
#ft_link a:hover { color: #34c0ec; }
#ft_company h2 { font-size: 16px; margin-bottom: 20px; color: #fff; font-weight: 800; }
#ft_company { font-weight: 400; color: #d1d5db; line-height: 2em; }
#ft_catch { margin: 20px 0 10px; }
#ft_copy { text-align: center; width: 1200px; margin: 0 auto; padding: 22px 0; color: #9ca3af; font-size: 13px; border-top: 1px solid rgba(255,255,255,.08); }
#top_btn { position: absolute; bottom: 0; left: 0; border: 0; border-top: 1px solid #eef2f7; margin-top: -25px; width: 50px; height: 50px; background: none; font-size: 20px; color: #d1d5db; transition: .2s ease; }
#top_btn:hover { border-color: #34c0ec; background: #34c0ec; color: #fff; }
/* 쇼핑몰 회원가입 */
#container .register { margin-bottom: 30px; }
#register_form .register_form_inner { background: #fff; }
.register #register_form { background-color: initial; }
/* 쇼핑몰 비회원 주문조회 */
#mb_login_od_wr { margin: 40px auto 0; border: 1px solid #eef2f7; width: 380px; background: #fff; text-align: center; border-radius: 24px; overflow: hidden; box-shadow: 0 12px 34px rgba(15,23,42,.06); }
#mb_login_od_wr h2 { font-size: 18px; margin: 24px 0 12px; color: #111827; font-weight: 800; }
#mb_login_od_wr .frm_input { width: 100%; margin: 10px 0 0; }
#mb_login_od_wr .btn_submit { width: 100%; margin: 12px 0 0; height: 50px; font-weight: 800; font-size: 15px; border-radius: 999px; }
#mb_login_od_wr p { background: #f8fafc; margin: 24px 0 0; padding: 18px 22px; line-height: 1.6; color: #6b7280; }
/* SNS 로그인 */
#mb_login #sns_login { margin-top: 0; border-color: #eef2f7; padding: 25px; border-radius: 22px; }
#mb_login #sns_login:after { display: block; visibility: hidden; clear: both; content: ""; }
#mb_login #sns_login h3 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#mb_login #sns_login .sns-wrap { margin: 0 !important; }
#mb_login #sns_login .sns-icon { width: 49% !important; float: left !important; }
#mb_login #sns_login .sns-icon:nth-child(odd) { margin-right: 2%; }
#mb_login #sns_login .txt { font-size: 13px; padding-left: 5px !important; border-left: 0 !important; }
/* 쇼핑몰 비회원 구매 */
#mb_login_notmb { width: 380px; margin: 36px auto; padding: 28px 30px; background: #fff; border: 1px solid #eef2f7; border-radius: 24px; box-shadow: 0 12px 34px rgba(15,23,42,.06); }
#mb_login_notmb h2 { font-size: 18px; margin: 10px 0 16px; text-align: center; color: #111827; font-weight: 800; }
#mb_login_notmb p, #mb_login_notmb label { text-align: left; color: #4b5563; }
#guest_privacy { border: 1px solid #e5e7eb; text-align: left; line-height: 1.6; color: #6b7280; background: #f8fafc; padding: 14px; height: 150px; margin: 12px 0; overflow-y: auto; border-radius: 16px; }
#mb_login_notmb .btn_submit { display: block; text-align: center; margin-top: 12px; line-height: 50px; border-radius: 999px; }
/* 쇼핑몰 로그인 */
.mb_log_cate h2, .mb_log_cate .join { width: 50%; float: left; padding: 20px 0; text-align: center; font-size: 15px; font-weight: 800; }
.mb_log_cate .join { background: #f8fafc; color: #6b7280; }
.mb_log_cate:after { display: block; visibility: hidden; clear: both; content: ""; }
.mbskin .chk_box input[type="checkbox"] + label span { position: relative; }
/* 커뮤니티 */
.is_community .tbl_head01 td { color: #222; padding: 10px 5px; border-top: 1px solid #ecf0f1; border-bottom: 1px solid #ecf0f1; border-left: 0 none; line-height: 1.4em; height: 60px; word-break: break-all; }
.is_community .chk_box input[type="checkbox"] + label span { top: 2px; left: 0; }
.is_community .bo_fx { margin-bottom: 20px; }
/* 화면낭독기 사용자용 */
#hd_login_msg { position: absolute; top: 0; left: 0; width: 1px; height: 1px; overflow: hidden; }
.msg_sound_only, .sound_only { display: inline-block !important; position: absolute; top: 0; left: 0; margin: 0 !important; padding: 0 !important; font-size: 0; line-height: 0; border: 0 !important; overflow: hidden !important; }
/* 본문 바로가기 */
#skip_to_container a { z-index: 100000; position: absolute; top: 0; left: 0; width: 1px; height: 1px; font-size: 0; line-height: 0; overflow: hidden; }
#skip_to_container a:focus, #skip_to_container a:active { width: 100%; height: 75px; background: #111827; color: #fff; font-size: 24px; font-weight: 800; text-align: center; text-decoration: none; line-height: 75px; }
/* 이미지 등비율 리사이징 */
.img_fix { width: 100%; height: auto; }
/* 캡챠 */
#captcha { display: inline-block; position: relative; }
#captcha legend { position: absolute; margin: 0; padding: 0; font-size: 0; line-height: 0; text-indent: -9999em; overflow: hidden; }
#captcha #captcha_img { height: 42px; border: 1px solid #e5e7eb; vertical-align: top; padding: 0; margin: 0; border-radius: 12px; }
#captcha #captcha_mp3, #captcha #captcha_reload { margin: 0; padding: 0; width: 42px; height: 42px; border: 1px solid #e5e7eb; background-color: #fff; vertical-align: middle; overflow: hidden; cursor: pointer; background-image: url('../../../img/captcha2.png'); background-repeat: no-repeat; text-indent: -999px; border-radius: 12px; }
#captcha #captcha_mp3 { background-position: 0 0; }
#captcha #captcha_reload { background-position: 0 -40px; }
#captcha #captcha_key { margin: 0 0 0 4px; padding: 0 8px; width: 100px; height: 42px; border: 1px solid #e5e7eb; background: #fff; font-size: 16px; font-weight: 700; text-align: center; border-radius: 12px; vertical-align: top; }
#captcha #captcha_info { display: block; margin: 6px 0 0; font-size: 13px; color: #9ca3af; letter-spacing: 0; }
/* ckeditor 단축키 */
.cke_sc { margin: 0 0 8px; text-align: right; }
.btn_cke_sc { display: inline-flex; align-items: center; justify-content: center; padding: 0 12px; height: 28px; border: 1px solid #e5e7eb !important; background: #fff !important; color: #374151 !important; text-decoration: none !important; line-height: 1; vertical-align: middle; border-radius: 999px; font-size: 13px; font-weight: 700; }
.cke_sc_def { margin: 0 0 8px; padding: 14px; border: 1px solid #eef2f7; background: #f8fafc; text-align: center; border-radius: 16px; }
.cke_sc_def dl { margin: 0 0 5px; text-align: left; }
.cke_sc_def dl:after { display: block; visibility: hidden; clear: both; content: ""; }
.cke_sc_def dt, .cke_sc_def dd { float: left; margin: 0; padding: 6px 0; border-bottom: 1px solid #eef2f7; }
.cke_sc_def dt { width: 20%; font-weight: 700; color: #111827; }
.cke_sc_def dd { width: 30%; color: #6b7280; }
/* ckeditor 태그 기본값 */
#bo_v_con ul { display: block; list-style-type: disc; margin-top: 1em; margin-bottom: 1em; margin-left: 0; margin-right: 0; padding-left: 40px; }
#bo_v_con ol { display: block; list-style-type: decimal; margin-top: 1em; margin-bottom: 1em; margin-left: 0; margin-right: 0; padding-left: 40px; }
#bo_v_con li { display: list-item; }
/* Mobile화면으로 */
#mobile_cng { display: block; margin: 12px 0; padding: 14px 18px; border: 1px solid #e5e7eb; border-radius: 999px; background: #fff; color: #111827; font-size: 15px; font-weight: 700; text-decoration: none; text-align: center; transition: .2s ease; }
#mobile_cng:hover { background: #111827; border-color: #111827; color: #fff; }
/* 목록 바로가기 */
.sanchor { margin: 32px 0 24px; padding: 0; display: flex; gap: 8px; }
.sanchor:after { display: block; visibility: hidden; clear: both; content: ""; }
.sanchor li { float: none; width: 100%; text-align: center; list-style: none; }
.sanchor li a { display: flex; align-items: center; justify-content: center; position: relative; height: 52px; background: #fff; border: 1px solid #e5e7eb; border-radius: 16px; font-size: 14px; font-weight: 700; color: #6b7280; line-height: 1; text-align: center; z-index: 1; transition: .2s ease; }
.sanchor li a:hover { background: #f8fafc; color: #111827; }
.sanchor li .sanchor_on { border-color: #111827; background: #111827; color: #fff; font-weight: 800; }
.sanchor li a .item_qa_count, .sanchor li a .item_use_count { display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.18); padding: 0 7px; height: 22px; line-height: 22px; border-radius: 999px; color: #fff; min-width: 22px; font-size: 11px; margin-left: 6px; }
.sanchor li a:not(.sanchor_on) .item_qa_count, .sanchor li a:not(.sanchor_on) .item_use_count { background: #f3f4f6; color: #6b7280; }
/* 콘텐츠별 스타일 */
.cnt_cmt { display: inline-block; margin-left: 4px; font-weight: 600; color: #9ca3af; }
/* 버튼 공통 */
a.btn, .btn { line-height: 1; min-height: 44px; padding: 0 18px; text-align: center; font-weight: 700; border: 0; font-size: 14px; border-radius: 999px; transition: .2s ease; }
/* btn01 */
a.btn01, button.btn01 { display: inline-flex; align-items: center; justify-content: center; padding: 0 18px; border: 1px solid #e5e7eb; border-radius: 999px; background: #fff; color: #374151; text-decoration: none; }
a.btn01:hover, button.btn01:hover { background: #111827; border-color: #111827; color: #fff; }
/* btn02 */
a.btn02, button.btn02 { display: inline-flex; align-items: center; justify-content: center; padding: 0 18px; border: 0; background: #111827; color: #fff; border-radius: 999px; text-decoration: none; }
a.btn02:hover, button.btn02:hover { background: #34c0ec; }
/* submit */
.btn_submit { border: 0; background: #111827; color: #fff; cursor: pointer; border-radius: 999px; font-weight: 800; }
.btn_submit:hover { background: #34c0ec; }
/* close */
.btn_close { border: 1px solid #e5e7eb; cursor: pointer; border-radius: 999px; background: #fff; }
a.btn_close { text-align: center; line-height: 50px; }
/* cancel */
a.btn_cancel, button.btn_cancel { display: inline-flex; align-items: center; justify-content: center; background: #f3f4f6; color: #6b7280; text-decoration: none; vertical-align: middle; border-radius: 999px; }
.btn_cancel:hover { background: #111827; color: #fff; }
/* 우편번호검색 */
a.btn_frmline, button.btn_frmline { display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: 120px; padding: 0 18px; height: 46px; border: 1px solid #e5e7eb; background: #fff; border-radius: 999px; color: #111827; text-decoration: none; vertical-align: top; font-size: 14px; font-weight: 700; }
a.btn_frmline:hover, button.btn_frmline:hover { background: #111827; border-color: #111827; color: #fff; }
/* 게시판용 버튼 */
a.btn_b01, .btn_b01 { display: inline-block; color: #9ca3af; text-decoration: none; vertical-align: middle; border: 0; background: transparent; }
.btn_b01:hover { color: #111827; }
a.btn_b02, .btn_b02 { display: inline-flex; align-items: center; justify-content: center; background: #111827; padding: 0 16px; color: #fff; text-decoration: none; border: 0; border-radius: 999px; vertical-align: middle; }
a.btn_b02:hover, .btn_b02:hover { background: #34c0ec; }
a.btn_b03, .btn_b03, a.btn_b04, .btn_b04 { display: inline-flex; align-items: center; justify-content: center; background: #fff; border: 1px solid #e5e7eb; color: #6b7280; text-decoration: none; border-radius: 999px; vertical-align: middle; }
a.btn_b03:hover, .btn_b03:hover, a.btn_b04:hover, .btn_b04:hover { background: #111827; border-color: #111827; color: #fff; }
a.btn_admin, .btn_admin { display: inline-block; color: #ef4444; text-decoration: none; vertical-align: middle; }
.btn_admin:hover { color: #dc2626; }
/* 선택수정 버튼 */
.btn_list { margin: 0 auto; width: 100%; }
.btn_list input, .btn_list button { background: #111827; border: 0; color: #fff; height: 42px; line-height: 42px; padding: 0 18px; vertical-align: middle; border-radius: 999px; font-weight: 700; }
/* 기본테이블 */
.tbl_wrap table { width: 100%; border-collapse: collapse; border-spacing: 0; }
.tbl_wrap caption { padding: 10px 0; font-weight: 700; text-align: left; }
/* table head 01 */
/* .tbl_head01 { margin: 0 0 16px; border: 1px solid #eef2f7; border-radius: 20px; overflow: hidden; background: #fff; } */
.tbl_head01 caption { padding: 0; font-size: 0; line-height: 0; overflow: hidden; }
.tbl_head01 thead th { padding: 16px 10px; border-top: 0; border-bottom: 1px solid #eef2f7; background: #f8fafc; color: #374151; font-size: 13px; text-align: center; font-weight: 800; letter-spacing: 0; }
/* .tbl_head01 td { padding: 18px 10px; border-top: 1px solid #f3f4f6; border-left: 1px solid #f3f4f6; line-height: 1.6; word-break: break-all; background: #fff; } */
.tbl_head01 td:first-child { border-left: 0; }
/* table head02 */
.tbl_head02 { margin: 0 0 16px; border: 1px solid #eef2f7; border-radius: 20px; overflow: hidden; background: #fff; }
.tbl_head02 thead th { padding: 14px; background: #f8fafc; border-bottom: 1px solid #eef2f7; color: #374151; font-size: 13px; font-weight: 800; }
.tbl_head02 td { padding: 14px 10px; border-bottom: 1px solid #f3f4f6; line-height: 1.6; word-break: break-all; }
/* table head03 */
.tbl_head03 { margin: 0 0 16px; border: 1px solid #eef2f7; border-radius: 24px; overflow: hidden; background: #fff; }
.tbl_head03 table { border-bottom: 0; }
.tbl_head03 thead th { padding: 20px 12px; border-top: 0; border-bottom: 1px solid #eef2f7; background: #f8fafc; color: #111827; font-size: 15px; font-weight: 800; text-align: center; letter-spacing: 0; }
.tbl_head03 td { background: #fff; padding: 22px 16px; border-top: 1px solid #f3f4f6; border-left: 1px solid #f8fafc; line-height: 1.7; word-break: break-all; }
.tbl_head03 td:first-child { border-left: 0; }
/* 폼 테이블 */
.tbl_frm01 { margin: 0 0 24px; }
.tbl_frm01 table { width: 100%; border-collapse: collapse; border-spacing: 0; }
.tbl_frm01 th { /* width: 90px; */
  padding: 10px; background: none; text-align: right; font-weight: 700; color: #6b7280; }
.tbl_frm01 td { padding: 10px; background: transparent; }
.wr_content textarea, .tbl_frm01 textarea, .form_01 textarea, .frm_input { border: 1px solid #e5e7eb; background: #fff; color: #111827; vertical-align: middle; border-radius: 16px; padding: 12px 14px; box-shadow: none; }
.tbl_frm01 textarea { width: 100%; height: 120px; }
.frm_input { height: 52px; }
.full_input, .frm_address { width: 100%; }
.half_input { width: 49.5%; }
.tbl_frm01 textarea:focus, .form_01 textarea:focus, .frm_input:focus { border-color: #34c0ec; box-shadow: 0 0 0 4px rgba(52,192,236,.08); outline: none; }
.tbl_frm01 a { text-decoration: none; }
.tbl_frm01 .frm_address { margin-top: 8px; }
.tbl_frm01 .frm_file { display: block; margin-bottom: 8px; }
.tbl_frm01 .frm_info { display: block; padding: 4px 0; line-height: 1.6; color: #9ca3af; font-size: 13px; }
/* 기본리스트 */
.list_01 li { position: relative; border: 1px solid #eef2f7; border-radius: 20px; margin: 12px 0; padding: 18px 20px; list-style: none; background: #fff; transition: .2s ease; }
.list_01 li:hover { background: #f8fafc; }
.list_01 li:after { display: block; visibility: hidden; clear: both; content: ""; }
/* 리스트 */
.list_02 ul:after { display: block; visibility: hidden; clear: both; content: ""; }
.list_02 li { float: left; width: 225px; margin: 10px 0 24px 18px; }
.list_02 li:nth-child(5n+1) { clear: both; margin-left: 0; }
/* 폼 리스트 */
.form_01 h2 { margin: 0 0 14px; font-size: 20px; font-weight: 800; color: #111827; }
.form_01 li { margin: 14px 0; }
.form_01 li:after { display: block; visibility: hidden; clear: both; content: ""; }
.form_01 li .right_input { float: right; }
.form_01 textarea { height: 120px; width: 100%; }
.form_01 .frm_label { display: inline-block; width: 130px; color: #6b7280; font-weight: 700; }
.form_01 .form_left, .form_01 .form_right { width: 49.5%; }
.form_01 .form_left { float: left; }
.form_01 .form_right { float: right; }
/* 자료 없는 목록 */
.empty_table, .empty_list, .empty_li { padding: 60px 20px !important; text-align: center !important; color: #9ca3af !important; font-size: 15px; }
/* 필수입력 */
.required, textarea.required { background-image: url('../img/require.png') !important; background-repeat: no-repeat !important; background-position: right top !important; }
/* 테이블 그리드 */
.grid_1 { width: 40px}
.grid_2 { width: 90px}
.grid_3 { width: 140px}
.grid_4 { width: 190px}
.grid_5 { width: 240px}
.grid_6 { width: 290px}
.grid_7 { width: 340px}
.grid_8 { width: 390px}
.grid_9 { width: 440px}
.grid_10 { width: 490px}
.grid_11 { width: 540px}
.grid_12 { width: 590px}
.grid_13 { width: 640px}
.grid_14 { width: 690px}
.grid_15 { width: 740px}
.grid_16 { width: 790px}
.grid_17 { width: 840px}
.grid_18 { width: 890px}
.text_left { text-align: left !important}
.text_center { text-align: center !important}
.text_right { text-align: right !important}
/* 새창 기본 스타일 */
.new_win { position: relative; background: #fff; color: #111827; }
.new_win .tbl_wrap { margin: 0 24px; }
.new_win #win_title { height: 60px; line-height: 60px; padding: 0 24px; background: #fff; color: #111827; font-size: 18px; font-weight: 800; letter-spacing: -.02em; border-bottom: 1px solid #eef2f7; box-shadow: 0 8px 24px rgba(15,23,42,.04); }
.new_win #win_title .sv { font-size: 12px; line-height: 1.4; }
.new_win .win_ul { margin: 20px 0; padding: 0 24px; }
.new_win .win_ul:after { display: block; visibility: hidden; clear: both; content: ""; }
.new_win .win_ul li { float: left; background: #fff; text-align: center; padding: 0; border: 1px solid #e5e7eb; border-radius: 999px; margin-left: 8px; overflow: hidden; }
.new_win .win_ul li:first-child { margin-left: 0; }
.new_win .win_ul li a { display: block; padding: 9px 16px; color: #6b7280; font-size: 14px; font-weight: 600; }
.new_win .win_ul .selected { background: #111827; border-color: #111827; position: relative; z-index: 5; }
.new_win .win_ul .selected a { color: #fff; font-weight: 700; }
.new_win .win_desc { position: relative; margin: 16px 24px; border-radius: 18px; font-size: 14px; background: #fff7ed; color: #c2410c; line-height: 1.6; text-align: left; padding: 16px 20px 16px 24px; border: 1px solid #fed7aa; }
.new_win .win_desc i { font-size: 18px; vertical-align: middle; }
.new_win .win_desc:after { content: ""; position: absolute; left: 0; top: 0; width: 5px; height: 100%; background: #fb923c; border-radius: 18px 0 0 18px; }
.new_win .frm_info { font-size: 13px; color: #9ca3af; }
.new_win .win_total { float: right; display: inline-flex; align-items: center; height: 30px; line-height: 30px; font-weight: 700; font-size: 12px; color: #34c0ec; background: rgba(52,192,236,.1); padding: 0 12px; border-radius: 999px; }
.new_win .new_win_con { margin: 20px 0; padding: 24px; }
.new_win .new_win_con:after, .new_win .new_win_con2:after, .new_win .btn_confirm:after { display: block; visibility: hidden; clear: both; content: ""; }
.new_win .new_win_con2 { margin: 20px 0 0; }
.new_win .win_btn { text-align: center; padding: 20px 0 36px; }
.new_win .btn_close { height: 46px; min-width: 72px; overflow: hidden; cursor: pointer; border-radius: 999px; }
.new_win .btn_submit { padding: 0 24px; height: 46px; font-weight: 800; font-size: 15px; border-radius: 999px; }
/* 자바스크립트 alert 대안 */
#validation_check { margin: 100px auto; width: 500px; }
#validation_check h1 { margin-bottom: 20px; font-size: 20px; color: #111827; font-weight: 800; }
#validation_check p { margin-bottom: 20px; padding: 32px 24px; border: 1px solid #eef2f7; background: #fff; border-radius: 22px; color: #4b5563; }
/* 사이드뷰 */
.sv_wrap { display: inline-block; position: relative; font-weight: normal; }
.sv_wrap .sv { z-index: 1000; display: none; margin: 8px 0 0; border: 1px solid #eef2f7; background: #fff; border-radius: 14px; overflow: hidden; box-shadow: 0 12px 30px rgba(15,23,42,.1); }
.sv_wrap .sv a { display: block !important; margin: 0 !important; padding: 9px 12px !important; width: 110px; border-bottom: 1px solid #eef2f7; color: #374151 !important; font-size: 13px; }
.sv_wrap .sv a:hover { background: #f8fafc; color: #111827 !important; }
.sv_wrap a:focus, .sv_wrap a:hover, .sv_wrap a:active { text-decoration: none !important; }
.sv_on { display: block !important; position: absolute; top: 10px; left: 20px; width: auto; height: auto !important; }
.sv_nojs .sv { display: block; }
/* 페이징 */
.pg_wrap { margin: 24px 0 40px; text-align: center; }
.pg_wrap:after { display: block; visibility: hidden; clear: both; content: ""; }
.pg { text-align: center; }
.pg a:focus, .pg a:hover { text-decoration: none; }
.pg_page, .pg_current, .qa_page { display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; min-width: 36px; height: 36px; line-height: 36px; padding: 0 10px; border-radius: 50%; font-size: 14px; font-weight: 700; text-decoration: none; transition: .2s ease; }
.pg_page, .qa_page { color: #9ca3af; background: #fff; border: 1px solid #e5e7eb; }
.pg_page:hover, .qa_page:hover { background: #f8fafc; color: #111827; border-color: #d1d5db; }
.pg_current { background: #111827; border: 1px solid #111827; color: #fff; }
.pg_start, .pg_prev, .pg_end, .pg_next { text-indent: -999px; overflow: hidden; padding: 0; border: 1px solid #e5e7eb; background-color: #fff; background-repeat: no-repeat; background-position: 50% 50%; }
.pg_start { background-image: url('../img/btn_first.gif')}
.pg_prev { background-image: url('../img/btn_prev.gif')}
.pg_end { background-image: url('../img/btn_end.gif')}
.pg_next { background-image: url('../img/btn_next.gif')}
.pg_start:hover, .pg_prev:hover, .pg_end:hover, .pg_next:hover { background-color: #f8fafc; }
/* 팁 */
.tooltip_icon { display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; color: #9ca3af; border: 0; font-size: 18px; background: transparent; cursor: pointer; }
.tooltip_icon:hover { color: #34c0ec; }
.tooltip { position: absolute; width: auto; color: #fff; background: #111827; padding: 12px 14px; font-size: 13px; line-height: 1.6; display: none; z-index: 9; font-weight: normal; margin-left: 15px; margin-top: 20px; border-radius: 12px; box-shadow: 0 12px 30px rgba(15,23,42,.16); }
.tooltip:before { content: ""; position: absolute; top: 0; left: -8px; width: 0; height: 0; border-style: solid; border-top: 0 solid transparent; border-bottom: 10px solid transparent; border-left: 0; border-right: 10px solid #111827; }
.tooltip_txt { position: relative; text-align: left; color: #c2410c; min-height: 52px; line-height: 1.6; font-size: 14px; background: #fff7ed; margin: 0 0 14px; padding: 16px 20px 16px 24px; border-radius: 18px; font-weight: 600; border: 1px solid #fed7aa; }
.tooltip_txt:before { content: ""; position: absolute; top: 0; left: 0; width: 5px; height: 100%; border-radius: 18px 0 0 18px; background: #fb923c; }
.tooltip_txt i { font-size: 18px; vertical-align: middle; }
/* 쇼핑몰 컨텐츠 */
#sidx_img { margin: 0 0 24px; }
#sidx_img img { max-width: 100%; height: auto; border-radius: 18px; }
#sit_rec_new th, #sit_rec_new td { display: block; width: 100%; }
#sit_rec_new th { text-align: left; margin-top: 20px; margin-bottom: 8px; color: #111827; font-weight: 800; }
#sit_rec_new textarea { width: 100%; min-height: 120px; border: 1px solid #e5e7eb; border-radius: 16px; padding: 16px; color: #111827; background: #fff; }
#sit_rec_new textarea:focus { border-color: #34c0ec; box-shadow: 0 0 0 4px rgba(52,192,236,.08); outline: none; }
#sit_rec_new .win_btn { margin: 24px 0; }
input[type="text"], input[type="password"], input[type="tel"], input[type="email"], select, textarea { box-sizing: border-box; }
button, input[type="submit"], input[type="button"], a { transition: .2s ease; }
/* 마이페이지 */
#smb_my { position: relative; margin: 40px 0; }
#smb_my:after { display: block; visibility: hidden; clear: both; content: ""; }
/* 마이페이지 aside */
#smb_my_ov { position: relative; float: left; width: 280px; margin: 0 28px 0 0; border: 1px solid #eef2f7; border-radius: 22px; background: #fff; overflow: hidden; box-shadow: 0 10px 30px rgba(15,23,42,.04); }
#smb_my_ov h2 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#smb_my_ov .smb_me { display: block; background: #fff; border-bottom: 1px solid #eef2f7; padding: 28px 22px; text-align: center; font-size: 15px; }
#smb_my_ov .smb_me img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; margin-bottom: 12px; }
#smb_my_ov .smb_me .my_ov_name { display: block; margin-bottom: 12px; line-height: 1.5; color: #111827; font-size: 18px; font-weight: 800; }
#smb_my_ov .smb_me a { display: inline-flex; align-items: center; justify-content: center; height: 32px; line-height: 32px; border: 1px solid #e5e7eb; color: #6b7280; border-radius: 999px; padding: 0 12px; font-size: 13px; font-weight: 600; transition: .2s ease; }
#smb_my_ov .smb_me a:hover { background: #111827; border-color: #111827; color: #fff; }
#smb_my_ov .smb_me a.smb_info { color: #34c0ec; border-color: rgba(52,192,236,.35); }
#smb_private { padding: 10px; display: none; }
#smb_private:after { display: block; visibility: hidden; clear: both; content: ""; }
#smb_private li { position: relative; text-align: left; }
#smb_private a { display: flex; align-items: center; justify-content: space-between; gap: 10px; background: #fff; color: #4b5563; min-height: 46px; line-height: 1.4; padding: 0 14px; border-radius: 14px; font-size: 14px; font-weight: 600; transition: .2s ease; }
#smb_private li a:hover { background: #f8fafc; color: #111827; }
#smb_private li a:hover:after { display: none; }
#smb_private li i { width: 22px; color: #9ca3af; margin-right: 6px; font-size: 18px; vertical-align: middle; }
#smb_private li:hover i { color: #34c0ec; }
#smb_private a strong { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; max-width: 90px; height: 24px; padding: 0 8px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #34c0ec; background: rgba(52,192,236,.1); border-radius: 999px; font-size: 12px; font-weight: 800; }
#smb_private a:hover strong { background: #34c0ec; color: #fff; }
#smb_private .win_point strong, #smb_private .win_memo strong, #smb_private .win_scrap strong, #smb_private .win_coupon strong { background: rgba(52,192,236,.1); color: #34c0ec; }
#smb_my_ov h3 { font-size: 15px; padding: 22px 22px 10px; /*  border-top: 1px solid #eef2f7;  */
  color: #111827; font-weight: 800; }
#smb_my_ov .op_area { border-top: 0; padding: 0 22px 18px; line-height: 1.6; color: #4b5563; }
#smb_my_ov .op_area:after { display: block; visibility: hidden; clear: both; content: ""; }
#smb_my_ov .op_area dt { margin: 10px 0 4px; padding-top: 4px; font-weight: 600; color: #9ca3af; line-height: 1.5; font-size: 13px; }
#smb_my_ov .op_area dd { margin: 0; padding-bottom: 12px; border-bottom: 1px dashed #e5e7eb; color: #111827; font-size: 14px; }
#smb_my_ovaddt, #smb_my_ovaddd { border-bottom: 0 !important; }
.withdrawal { display: block; padding: 16px 22px; border-top: 1px solid #eef2f7; color: #9ca3af; font-size: 13px; transition: .2s ease; }
.withdrawal:hover { color: #ef4444; }
/* 마이페이지 list */
#smb_my_list { float: left; width: calc(100% - 308px); }
#smb_my_od { position: relative; margin: 0 0 48px; }
#smb_my_od h2 { margin: 0 0 16px; font-size: 20px; color: #111827; font-weight: 800; letter-spacing: -.02em; }
.smb_my_od { background: #fff; border: 1px solid #eef2f7; border-radius: 22px; overflow: hidden; }
.smb_my_od li { padding: 20px; border-bottom: 1px solid #eef2f7; transition: .2s ease; }
.smb_my_od li:last-child { border-bottom: 0; }
.smb_my_od li:after { display: block; visibility: hidden; clear: both; content: ""; }
.smb_my_od li:hover { background: #f8fafc; }
.smb_my_od .smb_my_od_li { float: left; line-height: 1.6; }
.smb_my_od .smb_my_od_li1 { width: 150px; text-align: left; }
.smb_my_od .smb_my_od_li2 { width: calc(100% - 250px); padding: 0 20px; }
.smb_my_od .smb_my_od_li3 { width: 100px; float: right; text-align: right; }
.smb_my_od .ord_num, .smb_my_od .ord_name { font-size: 16px; font-weight: 700; letter-spacing: -.02em; color: #111827; }
.smb_my_od .date { color: #9ca3af; font-size: 13px; }
.smb_my_od .cost { color: #111827; font-weight: 800; }
.smb_my_od .misu { color: #6b7280; }
/* 위시리스트 */
#smb_my_wish { position: relative; margin-bottom: 36px; }
#smb_my_wish h2 { font-size: 20px; padding: 0 0 16px; border-bottom: 1px solid #eef2f7; color: #111827; font-weight: 800; letter-spacing: -.02em; }
#smb_my_wish li { position: relative; background: #fff; border-bottom: 1px solid #eef2f7; padding: 20px; transition: .2s ease; }
#smb_my_wish li:hover { background: #f8fafc; }
#smb_my_wish li:after { display: block; visibility: hidden; clear: both; content: ""; }
#smb_my_wish .smb_my_chk { display: inline-block; float: left; margin-right: 12px; color: #ef4444; }
#smb_my_wish .smb_my_img { float: left; margin-right: 20px; }
#smb_my_wish .smb_my_img img { border-radius: 14px; border: 1px solid #eef2f7; }
#smb_my_wish .smb_my_tit { margin: 4px 0 8px; font-size: 16px; font-weight: 700; color: #111827; letter-spacing: -.02em; }
#smb_my_wish .smb_my_price { font-weight: 800; font-size: 18px; margin-bottom: 24px; color: #111827; }
#smb_my_wish .smb_my_date { font-size: 13px; color: #9ca3af; }
.smb_my_more { position: absolute; top: 0; right: 0; }
.smb_my_more a { display: inline-flex; align-items: center; height: 32px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 999px; background: none; color: #6b7280; font-size: 13px; font-weight: 600; }
.smb_my_more a:hover { background: #111827; border-color: #111827; color: #fff; }
#smb_my_wish li .wish_del { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); font-size: 22px; color: #9ca3af; transition: .2s ease; }
#smb_my_wish li .wish_del:hover { color: #ef4444; }
#smb_ws_act { text-align: center; margin: 24px 0 36px; }
#smb_ws_act .btn01, #smb_ws_act .btn02 { width: 180px; height: 50px; font-weight: 700; font-size: 15px; border-radius: 999px; }
#smb_ws_act .btn02 { border: 1px solid #34c0ec; background: #34c0ec; color: #fff; }
/* 장바구니 주문서 공통 */
.od_prd_list .td_prd { border-left: 0; position: relative; padding-left: 130px; min-height: 110px; }
.od_prd_list .td_prd .sod_img { position: absolute; top: 22px; left: 20px; }
.od_prd_list .td_prd .sod_img img { width: 88px; height: 88px; object-fit: cover; border-radius: 16px; border: 1px solid #eef2f7; background: #f8fafc; }
.od_prd_list .td_prd .sod_name { min-height: 88px; }
.od_prd_list .td_prd .prd_name { font-size: 17px; font-weight: 800; color: #111827; letter-spacing: -.02em; }
.od_prd_list .total_prc { color: #111827; font-weight: 800; font-size: 18px; }
.sod_opt { margin: 8px 0; }
.sod_opt ul { display: inline-block; margin: 0; padding: 0; list-style: none; }
.sod_opt li { color: #4b5563; padding: 4px 0; line-height: 1.5; font-size: 14px; }
.sod_opt li:before { content: "옵션"; display: inline-flex; align-items: center; justify-content: center; margin: 0 6px 0 0; padding: 0 8px; height: 22px; border-radius: 999px; background: rgba(52,192,236,.1); color: #34c0ec; font-size: 12px; font-weight: 800; }
.sod_option_btn .mod_options, .cp_btn, .cp_cancel { height: 32px; padding: 0 12px; border: 1px solid #e5e7eb; color: #374151; background: #fff; border-radius: 999px; font-size: 13px; font-weight: 600; transition: .2s ease; }
.sod_option_btn .mod_options:hover, .cp_btn:hover, .cp_cancel:hover { background: #111827; border-color: #111827; color: #fff; }
#sod_bsk { margin-bottom: 40px; }
.btn_cart_del { padding: 18px; border-bottom: 1px solid #eef2f7; }
.btn_cart_del button { height: 36px; padding: 0 14px; border: 1px solid #e5e7eb; border-radius: 999px; background: #fff; color: #6b7280; font-size: 13px; font-weight: 600; transition: .2s ease; }
.btn_cart_del button:hover { background: #111827; border-color: #111827; color: #fff; }
#sod_bsk_list { position: relative; }
#sod_bsk #sod_bsk_tot { border: 1px solid #eef2f7; border-radius: 22px; margin: 24px 0; overflow: hidden; background: #fff; }
#sod_bsk #sod_bsk_tot ul:after { display: block; visibility: hidden; clear: both; content: ""; }
#sod_bsk #sod_bsk_tot li { float: left; width: 33.333%; background: #fff; color: #111827; border-left: 1px solid #eef2f7; text-align: right; padding: 26px 24px; font-size: 18px; font-weight: 800; }
#sod_bsk #sod_bsk_tot li:first-child { border-left: 0; }
#sod_bsk #sod_bsk_tot li span { display: inline-block; float: left; color: #6b7280; font-size: 14px; font-weight: 600; }
#sod_bsk_act .btn01 { margin-bottom: 10px; }
#sod_bsk_act .btn_submit, #sod_bsk_act .btn01 { height: 52px; line-height: 52px; padding: 0 18px; width: 180px; font-weight: 800; font-size: 16px; border-radius: 999px; }
#sod_bsk_act p { margin: 0 0 12px; color: #6b7280; font-size: 14px; }
#sod_bsk_list #mod_option_frm { z-index: 10000; position: fixed; top: 50%; left: 50%; width: 560px; max-height: 560px; margin-left: -280px; margin-top: -280px; border: 1px solid #eef2f7; border-radius: 24px; background: #fff; overflow-y: auto; overflow-x: hidden; box-shadow: 0 24px 70px rgba(15,23,42,.18); }
#sod_bsk_list .mod_option_bg { content: ""; position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: rgba(15,23,42,.35); display: block; z-index: 9999; backdrop-filter: blur(3px); }
#mod_option_frm h2 { border-bottom: 1px solid #eef2f7; padding: 0 24px; line-height: 60px; font-size: 18px; color: #111827; font-weight: 800; }
.option_wr { padding: 24px 24px 0; }
.option_wr h3 { font-size: 16px; margin-bottom: 12px; color: #111827; font-weight: 800; text-align: left; }
.option_wr .get_item_options, .option_wr .get_item_supply { margin-bottom: 14px; }
.option_wr label { display: block; margin: 12px 0 6px; color: #6b7280; font-size: 13px; font-weight: 600; }
.option_wr select { width: 100%; border: 1px solid #e5e7eb; height: 52px; border-radius: 14px; padding: 0 14px; color: #111827; background: #fff; }
#sit_opt_added { margin: 0; padding: 0; border-bottom: 0; list-style: none; }
.sit_opt_list { position: relative; }
.sit_opt_list:after { content: ''; display: block; clear: both; }
#sit_opt_added button { float: left; width: 34px; height: 34px; border-radius: 50%; background: #fff; color: #6b7280; border: 1px solid #e5e7eb; font-size: 13px; transition: .2s ease; }
#sit_opt_added button:hover { background: #111827; border-color: #111827; color: #fff; }
#sit_opt_added .num_input { float: left; width: 48px; height: 34px; border: 0; text-align: center; color: #111827; font-weight: 700; background: #fff; }
#sit_opt_added .sit_opt_del { position: absolute; right: 0; top: 0; width: 20px; height: 20px; font-size: 14px; border: none !important; background: transparent; color: #9ca3af; }
#sit_opt_added .sit_opt_del:hover { background: #fff1f2; color: #ef4444; }
#sit_opt_added .sit_opt_prc { display: block; float: right; width: 110px; padding: 0 3px; text-align: right; line-height: 34px; font-size: 16px; font-weight: 800; color: #111827; }
#mod_option_frm #sit_sel_option { display: flex; padding: 10px 30px; justify-content: space-between; flex-direction: column; text-align: left; gap: 10px; }
div#sit_sel_option {
}
#mod_option_frm #sit_tot_price { margin: 0 24px 24px; color: #111827; font-weight: 800; text-align: right; display: flex; gap: 10px; justify-content: flex-end; align-items: center; }
#mod_option_frm .btn_confirm { display: block; padding: 0 24px 24px; background: transparent; width: 100%; }
#mod_option_frm .btn_confirm .btn_submit { width: 100%; height: 42px; font-size: 15px; font-weight: 800; cursor: pointer; border-radius: 999px; }
#mod_option_frm .btn_confirm .btn_close { position: absolute; top: 10px; right: 10px; width: 40px; height: 40px; border: 0; background: #fff; color: #9ca3af; font-size: 20px; border-radius: 50%; transition: .2s ease; }
#mod_option_frm .btn_confirm .btn_close:hover { background: #f3f4f6; color: #111827; }
#sod_frm { color: #111827; }
#sod_frm section, #sod_frm_orderer, #sod_frm_taker, .sod_right .pay_tbl, #display_pay_button, #sod_point, #forderform .od_pay_buttons_el { border: 1px solid #eef2f7 !important; border-radius: 24px; overflow: hidden; box-shadow: 0 10px 30px rgba(15,23,42,.04); /* margin: 0 2% 10px; */
}
.btn_confirm { padding: 10px}
#display_pay_button { margin-top: 10px; }
#display_pay_button .btn_submit { margin-bottom: 10px}
#sod_frm section h2, #sod_frm_pay h2, #sod_point h2 { border-bottom: 1px solid #eef2f7; padding: 24px; font-size: 18px; font-weight: 800; color: #111827; letter-spacing: -.02em; background: #fff; }
#sod_frm input[type="text"], #sod_frm input[type="tel"], #sod_frm input[type="password"], #sod_frm select, #sod_frm textarea { border: 1px solid #e5e7eb; border-radius: 14px; height: 52px; padding: 0 16px; background: #fff; color: #111827; transition: .2s ease; }
#sod_frm textarea { height: auto; min-height: 120px; padding: 16px; }
#sod_frm input:focus, #sod_frm select:focus, #sod_frm textarea:focus { border-color: #34c0ec; box-shadow: 0 0 0 4px rgba(52,192,236,.08); outline: none; }
#sod_frm .tbl_frm01 td .btn_address, #sod_frm_taker .tbl_frm01 td .btn_address { background: #111827; color: #fff; border: 0; border-radius: 999px; height: 52px; padding: 0 18px; font-weight: 700; transition: .2s ease; }
#sod_frm .tbl_frm01 td .btn_address:hover { background: #34c0ec; }
#sod_frm .tbl_frm01 th, #sod_frm .tbl_frm01 td { padding: 14px 18px; }
#sod_frm .tbl_frm01 th { color: #6b7280; font-weight: 700; }
#sod_frm_orderer, #sod_frm_taker { margin-bottom: 28px; }
#sod_frm_taker .order_choice_place, #sod_frm_taker .tbl_frm01 .choice_place { background: #f8fafc; border: 1px solid #eef2f7; border-radius: 18px; padding: 16px; }
.sod_right #sod_bsk_tot { border: 1px solid #eef2f7; border-radius: 24px; overflow: hidden; background: #fff; }
.sod_right .sod_info li { background: #fff; border-bottom: 1px solid #eef2f7; padding: 20px 0; }
.sod_right .sod_info li span { color: #6b7280; font-size: 13px; font-weight: 600; }
.sod_right .sod_info .sod_bsk_cnt strong, #od_tot_price strong { color: #111827; font-size: 28px; font-weight: 900; }
#od_tot_price { background: #f8fafc; border-radius: 18px; padding: 22px; line-height: 1.5; }
#od_pay_sl .lb_icon { display: flex; align-items: center; width: 100%; min-height: 64px; border: 1px solid #eef2f7; border-radius: 18px; background: #fff; padding-left: 72px; transition: .2s ease; }
#od_pay_sl input[type="radio"]:checked + .lb_icon { border-color: #111827; background: #f8fafc; box-shadow: 0 0 0 3px rgba(17,24,39,.04); }
#od_pay_sl .lb_icon:hover { border-color: #34c0ec; }
#sod_point, #sod_frm_pay .sod_frm_point { margin-top: 24px; }
#sod_point .point_ipt #od_temp_point, #sod_frm_pay .sod_frm_point #od_temp_point { border: 1px solid #e5e7eb; border-radius: 12px; height: 44px; padding: 0 14px; }
#display_pay_button .btn_submit, #display_pay_button .btn01, #sod_bsk_act .btn_submit, #sod_bsk_act .btn01 { width: 100%; height: 58px; border-radius: 999px; font-size: 17px; font-weight: 800; transition: .2s ease; }
#display_pay_button .btn_submit { background: #111827; border: 0; color: #fff; }
#display_pay_button .btn_submit:hover { background: #34c0ec; transform: translateY(-1px); }
#display_pay_button .btn01 { background: #fff; border: 1px solid #e5e7eb; color: #111827; }
#display_pay_button .btn01:hover { background: #f8fafc; }
.cp_btn, .cp_apply, .btn_frmline { border: 1px solid #e5e7eb !important; border-radius: 999px !important; background: #fff !important; color: #111827 !important; height: 34px !important; padding: 0 14px !important; font-size: 13px; font-weight: 700; transition: .2s ease; }
.cp_btn:hover, .cp_apply:hover, .btn_frmline:hover { background: #111827 !important; border-color: #111827 !important; color: #fff !important; }
.sod_right { position: sticky; top: 30px; }
#sod_frm #sod_bsk_tot .sod_bsk_cnt strong, #od_tot_price strong { color: #111827 !important; }
#sod_frm #sod_bsk_tot .sod_bsk_coupon:before, #sod_frm #sod_bsk_tot .sod_bsk_dvr:before, .sod_right .sod_info .sod_bsk_coupon:before, .sod_right .sod_info .sod_bsk_dvr:before { border: 1px solid #e5e7eb; color: #9ca3af; }
#sod_ws { margin: 40px 0; }
#sod_ws li { position: relative; background: #fff; border: 1px solid #eef2f7; border-radius: 22px; padding: 22px; margin-bottom: 16px; transition: .2s ease; }
#sod_ws li:hover { background: #f8fafc; transform: translateY(-1px); }
.sod_ws_img { width: 100px; text-align: center; }
.sod_ws_img img { width: 88px; height: 88px; object-fit: cover; border-radius: 16px; border: 1px solid #eef2f7; }
#sod_ws li .info_link { display: block; margin: 8px 0 6px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; color: #111827; font-size: 16px; font-weight: 800; letter-spacing: -.02em; }
#sod_ws li .info_date { color: #9ca3af; font-size: 13px; }
#sod_ws li .wish_chk { position: absolute; top: 20px; left: 18px; width: auto; line-height: 1; color: #ef4444; }
#sod_ws li .wish_info { padding: 0 52px 0 36px; position: relative; border-bottom: 0; margin-top: 0; height: auto; }
#sod_ws li .wish_del { position: absolute; top: 18px; right: 18px; width: 36px; height: 36px; line-height: 36px; text-align: center; background: #fff; border: 1px solid #e5e7eb; border-radius: 50%; display: block; font-size: 16px; color: #9ca3af; transition: .2s ease; }
#sod_ws li .wish_del:hover { background: #111827; border-color: #111827; color: #fff; }
#sod_ws_act { text-align: center; margin: 30px 0 40px; }
#sod_ws_act button { height: 52px; width: 190px; font-weight: 800; font-size: 15px; border-radius: 999px; transition: .2s ease; }
#sod_ws_act .btn01 { border: 1px solid #e5e7eb; background: #fff; color: #111827; }
#sod_ws_act .btn01:hover { background: #f8fafc; }
#sod_ws_act .btn02 { border: 0; background: #111827; color: #fff; }
#sod_ws_act .btn02:hover { background: #34c0ec; }
.status_01, .status_02, .status_03, .status_04, .status_05, .status_06 { display: inline-flex; align-items: center; justify-content: center; min-width: 74px; height: 32px; padding: 0 12px; border-radius: 999px; font-size: 12px; font-weight: 800; line-height: 1; border: 1px solid transparent; }
.status_01 { background: #f3f4f6; color: #6b7280; }
.status_02 { background: #ecfeff; color: #0891b2; }
.status_03 { background: #eff6ff; color: #2563eb; }
.status_04 { background: #eef2ff; color: #4f46e5; }
.status_05 { background: #ecfdf5; color: #059669; }
.status_06 { background: #fef2f2; color: #dc2626; }
#sod_fin_no { margin: 0 0 24px; padding: 24px; border: 1px solid #eef2f7; background: #f8fafc; font-size: 18px; border-radius: 24px; color: #111827; font-weight: 800; }
#sod_fin_legend { padding: 24px; line-height: 1.7; background: #fff; margin: 16px 0; border: 1px solid #eef2f7; border-radius: 22px; }
#sod_fin_pay { margin: 0 0 24px; background: #fff; border: 1px solid #eef2f7; border-radius: 22px; overflow: hidden; }
#sod_fin_pay h3 { background: #fff; font-size: 17px; padding: 20px 24px; border-bottom: 1px solid #eef2f7; color: #111827; font-weight: 800; }
#sod_fin_pay ul { margin: 0; padding: 20px 24px; }
#sod_fin_pay li { line-height: 1.7; padding: 8px 0; }
#sod_fin_pay li > strong { color: #6b7280; font-weight: 700; }
#sod_fin #sod_bsk_tot, #sod_bsk_tot2 { border: 1px solid #eef2f7; border-radius: 22px; overflow: hidden; margin-bottom: 24px; }
/* #sod_fin #sod_bsk_tot li, #sod_bsk_tot2 li { background: #fff; padding: 0 24px; line-height: 54px; text-align: right; border-bottom: 1px solid #eef2f7; } */
#sod_fin #sod_bsk_tot li span, #sod_bsk_tot2 li span { float: left; color: #6b7280; font-size: 14px; font-weight: 600; }
#sod_fin #sod_bsk_tot .sod_bsk_cnt strong, #sod_bsk_tot2 li.sod_fin_tot strong { color: #111827; font-size: 24px; font-weight: 900; }
#sod_bsk_tot2 li.sod_fin_tot { background: #f8fafc; }
#sod_fin_cancel .sod_fin_c_btn { height: 54px; border: 1px solid #e5e7eb; border-radius: 999px; font-weight: 800; width: 100%; background: #fff; color: #6b7280; transition: .2s ease; }
#sod_fin_cancel .sod_fin_c_btn:hover { background: #111827; border-color: #111827; color: #fff; }
#sod_fin_cancel p { text-align: center; background: #fef2f2; border: 1px solid #fecaca; border-radius: 18px; padding: 18px; color: #dc2626; font-size: 15px; font-weight: 700; }
.sod_fin_bg { background: rgba(15,23,42,.45); backdrop-filter: blur(3px); }
.sod_frm_mobile { background: #f8fafc; color: #111827; }
.sod_frm_mobile .li_prqty { padding: 0 20px; }
/* 카드형 */
.sod_frm_mobile .sod_list .sod_li, .sod_frm_mobile #sod_frm_orderer, .sod_frm_mobile #sod_frm_taker, .sod_frm_mobile #settle_bank, .sod_frm_mobile #m_sod_frm_paysel h3, .sod_frm_mobile #m_sod_frm_paysel ul, .sod_frm_mobile .sod_frm_point div, .sod_frm_mobile .pesonal, .sod_frm_mobile #personal_pay { border: 1px solid #eef2f7 !important; border-radius: 18px; background: #fff; box-shadow: 0 4px 12px rgba(15,23,42,.05); overflow: visible; }
.sod_frm_mobile .sod_list .sod_li { margin-bottom: 14px; border-bottom: 0; }
.sod_frm_mobile .sod_list .li_name { border-bottom: 1px solid #eef2f7; padding: 16px; font-size: 15px; font-weight: 800; color: #111827; line-height: 1.4; }
/* 상품 영역 */
.sod_frm_mobile .sod_list .li_op_wr { padding: 16px; padding-left: 105px; min-height: 100px; position: relative; word-break: keep-all; }
/* 상품 이미지 */
.sod_frm_mobile .sod_list .total_img { position: absolute; left: 16px; top: 16px; }
.sod_frm_mobile .sod_list .total_img img { width: 72px; height: 72px; object-fit: cover; border-radius: 12px; border: 1px solid #eef2f7; }
/* 작은 모바일 대응 */
@media (max-width:480px) {
  .sod_frm_mobile .sod_list .li_op_wr { padding-left: 96px; }
  .sod_frm_mobile .sod_list .total_img img { width: 64px; height: 64px; }
}
/* =========================
   PETAZ 결제정보 / 토스페이먼츠
========================= */
#sod_frm_pay { margin-top: 40px; background-color: #fcfcfc; }
#sod_frm_pay > h2 { margin: 0 0 18px; font-size: 24px; font-weight: 900; color: #111827; letter-spacing: -.04em; }
#sod_frm_pay .pay_tbl { border: 1px solid #eef2f7; border-radius: 24px; background: #fff; overflow: hidden; box-shadow: 0 16px 44px rgba(15,23,42,.04); margin: 0 2% 10px; }
#sod_frm_pay .pay_tbl table { width: 100%; border-collapse: collapse; }
#sod_frm_pay .pay_tbl th, #sod_frm_pay .pay_tbl td { padding: 18px 22px; border-bottom: 1px solid #f2f4f7; font-size: 14px; }
#sod_frm_pay .pay_tbl tr:last-child th, #sod_frm_pay .pay_tbl tr:last-child td { border-bottom: 0; }
#sod_frm_pay .pay_tbl th { width: 120px; color: #667085; font-weight: 700; text-align: left; }
#sod_frm_pay .pay_tbl td { color: #111827; text-align: left; }
#sod_frm_pay .pay_tbl strong { color: #34C0EC; font-size: 17px; font-weight: 900; }
#sod_frm_pay .pay_tbl .btn_frmline { margin-left: 10px; height: 34px; padding: 0 14px; border: 1px solid #e5e7eb; border-radius: 999px; background: #fff; color: #111827; font-size: 13px; font-weight: 700; }
#sod_frm_pay .pay_tbl .btn_frmline:hover { background: #111827; border-color: #111827; color: #fff; }
#od_tot_price { margin: 18px 0 24px; padding: 24px; border-radius: 24px; background: linear-gradient(135deg, #f6fbfe 0%, #ffffff 100%); border: 1px solid #e6f3f8; text-align: right; margin: 0 2%; }
#od_tot_price span { float: left; color: #667085; font-size: 15px; font-weight: 700; }
#od_tot_price strong { color: #111827; font-size: 30px; font-weight: 900; letter-spacing: -.04em; }
#od_pay_sl { margin-top: 24px; }
#od_pay_sl .od_pay_buttons_el { padding: 26px; border: 1px solid #eef2f7; border-radius: 24px; background: #fff; box-shadow: 0 16px 44px rgba(15,23,42,.04); margin: 0 2% 10px; }
#od_pay_sl h3 { margin: 0 0 18px; color: #111827; font-size: 18px; font-weight: 900; letter-spacing: -.03em; }
#sod_frm_pt_alert { margin: 0 0 18px; padding: 14px 16px; border-radius: 16px; background: #f8fafc; color: #667085; font-size: 13px; line-height: 1.6; }
#sod_frm_pt_alert strong { color: #111827; }
#sod_frm_paysel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; border: 0; }
#sod_frm_paysel legend { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#sod_frm_paysel input[type="radio"] { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
#sod_frm_paysel .lb_icon { position: relative; display: flex; align-items: center; min-height: 72px; padding: 18px; border: 1px solid #e5e7eb; border-radius: 20px; background: #fff; color: #111827; font-size: 15px; font-weight: 800; cursor: pointer; transition: .2s ease; word-break: keep-all; }
/* #sod_frm_paysel .lb_icon:before { content: ''; position: absolute; left: 18px; top: 50%; width: 28px; height: 28px; border-radius: 50%; transform: translateY(-50%); background: #f1fbff; border: 1px solid #d8f3fc; }
#sod_frm_paysel .lb_icon:after { position: absolute; left: 18px; top: 50%; width: 28px; height: 28px; line-height: 28px; text-align: center; transform: translateY(-50%); color: #34C0EC; font-family: 'xeicon'; font-size: 17px; font-weight: 400; }
 */
#sod_frm_paysel .lb_icon:hover { border-color: #34C0EC; background: #f8fcff; transform: translateY(-1px); }
#sod_frm_paysel input[type="radio"]:checked + .lb_icon { border-color: #34C0EC; background: #f1fbff; box-shadow: 0 0 0 4px rgba(52,192,236,.1); color: #111827; }
#sod_frm_paysel input[type="radio"]:checked + .lb_icon:before { background: #34C0EC; border-color: #34C0EC; }
#sod_frm_paysel input[type="radio"]:checked + .lb_icon:after { color: #fff; }
/* #sod_frm_paysel .card_icon:after { content: '\ea21'; }
#sod_frm_paysel .bank_icon:after { content: '\e9f1'; }
#sod_frm_paysel .vbank_icon:after { content: '\e9f3'; }
#sod_frm_paysel .iche_icon:after { content: '\e9d5'; }
#sod_frm_paysel .hp_icon:after { content: '\eb09'; } */
#sod_frm_paysel .kakaopay_icon:after { content: 'K'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 14px; }
#sod_frm_paysel .naverpay_icon:after { content: 'N'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 14px; }
/* #sod_frm_paysel .PAYCO:after, #sod_frm_paysel .paycopay_icon:after { content: 'P'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 14px; }
#sod_frm_paysel .inicis_lpay:after, #sod_frm_paysel .lpay_icon:after { content: 'L'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 14px; } */
#sod_frm_paysel .samsungpay_icon:after { content: 'S'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 14px; }
#sod_frm_paysel .skpay_icon:after { content: 'SK'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 11px; }
#sod_frm_paysel .ssgpay_icon:after { content: 'S'; font-family: 'Pretendard', sans-serif; font-weight: 900; font-size: 14px; }
#settle_bank { grid-column: 1 / -1; margin-top: 8px; padding: 18px; border: 1px solid #eef2f7; border-radius: 18px; background: #f8fafc; color: #667085; }
#settle_bank select, #settle_bank input[type="text"] { width: 100%; height: 46px; margin-top: 8px; padding: 0 14px; border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; color: #111827; }
.sod_frm_point { margin-top: 18px; padding: 20px; border: 1px solid #eef2f7; border-radius: 20px; background: #f8fafc; }
.sod_frm_point > div:first-child { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.sod_frm_point label { color: #111827; font-size: 14px; font-weight: 700; }
#od_temp_point { width: 120px; height: 42px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 12px; background: #fff; text-align: right; }
#sod_frm_pt { display: grid; gap: 8px; margin-top: 14px; }
#sod_frm_pt span { display: flex; justify-content: space-between; color: #667085; font-size: 13px; }
#sod_frm_pt strong { color: #111827; font-weight: 700; }
/* 모바일 주문서 전체 안정화 */
.sod_frm_mobile * { box-sizing: border-box; }
.sod_frm_mobile { color: #111827; background: #f8fafc; }
/* 옵션/상품 정보 */
.sod_frm_mobile .sod_opt li, .sod_frm_mobile .sod_opt .opt_name { color: #4b5563; font-size: 13px; line-height: 1.5; }
.sod_frm_mobile .sod_opt li:before, .sod_frm_mobile .sod_opt .opt_name:before { background: rgba(52,192,236,.1); color: #34c0ec; border-radius: 999px; padding: 0 7px; font-size: 11px; font-weight: 800; }
/* 상품별 금액 */
.sod_frm_mobile .sod_list .total_price { background: #f8fafc; border: 1px solid #eef2f7; border-radius: 14px; margin: 0 10px 14px; padding: 12px; }
.sod_frm_mobile .sod_list .total_price strong, .sod_frm_mobile .od_prd_list .total_prc { color: #111827 !important; font-weight: 900; }
/* 결제 총액 박스 - 검정 제거 */
.sod_frm_mobile #m_sod_bsk_tot { background: #fff !important; border: 1px solid #e5e7eb; border-radius: 18px; overflow: hidden; margin: 16px 10px; color: #111827 !important; }
.sod_frm_mobile #m_sod_bsk_tot dt, .sod_frm_mobile #m_sod_bsk_tot dd { padding: 13px 14px; color: #111827 !important; background: #fff !important; }
.sod_frm_mobile #m_sod_bsk_tot .sod_bsk_cnt { background: #f8fafc !important; border-top: 1px solid #eef2f7; }
.sod_frm_mobile #m_sod_bsk_tot .sod_bsk_cnt strong, .sod_frm_mobile #m_sod_bsk_tot strong, .sod_frm_mobile #m_sod_bsk_tot span { color: #111827 !important; font-weight: 900; }
/* 입력폼 */
.sod_frm_mobile input[type="text"], .sod_frm_mobile input[type="tel"], .sod_frm_mobile input[type="password"], .sod_frm_mobile select, .sod_frm_mobile textarea { width: 100%; max-width: 100%; border: 1px solid #e5e7eb; border-radius: 12px; min-height: 46px; padding: 0 13px; background: #fff; color: #111827; font-size: 14px; }
.sod_frm_mobile textarea { min-height: 100px; padding: 13px; }
.sod_frm_mobile input:focus, .sod_frm_mobile select:focus, .sod_frm_mobile textarea:focus { border-color: #34c0ec; box-shadow: 0 0 0 3px rgba(52,192,236,.1); outline: none; }
/* 버튼 */
.sod_frm_mobile .btn_submit, .sod_frm_mobile .btn_cancel, .sod_frm_mobile .btn01, .sod_frm_mobile .cp_btn, .sod_frm_mobile .cp_btn1, .sod_frm_mobile .cp_cancel, .sod_frm_mobile .cp_cancel1, .sod_frm_mobile .mod_options, .sod_frm_mobile #order_address, .sod_frm_mobile .btn_addsch { border-radius: 999px !important; font-weight: 700; transition: .2s ease; white-space: nowrap; }
.sod_frm_mobile .btn_submit { background: #111827 !important; border: 0 !important; color: #fff !important; height: 52px; }
.sod_frm_mobile .btn_submit:hover { background: #34c0ec !important; }
.sod_frm_mobile .btn_cancel, .sod_frm_mobile .btn01, .sod_frm_mobile .cp_btn, .sod_frm_mobile .cp_btn1, .sod_frm_mobile .cp_cancel, .sod_frm_mobile .cp_cancel1, .sod_frm_mobile .mod_options, .sod_frm_mobile #order_address, .sod_frm_mobile .btn_addsch { background: #fff !important; border: 1px solid #e5e7eb !important; padding: 5px 10px; color: #374151 !important; }
/* 결제수단 */
.sod_frm_mobile #m_sod_frm_paysel { /* display: flex; */
  /* flex-wrap: wrap; */
  /* gap: 8px; */
}
.sod_frm_mobile #m_sod_frm_paysel li { width: calc(50% - 4px); padding: 0; height: auto; }
.sod_frm_mobile #m_sod_frm_paysel label { display: flex; align-items: center; justify-content: center; min-height: 52px; padding: 10px; border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; color: #111827; font-size: 14px; text-align: center; }
/* 포인트 안내 */
.sod_frm_mobile#sod_frm #sod_frm_pt_alert, .sod_frm_mobile #sod_frm_pt_alert { background: #fff7ed; color: #c2410c; border-radius: 14px; padding: 14px; font-size: 13px; }
.sod_frm_mobile #sod_frm_pt_alert::before { background: #fb923c; border-radius: 14px 0 0 14px; }
/* 체크박스/라디오 */
.sod_frm_mobile .chk_box input[type="checkbox"] + label span, .sod_frm_mobile .chk_box input[type="radio"] + label span { border: 1px solid #d1d5db; }
.sod_frm_mobile .chk_box input[type="checkbox"]:checked + label span { background: #111827; border-color: #111827; }
.sod_frm_mobile .chk_box input[type="radio"]:checked + label { color: #111827; }
.sod_frm_mobile .chk_box input[type="radio"]:checked + label span:before { background: #111827; }
/* 개인결제/테이블 */
.sod_frm_mobile .pesonal h2, .sod_frm_mobile #personal_pay h2 { border-bottom: 1px solid #eef2f7; padding: 18px 16px; font-size: 17px; font-weight: 800; color: #111827; }
.sod_frm_mobile .pesonal .tbl_frm01 { padding: 16px; }
/* 네이버페이 */
.sod_frm_mobile .itemform-naverpay, .sod_frm_mobile .cart-naverpay { margin-top: 20px; }
/* 아주 좁은 모바일 대응 */
@media (max-width:360px) {
  .sod_frm_mobile #m_sod_frm_paysel li { width: 100%; }
  .sod_frm_mobile #m_sod_frm_paysel label { min-height: 48px; }
}
.sod_frm_mobile { background: #f8fafc; color: #111827; padding: 14px; }
.sod_frm_mobile section, .sod_frm_mobile .sod_li, .sod_frm_mobile #m_sod_bsk_tot, .sod_frm_mobile #m_sod_frm_paysel ul, .sod_frm_mobile #settle_bank { background: #fff !important; border: 1px solid #eef2f7 !important; border-radius: 20px; box-shadow: 0 8px 24px rgba(15,23,42,.05); overflow: hidden; }
.sod_frm_mobile h2 { padding: 18px 18px 14px; font-size: 18px; font-weight: 900; color: #111827; border-bottom: 1px solid #eef2f7; }
.sod_frm_mobile .odf_list, .sod_frm_mobile .odf_tbl { padding: 16px; }
.sod_frm_mobile .odf_list li { margin-bottom: 14px; }
.sod_frm_mobile label, .sod_frm_mobile .odf_list strong, .sod_frm_mobile th { margin-bottom: 7px; font-size: 13px; font-weight: 800; color: #374151; height: 40px; }
.sod_frm_mobile input[type="text"], .sod_frm_mobile input[type="tel"], .sod_frm_mobile input[type="email"], .sod_frm_mobile input[type="password"], .sod_frm_mobile select, .sod_frm_mobile textarea { width: 100%; min-height: 48px; border: 1px solid #e5e7eb; border-radius: 14px; padding: 0 14px; background: #fff; color: #111827; font-size: 14px; margin: 5px 0; }
.sod_frm_mobile textarea { padding: 14px; min-height: 100px; }
.sod_frm_mobile #m_sod_bsk_tot { display: grid; grid-template-columns: 1fr 1fr; margin: 16px 0; }
.sod_frm_mobile #m_sod_bsk_tot dt, .sod_frm_mobile #m_sod_bsk_tot dd { padding: 14px 16px; background: #fff !important; color: #111827 !important; border-bottom: 1px solid #eef2f7; }
.sod_frm_mobile #m_sod_bsk_tot .sod_bsk_cnt { background: #f8fafc !important; font-size: 16px; font-weight: 900; }
.sod_frm_mobile #m_sod_bsk_tot strong { color: #111827 !important; font-weight: 900; }
.sod_frm_mobile #m_sod_frm_paysel ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 14px; }
.sod_frm_mobile #m_sod_frm_paysel li { width: calc(50% - 4px); }
.sod_frm_mobile #m_sod_frm_paysel input[type="radio"] { display: none; }
.sod_frm_mobile #m_sod_frm_paysel label { display: flex; align-items: center; justify-content: center; min-height: 52px; margin: 0; border: 1px solid #e5e7eb; border-radius: 16px; background: #fff; color: #111827; font-size: 14px; font-weight: 800; }
.sod_frm_mobile #m_sod_frm_paysel input[type="radio"]:checked + label { background: #111827; border-color: #111827; color: #fff; }
.sod_frm_mobile .btn_submit { width: 100%; height: 54px; border-radius: 999px !important; background: #111827 !important; color: #fff !important; font-weight: 900; }
