@charset "utf-8";

/* 게시판 버튼 */
/* 목록 버튼 */
#bo_list a.btn_b01 {}
#bo_list a.btn_b01:focus, #bo_list a.btn_b01:hover {}
#bo_list a.btn_b02 {}
#bo_list a.btn_b02:focus, #bo_list a.btn_b02:hover {}
#bo_list a.btn_admin {} /* 관리자 전용 버튼 */
#bo_list a.btn_admin:focus, #bo_list .btn_admin:hover {}

/* 읽기 버튼 */
#bo_v a.btn_b01 {}
#bo_v a.btn_b01:focus, #bo_v a.btn_b01:hover {}
#bo_v a.btn_b02 {}
#bo_v a.btn_b02:focus, #bo_v a.btn_b02:hover {}
#bo_v a.btn_admin {} /* 관리자 전용 버튼 */
#bo_v a.btn_admin:focus, #bo_v a.btn_admin:hover {}

/* 쓰기 버튼 */
#bo_w .btn_confirm {} /* 서식단계 진행 */
#bo_w .btn_submit {padding:0 20px}
#bo_w button.btn_submit {}
#bo_w fieldset .btn_submit {}
#bo_w .btn_cancel {}
#bo_w button.btn_cancel {}
#bo_w .btn_cancel:focus, #bo_w .btn_cancel:hover {}
#bo_w a.btn_frmline, #bo_w button.btn_frmline {} /* 우편번호검색버튼 등 */
#bo_w button.btn_frmline {}

/* 기본 테이블 */
/* 목록 테이블 */
#bo_list .tbl_head01 {}
#bo_list .tbl_head01 caption {}
#bo_list .tbl_head01 thead th {}
#bo_list .tbl_head01 thead a {}
#bo_list .tbl_head01 thead th input {} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
#bo_list .tbl_head01 tfoot th {}
#bo_list .tbl_head01 tfoot td {}
#bo_list .tbl_head01 tbody th {}
#bo_list .tbl_head01 td {}
#bo_list .tbl_head01 a {}
#bo_list td.empty_table {}

/* 읽기 내 테이블 */
#bo_v .tbl_head01 {}
#bo_v .tbl_head01 caption {}
#bo_v .tbl_head01 thead th {}
#bo_v .tbl_head01 thead a {}
#bo_v .tbl_head01 thead th input {} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
#bo_v .tbl_head01 tfoot th {}
#bo_v .tbl_head01 tfoot td {}
#bo_v .tbl_head01 tbody th {}
#bo_v .tbl_head01 td {}
#bo_v .tbl_head01 a {}
#bo_v td.empty_table {}

/* 쓰기 테이블 */
#bo_w table {}
#bo_w caption {}
#bo_w .frm_info {}
#bo_w .frm_address {}
#bo_w .frm_file {}

#bo_w .tbl_frm01 {}
#bo_w .tbl_frm01 th {}
#bo_w .tbl_frm01 td {}
#bo_w .tbl_frm01 textarea, #bo_w .tbl_frm01 .frm_input {}
#bo_w .tbl_frm01 textarea {}
/*
#bo_w .tbl_frm01 #captcha {}
#bo_w .tbl_frm01 #captcha input {}
*/
#bo_w .tbl_frm01 a {}

/* 필수입력 */
#bo_w .required, #bo_w textarea.required {}

#bo_w .cke_sc {}
#bo_w button.btn_cke_sc{}
#bo_w .cke_sc_def {}
#bo_w .cke_sc_def dl {}
#bo_w .cke_sc_def dl:after {}
#bo_w .cke_sc_def dt, #bo_w .cke_sc_def dd {}
#bo_w .cke_sc_def dt {}
#bo_w .cke_sc_def dd {}

/* ### 기본 스타일 커스터마이징 끝 ### */

/* 게시판 목록 */
#bo_list {position:relative}
#bo_list:after {display:block;visibility:hidden;clear:both;content:""}
#bo_list .td_board {width:120px;text-align:center}
#bo_list .td_chk {width:30px;text-align:center}
#bo_list .td_date {width:60px;text-align:center;font-style: italic;}
#bo_list .td_datetime {width:60px;text-align:center;font-style: italic}
#bo_list .td_group {width:100px;text-align:center}
#bo_list .td_mb_id {width:100px;text-align:center}
#bo_list .td_mng {width:80px;text-align:center}
#bo_list .td_name {width:90px;text-align:left;padding:10px 0}
#bo_list .td_nick {width:100px;text-align:center}
#bo_list .td_num {width:50px;text-align:center}
#bo_list .td_num2 {width:50px;text-align:center}
#bo_list .td_numbig {width:80px;text-align:center}
#bo_list .txt_active {color:#5d910b}
#bo_list .txt_expired {color:#ccc}
#bo_list tbody tr:hover {border-left:2px solid #253dbe}

#bo_cate {background:#ecf2f3;padding:7px;margin:10px 0;border:1px solid #bed1d4}
#bo_cate h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {zoom:1}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {display:inline-block;padding:2px;}
#bo_cate a {display:block;line-height:26px;padding:0 10px;border-radius:3px;border:1px solid transparent}
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active {text-decoration:none;background:#d2d6dc;}
#bo_cate #bo_cate_on {z-index:2;background:#3497d9;color:#fff;font-weight:bold;border-bottom-color:#1977b5;
-webkit-box-shadow: inset 0 2px 5px rgb(33, 135, 202);
-moz-box-shadow: inset 0 2px 5px rgb(33, 135, 202);
box-shadow:inset 0 2px 5px rgb(33, 135, 202);}
.td_subject img {margin-left:5px}

/* 게시판 목록 공통 */
#bo_btn_top{margin: 10px 0 }
#bo_btn_top:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx {margin-bottom:5px;float:right;zoom:1}
.bo_fx:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx ul {margin:0;padding:0;list-style:none}
#bo_list_total {float:left;line-height:30px;font-size:0.92em;color:#4e546f;background:#d4d4d4;padding:0 10px;border-radius:5px;}

.btn_bo_user {float:right;margin:0;padding:0;list-style:none}
.btn_bo_user li {float:left;margin-left:5px}
.btn_bo_adm {float:left}
.btn_bo_adm li {float:left;margin-right:5px}
.btn_bo_adm input {padding:0 8px;border:0;background:#d4d4d4;color:#666;text-decoration:none;vertical-align:middle}
.bo_notice td {background:#e6f8ff !important;border-bottom:1px solid #c3dfe8;}
.bo_notice td a {font-weight:bold;}

.bo_notice .notice_icon{display:inline-block;background:#4158d1;width:25px;line-height:25px;border-radius:5px;font-weight:normal;color:#fff}
.td_num strong {color:#000}
.bo_cate_link {display: inline-block;color: #3497d9;height: 20px;font-size:0.92em} /* 글제목줄 분류스타일 */
.bo_tit{display:block;color:#000;font-weight:bold;}
.bo_current {color:#e8180c}
/*#bo_list .profile_img {display:inline-block;margin-right:2px}*/
#bo_list .profile_img img{border-radius:50%}
#bo_list .cnt_cmt{background:#5c85c1;color:#fff; font-size:11px;height:16px;line-height:16px;padding:0 5px;border-radius:3px;vertical-align:middle;
-webkit-box-shadow: inset 0 2px 5px  rgba(255,255,255,0.3);
-moz-box-shadow: inset 0 2px 5px  rgba(255,255,255,0.3);
box-shadow: inset 0 2px 5px  rgba(255,255,255,0.3);}

#bo_list .bo_tit .title_icon{margin-right:2px}
#bo_list .bo_tit .fa-download{width:16px;height:16px;line-height:16px;background:#e89f31;color:#fff;text-align:center;font-size:10px;border-radius:2px;margin-right:2px;vertical-align:middle}
#bo_list .bo_tit .fa-link{width:16px;height:16px;line-height:16px;background:#ad68d8;color:#fff;text-align:center;font-size:10px;border-radius:2px;margin-right:2px;vertical-align:middle;font-weight:normal}
#bo_list .bo_tit .new_icon{display:none !important}
.pointshop_store_grid .new_icon,
.pointshop_store_grid .icon_new,
.pointshop_store_grid img[src*="icon_new"],
.pointshop_card_title .new_icon,
.pointshop_card_title .icon_new,
.pointshop_card_title img[src*="icon_new"]{display:none !important}
#bo_list .bo_tit .fa-heart{display:inline-block;width: 16px;line-height:16px ;font-size:0.833em;color:#fff;background:#e52955;text-align:center;border-radius: 2px;vertical-align:middle;margin-right:2px;font-weight:normal}
#bo_list .bo_tit .fa-lock{display: inline-block;line-height: 14px;width: 16px;font-size: 0.833em;color: #4f818c;background: #cbe3e8;text-align: center;border-radius: 2px;font-size: 12px;border:1px solid #a2c6ce}


#bo_sch {float:left;border:1px solid #ccc;background:#fff;border-radius:3px}
#bo_sch:after {display:block;visibility:hidden;clear:both;content:""}
#bo_sch legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
#bo_sch select{border:0;margin:9px 5px ;height:20px;float:left;border-right:1px solid #ddd;}
#bo_sch .sch_input{height:38px;border:0;padding:0;background-color:transparent;float:left}
#bo_sch .sch_btn{height:38px;float:left;background:none;border:0;width:40px;font-size:15px}


/* 게시판 쓰기 */
#char_count_desc {display:block;margin:0 0 5px;padding:0}
#char_count_wrap {margin:5px 0 0;text-align:right}
#char_count {font-weight:bold}

#autosave_wrapper {position:relative}
#autosave_pop {display:none;z-index:10;position:absolute !important;top:34px;right:0;width:350px;height:auto !important;height:180px;max-height:180px;border:1px solid #565656;background:#fff;
-webkit-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);}
#autosave_pop:before{content: "";position: absolute;top: -8px;right: 45px;width: 0;height: 0;border-style: solid;border-width: 0 6px 8px 6px;border-color: transparent transparent #000 transparent;}
#autosave_pop:after{content: "";position: absolute;top: -7px;right: 45px;width: 0;height: 0;border-style: solid;border-width: 0 6px 8px 6px;border-color: transparent transparent #fff transparent;}
html.no-overflowscrolling #autosave_pop {height:auto;max-height:10000px !important} /* overflow 미지원 기기 대응 */
#autosave_pop strong {position:absolute;font-size:0;line-height:0;overflow:hidden}
#autosave_pop div {text-align:center;margin:0 !important;}
#autosave_pop button {margin:0;padding:0;border:0;}
#autosave_pop ul {padding:15px;border-top:1px solid #e9e9e9;list-style:none;overflow-y:scroll;height:130px;border-bottom:1px solid #e8e8e8}
#autosave_pop li {padding:8px 5px;border-bottom:1px solid #fff;background:#eee;zoom:1}
#autosave_pop li:after {display:block;visibility:hidden;clear:both;content:""}
#autosave_pop a {display:block;float:left}
#autosave_pop span {display:block;float:right;font-size:0.92em;font-style:italic;color:#999}
.autosave_close {cursor:pointer;width:100%;height:30px;background:none;color:#888;font-weight:bold;font-size:0.92em}
.autosave_close:hover{background:#f3f3f3;color:#3597d9}
.autosave_content {display:none}
.autosave_del{background:url(./img/close_btn.png) no-repeat 50% 50%;text-indent:-999px;overflow:hidden;height:20px;width:20px;}

/* 게시판 읽기 */
#bo_v {margin-bottom:20px;padding:20px;background:#fff;box-sizing:border-box}

#bo_v_table {position:absolute;top:0;right:16px;margin:0;padding:0 5px;height:25px;background:#ff3061;color:#fff;font-weight:bold;line-height:2.2em}

#bo_v_title {}
#bo_v_title .bo_v_cate{display:inline-block;line-height:26px;background: #3497d9;color: #fff;font-weight: bold;border-bottom:1px solid #1977b5;padding:0 10px;border-radius:3px;
-webkit-box-shadow: inset 0 2px 5px rgb(33, 135, 202);
-moz-box-shadow: inset 0 2px 5px rgb(33, 135, 202);
box-shadow: inset 0 2px 5px rgb(33, 135, 202);
}
#bo_v_title .bo_v_tit{display:block;font-size:2em;margin:5px 0 0;word-break:break-all}

#bo_v_info {padding: 10px 0 15px;margin:0 0 20px;border-bottom:1px solid #ddd;color:#666}
#bo_v_info:after {display:block;visibility:hidden;clear:both;content:""} 
#bo_v_info h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_info strong {display:inline-block;margin:0 10px 0 0;font-weight:normal}
#bo_v_info .sv_member,
#bo_v_info .sv_guest,
#bo_v_info .member,
#bo_v_info .guest {font-weight:bold}
#bo_v_info .profile_img {}
#bo_v_info .profile_img img{border-radius:50%}
#bo_v_info .sv_member{color:#000}
#bo_v_info .if_view{display:inline-block;background:url(./img/icon_view.png) no-repeat 50% 50%;height:15px;width:20px;overflow:hidden;text-indent:-999px;vertical-align:middle;margin-right:3px}
#bo_v_info .if_comment{display:inline-block;background:url(./img/icon_comment.png) no-repeat 50% 50%;height:15px;width:20px;overflow:hidden;text-indent:-999px;vertical-align:middle;margin-right:3px}
#bo_v_info .if_date{float:right;margin:0;font-style:italic;color:#888}

#bo_v_file {margin:10px 0;border:1px solid #d4d4d4}
#bo_v_file h2 {padding:10px;background: #f3f3f3}
#bo_v_file ul {margin:0;padding:5px 0;list-style:none}
#bo_v_file li {padding:5px 10px;position:relative;}
#bo_v_file a {display:inline-block;color:#3497d9;text-decoration:underline;word-wrap:break-word}
#bo_v_file a:focus, #bo_v_file a:hover, #bo_v_file a:active {text-decoration:none}
#bo_v_file img {float:left;margin:0 10px 0 0}
.bo_v_file_cnt  {position:absolute;top:5px;right:10px;color:#888;font-size:0.92em}

#bo_v_link {margin:10px 0;border:1px solid #d4d4d4}
#bo_v_link h2 {padding:10px;border-bottom:1px solid #e8e8e8;background: #f3f3f3}
#bo_v_link ul {margin:0;padding:5px 0;list-style:none}
#bo_v_link li {padding:5px 10px;position:relative;}
#bo_v_link a {display:inline-block;color:#3497d9;text-decoration:underline;word-wrap:break-word}
#bo_v_link a:focus, #bo_v_link a:hover, #bo_v_link a:active {text-decoration:none}
.bo_v_link_cnt {position:absolute;top:5px;right:10px;color:#888;font-size:0.92em}

#bo_v_top {zoom:1}
#bo_v_top:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_top h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_top ul {padding:0;list-style:none;word-break:break-all}

#bo_v_bot {zoom:1}
#bo_v_bot:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_bot h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_bot ul {padding:0;list-style:none}

.bo_v_com {margin:20px 0;float:right}
.bo_v_com li {float:left;margin-left:5px}

.bo_v_left {margin:20px 0;float:left}
.bo_v_left li {float:left;margin-right:5px}

.bo_v_nb {margin:20px 0;position:relative;clear:both;text-align:left;border-bottom:1px solid #ddd}
.bo_v_nb:after {display:block;visibility:hidden;clear:both;content:""}
.bo_v_nb li {border-top:1px solid #ddd;padding:13px;border-left:1px solid #ddd;border-right:1px solid #ddd;}
.bo_v_nb li:hover{background:#f6f6f6}
.bo_v_nb li i{font-size:13px}
.bo_v_nb li .nb_tit{display:inline-block;padding-right:20px;color:#4567b5}
.bo_v_nb li .nb_date{float:right;color:#888}

#bo_v_atc {min-height:200px;height:auto !important;height:200px}
#bo_v_atc_title {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_img {width:100%;overflow:hidden;zoom:1}
#bo_v_img:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_img a.view_image{display:block}
#bo_v_img img {margin-bottom:20px;max-width:100%;height:auto}

#bo_v_con {margin:10px 0 30px;width:100%;line-height:1.7em;min-height:200px;word-break:break-all;overflow:hidden}
#bo_v_con a {color:#000;text-decoration:underline}
#bo_v_con img {max-width:100%;height:auto}

#bo_v_act {margin-bottom:30px;text-align:center}
#bo_v_act .bo_v_act_gng {position:relative}
#bo_v_act a {margin-right:5px;vertical-align:middle}
#bo_v_act a:hover{background-color:#f3f3f3}
#bo_v_act_good, #bo_v_act_nogood {display:none;position:absolute;top:30px;left:0;padding:10px 0;width:165px;background:#ff3061;color:#fff;text-align:center}
#bo_v_act .bo_v_good{display:inline-block;border:1px solid #000;width:70px;height:70px;padding-top:40px;background:url(./img/icon_good.png) 25px 18px no-repeat;border-radius:50%;font-style:italic}
#bo_v_act .bo_v_nogood{display:inline-block;border:1px solid #000;width:70px;height:70px;padding-top:40px;background:url(./img/icon_bad.png) 25px 18px no-repeat;border-radius:50%;font-style:italic}

#bo_v_share{position:relative;margin:20px 0;text-align:right}
#bo_v_share .btn{padding:0 10px 0 0;color:#555;font-weight:normal;font-size:1em ;line-height:30px;height:32px;border-radius:0;border-color:#d5d5d5}
#bo_v_share .btn:hover{background:#fff}
#bo_v_share .btn i{margin-right:5px;background:#eee;color:#333;text-align:center;width:30px;line-height:30px;vertical-align:top;}
#bo_v_share .btn_share{}
#bo_v_share .btn_share:hover{}

.bo_v_snswr{position:relative;display:inline-block;margin-left:-1px}
#bo_v_sns {display:none;position:absolute;top:-50px;left:50%;margin-left:-90px;width:180px;padding:0;list-style:none;zoom:1}
#bo_v_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_sns:before{content: "";position: absolute;bottom: -7px;left: 84px;width: 0;height: 0;border-style: solid;border-width: 7px 6px 0 6px;border-color: #415b92 transparent transparent transparent;}
#bo_v_sns li {float:left;width:60px;text-align:center}
#bo_v_sns li a{height:40px;padding:10px 0;}
#bo_v_sns li .sns_f{display:block;background:#415b92}
#bo_v_sns li .sns_t{display:block;background:#35b3dc}
#bo_v_sns li .sns_g{display:block;background:#d5503a}
#bo_v_sns.show_kakao{width:240px;margin-left:-120px}
#bo_v_sns li .sns_k{display:block;background:#fbe300}
#bo_v_sns li img{vertical-align:top}

/* 게시판 댓글 */
.cmt_btn{background:url('./img/cmt_btn.png') no-repeat 85px 8px;text-align:left ;width:100% ;border:0;color:#ed6478;font-weight:bold;font-size:1.25em;margin: 30px 0 0px;padding:0  0 10px }
.cmt_btn_op{background:url('./img/cmt_btn.png') no-repeat 85px  -23px}
#bo_vc {}
#bo_vc h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc article {margin:20px 0;position:relative}
#bo_vc article .profile_img img{border-radius:50%}
#bo_vc header {}
#bo_vc header:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc header .icon_reply {position:absolute;top:15px;left:-20px}
#bo_vc .member, #bo_vc .guest, #bo_vc .sv_member, #bo_vc .sv_guest {font-weight:bold}
.bo_vc_hdinfo{float:right;font-style:italic;color:#777}
#bo_vc h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc .cmt_contents {padding:15px  ;margin:10px 0 0;background: #f8fafb;border-radius:5px;border: 1px solid #e8e8e8;line-height:1.8em}
#bo_vc p a {text-decoration:underline}
#bo_vc p a.s_cmt {text-decoration:underline;color:#ed6479}
#bo_vc_empty {margin:0;padding:80px 0 !important;color:#777;text-align:center}
#bo_vc #bo_vc_winfo {float:left}

.bo_vc_act {text-align:right;margin:0;list-style:none;zoom:1}
.bo_vc_act:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_act li {display:inline-block;}
.bo_vc_act li a{padding:0 5px;line-height:23px}

.bo_vc_w {position:relative;margin:10px 0;display:block;}
.bo_vc_w:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_w h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.bo_vc_w #char_cnt {display:block;margin:0 0 5px}
.bo_vc_w textarea{border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;width:100%;height:120px;
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);}
#wr_secret{}
.bo_vc_w_info{margin:10px 0;float:left}
.bo_vc_w_info:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_w_info .frm_input{float:left;margin-right:5px}
.bo_vc_w_info #captcha{padding-top:10px;display:block;clear:both}
.bo_vc_w .btn_confirm{float:right;margin-top:10px}
.bo_vc_w .btn_confirm label{display:inline-block;margin-right:10px;border-radius:3px;font-size:1.5em;text-align:center;}
.bo_vc_w .btn_submit{height:45px;padding:0 20px;border-radius:3px;font-weight:bold;font-size:1.083em;}
.bo_vc_w_wr:after {display:block;visibility:hidden;clear:both;content:""}

#bo_vc_send_sns{display:inline-block;float:left}
#bo_vc_sns {display:inline-block;margin:0;padding:0;list-style:none;zoom:1}
#bo_vc_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc_sns li {float:left;margin:0 5px 0 0}
#bo_vc_sns .sns_li_f{border-radius:3px;background:#3a589b;height:40px;line-height:40px;padding:0 0 0 10px}
#bo_vc_sns .sns_li_t{border-radius:3px;background:#00aced;height:40px;line-height:40px;padding:0 0 0 10px}
#bo_vc_sns .sns_li_off{background:#bbb}
#bo_vc_sns a{display:inline-block;padding:0 15px 0 5px;}
#bo_vc_sns input {margin:0 5px 0 0 }


/*글쓰기*/
#bo_w .write_div{margin:10px 0;position:relative}
#bo_w .bo_w_info:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info .frm_input{float:left;width:33%}
#bo_w #wr_password{margin:0 0.5%  }
#bo_w .wr_content.smarteditor2 iframe{background:#fff}
#bo_w .bo_w_tit{position:relative}
#bo_w .bo_w_tit .frm_input{padding-right:120px;}
#bo_w .bo_w_tit #btn_autosave{position:absolute;top:5px;right:5px;line-height:30px;height:30px;}
#bo_w .bo_w_link label{position:absolute;top:1px;left:1px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;background: #eee;text-align:center;color:#888}
#bo_w .bo_w_link .frm_input{padding-left:50px}
#bo_w .bo_w_flie .lb_icon{position:absolute;top:0px;left:0px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;background:#eee;text-align:center;color:#888}
#bo_w .bo_w_flie .frm_file{padding-left:50px;}
#bo_w .bo_w_flie .file_wr{border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;height:40px;margin:0}
#bo_w .bo_w_flie .frm_input{margin:10px 0 0 }
#bo_w .bo_w_flie .file_del{position:absolute;top:10px;right:10px;font-size:0.92em;color:#7d7d7d}
#bo_w .bo_w_select select{border:1px solid #3497d9;height:40px;border-radius:3px}

/* 포인트샵 확장 */
#bo_list .td_item_subject {min-width:220px}
#bo_list .td_price {white-space:nowrap;font-weight:bold;color:#253dbe}
#bo_list .td_stock {white-space:nowrap}
#bo_list .td_buy form {margin:0}
.pointshop_buy_btn {min-width:74px}
.pointshop_badge_soldout {display:inline-block;padding:6px 10px;background:#fce8e6;color:#c0392b;border:1px solid #f5c6c3;border-radius:4px;font-size:12px;font-weight:bold;white-space:nowrap}
.pointshop_badge_soldout.large {padding:10px 14px;font-size:13px}
.pointshop_fields {border:1px solid #e5e5e5;background:#fafafa;padding:15px}
.pointshop_fields h3 {margin:0 0 15px;font-size:16px}
.pointshop_form_grid {display:flex;flex-wrap:wrap;gap:12px}
.pointshop_form_item {flex:1 1 240px}
.pointshop_form_item label {display:block;margin:0 0 6px;font-weight:bold}
.pointshop_form_item select,
.pointshop_form_item input {width:100%;height:40px}
#bo_v_pointshop {margin:0 0 20px;padding:18px;border:1px solid #e5e5e5;background:#fafafa;border-radius:6px}
#bo_v_pointshop h2 {margin:0 0 14px;font-size:18px}
#bo_v_pointshop .pointshop_meta {display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #ececec}
#bo_v_pointshop .pointshop_meta:last-of-type {border-bottom:0}
#bo_v_pointshop .pointshop_meta strong {color:#333}
#bo_v_pointshop .pointshop_buy_box {margin-top:18px}
#bo_v_pointshop .pointshop_buy_box form {margin:0}
#bo_v_pointshop .pointshop_buy_btn {min-width:180px}


/* ===== MU LUPANG site-aligned pointshop theme ===== */
#bo_list,
#bo_v,
#bo_w {
    width:100% !important;
    max-width:1240px;
    margin:0 auto 24px;
    color:#d7e7ec;
    font-family:"Malgun Gothic","Noto Sans KR",sans-serif;
}

#bo_list a,
#bo_v a,
#bo_w a {
    transition:all .2s ease;
}

#bo_list {
    padding:0;
    background:#fff;
    border:1px solid #c6cacc;
    border-radius:0;
    box-shadow:none;
}

#bo_btn_top {
    margin:0;
    padding:16px 20px;
    background:#fff;
    border-bottom:1px solid #dde3e6;
}

#bo_list_total {
    background:#01131a;
    color:#c8f6f2;
    border-radius:3px;
    padding:0 14px;
    box-shadow:none;
}

#bo_cate {
    margin:0;
    padding:10px 16px;
    background:#f6f8f9;
    border:0;
    border-bottom:1px solid #dde3e6;
    border-radius:0;
}

#bo_cate a {
    color:#233746;
    border:1px solid #d4dbe0;
    background:#fff;
    border-radius:3px;
    line-height:30px;
    padding:0 12px;
}

#bo_cate a:focus,
#bo_cate a:hover,
#bo_cate a:active {
    color:#0f2530;
    background:#eef8f8;
    border-color:#8fd9d3;
}

#bo_cate #bo_cate_on {
    background:linear-gradient(90deg, #243071 0%, #253dbe 50%, #00c4ac 100%);
    color:#fff;
    border-color:#243071;
    box-shadow:none;
}

#bo_list .tbl_head01 {
    margin:0;
}

#bo_list .tbl_head01 table {
    width:100%;
    border-collapse:collapse;
    border-spacing:0;
    background:#01131a;
}

#bo_list .tbl_head01 thead th {
    background:#0a2430;
    color:#8be4dc;
    border-top:0;
    border-bottom:1px solid #143744;
    padding:16px 10px;
    font-size:12px;
    letter-spacing:0.04em;
}

#bo_list .tbl_head01 thead th a {
    color:#8be4dc;
}

#bo_list .tbl_head01 tbody tr {
    background:transparent;
    box-shadow:none;
    transition:background .15s ease;
}

#bo_list .tbl_head01 tbody td {
    padding:16px 10px;
    border-top:0;
    border-bottom:1px solid rgba(255,255,255,0.07);
    color:#dce7ea;
    background:transparent;
}

#bo_list .tbl_head01 tbody td:first-child,
#bo_list .tbl_head01 tbody td:last-child {
    border-left:0;
    border-right:0;
    border-radius:0;
}

#bo_list tbody tr:hover {
    transform:none;
    border-left:0;
    box-shadow:none;
    background:rgba(88,207,199,0.06);
}

#bo_list .bo_notice td {
    background:rgba(37,61,190,0.22) !important;
    border-bottom:1px solid rgba(88,207,199,0.18);
}

#bo_list .notice_icon {
    background:#253dbe;
}

#bo_list .bo_tit,
#bo_list .bo_tit a,
#bo_list .td_name,
#bo_list .td_num,
#bo_list .td_datetime,
#bo_list .td_stock,
#bo_list .td_price,
#bo_v_info,
#bo_v_file a,
#bo_v_link a,
#bo_v_con,
#bo_vc,
#bo_w {
    color:#dce7ea;
}

#bo_list .bo_tit a:hover,
#bo_v_file a:hover,
#bo_v_link a:hover {
    color:#58cfc7;
}

#bo_list .bo_cate_link {
    color:#58cfc7;
    margin-bottom:6px;
}

#bo_list .cnt_cmt,
.lat .lt_cmt,
.pic_lt .lt_cmt {
    background:#253dbe;
    box-shadow:none;
}

#bo_list .td_price,
#bo_v_pointshop .pointshop_price_value {
    color:#7fe8de;
    font-weight:700;
}

#bo_sch {
    float:none;
    clear:both;
    margin:0;
    padding:16px 20px 20px;
    border:0 !important;
    border-top:1px solid #dde3e6 !important;
    border-radius:0;
    background:#fff;
}

#bo_sch select,
#bo_sch .sch_input {
    height:40px;
    border:1px solid #ccd5da !important;
    background:#fff !important;
    color:#233746 !important;
    border-radius:0;
    box-shadow:none;
}

#bo_sch .sch_btn {
    height:40px;
    width:46px;
    background:#01131a;
    color:#58cfc7;
    border-radius:0 3px 3px 0;
}

.btn,
#bo_w .btn_submit,
#bo_w .btn_cancel,
.bo_vc_w .btn_submit,
.bo_vc_act li a,
.pointshop_buy_btn,
#bo_v_share .btn,
#bo_list .btn_bo_user .btn,
#bo_v_top .btn,
#bo_v_bot .btn {
    min-height:40px;
    padding:0 16px;
    border-radius:3px;
    border:1px solid #253dbe;
    background:linear-gradient(180deg, #2f49cb 0%, #243071 100%);
    color:#fff !important;
    box-shadow:none;
    text-decoration:none !important;
    font-weight:700;
}

.btn:hover,
#bo_w .btn_submit:hover,
#bo_w .btn_cancel:hover,
.bo_vc_w .btn_submit:hover,
.bo_vc_act li a:hover,
.pointshop_buy_btn:hover,
#bo_v_share .btn:hover,
#bo_list .btn_bo_user .btn:hover,
#bo_v_top .btn:hover,
#bo_v_bot .btn:hover {
    transform:none;
    box-shadow:none;
    background:linear-gradient(180deg, #3856ef 0%, #253dbe 100%);
    border-color:#3856ef;
}

.btn_b01,
#bo_w .btn_cancel,
#bo_v_top .btn_b01,
#bo_v_bot .btn_b01,
#bo_list .btn_b01,
#bo_v_share .btn {
    background:linear-gradient(180deg, #173642 0%, #01131a 100%);
    border-color:#0f5560;
    color:#bff3ee !important;
}

.btn_b01:hover,
#bo_w .btn_cancel:hover,
#bo_v_top .btn_b01:hover,
#bo_v_bot .btn_b01:hover,
#bo_list .btn_b01:hover,
#bo_v_share .btn:hover {
    background:linear-gradient(180deg, #1d4756 0%, #062532 100%);
    border-color:#58cfc7;
}

.btn_b02,
#bo_w .btn_submit,
.bo_vc_w .btn_submit,
.pointshop_buy_btn {
    background:linear-gradient(180deg, #00c4ac 0%, #0f7c85 100%);
    border-color:#00c4ac;
    color:#031215 !important;
    text-shadow:none;
}

.btn_b02:hover,
#bo_w .btn_submit:hover,
.bo_vc_w .btn_submit:hover,
.pointshop_buy_btn:hover {
    background:linear-gradient(180deg, #42dfca 0%, #1497a2 100%);
    border-color:#42dfca;
}

.btn_admin {
    background:linear-gradient(180deg, #434951 0%, #262b31 100%) !important;
    border-color:#3b434c !important;
    color:#eef3f7 !important;
}

.pointshop_buy_btn {
    min-width:140px;
}

.pointshop_badge_soldout,
.pointshop_status_badge {
    border-radius:3px;
    padding:8px 12px;
    font-weight:700;
    letter-spacing:0;
}

.pointshop_badge_soldout {
    background:#2d1515;
    color:#ffb2b2;
    border:1px solid #6f2e2e;
}

.pointshop_status_badge.on {
    background:#08282a;
    border:1px solid #0f5560;
    color:#79efe5;
}

.pointshop_status_badge.off {
    background:#20252b;
    border:1px solid #444c55;
    color:#c0cad1;
}

#bo_v {
    padding:0;
    background:#fff;
    border:1px solid #c6cacc;
    border-radius:0;
    box-shadow:none;
}

#bo_v > header,
#bo_v_atc,
#bo_v_share,
#bo_v_top,
#bo_v_bot,
#bo_v_file,
#bo_v_link,
#bo_vc,
#bo_vc_w {
    margin-left:20px;
    margin-right:20px;
}

#bo_v > header {
    margin-top:20px;
}

#bo_v_title {
    padding:0 0 14px;
    border-bottom:1px solid #dfe5e8;
}

#bo_v_title .bo_v_cate {
    background:linear-gradient(90deg, #243071 0%, #253dbe 100%);
    color:#fff;
    border:0;
    border-radius:3px;
    box-shadow:none;
}

#bo_v_title .bo_v_tit {
    color:#233746;
    text-shadow:none;
    font-size:30px;
    margin-top:10px;
}

#bo_v_info {
    padding:12px 0 16px;
    margin:0 0 20px;
    border-bottom:1px solid #dfe5e8;
    color:#617785;
}

#bo_v_info strong,
#bo_v_info a {
    color:#233746;
}

#bo_v_pointshop,
.pointshop_fields {
    margin:20px;
    padding:0;
    border:1px solid #c6cacc !important;
    border-radius:0;
    background:#fff;
    box-shadow:none;
    overflow:hidden;
}

#bo_v_pointshop h2,
.pointshop_fields h3 {
    margin:0;
    padding:14px 20px;
    font-size:18px;
    color:#fff;
    background:linear-gradient(90deg, #243071 0%, #253dbe 55%, #00c4ac 100%);
}

#bo_v_pointshop .pointshop_topline,
.pointshop_fields .pointshop_section_head {
    display:block;
    margin:0;
}

#bo_v_pointshop .pointshop_topline .pointshop_status_badge {
    position:absolute;
    top:12px;
    right:20px;
}

#bo_v_pointshop {
    position:relative;
}

#bo_v_pointshop .pointshop_meta {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 20px;
    border-bottom:1px solid #e7ecef;
}

#bo_v_pointshop .pointshop_meta strong {
    color:#233746;
}

#bo_v_pointshop .pointshop_meta span,
#bo_v_pointshop .pointshop_desc,
.pointshop_notice_box,
.pointshop_log_intro {
    color:#506672;
}

#bo_v_pointshop .pointshop_desc,
.pointshop_notice_box,
.pointshop_log_intro {
    margin:0;
    padding:16px 20px;
    line-height:1.8;
    background:#f8fbfc;
    border-top:1px solid #eef3f5;
}

#bo_v_pointshop .pointshop_buy_box {
    margin:0;
    padding:18px 20px 20px;
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    background:#fff;
}

#bo_v_con {
    color:#2b3c48;
    line-height:1.85;
}

#bo_v_con a {
    color:#253dbe;
}

.pointshop_buy_form {
    width:100%;
    display:flex;
    flex-direction:column;
    gap:12px;
}

.pointshop_character_input {
    width:100%;
    height:54px;
    padding:0 18px;
    border:1px solid rgba(126, 224, 214, 0.32) !important;
    border-radius:14px;
    background:rgba(7, 19, 29, 0.92) !important;
    color:#f2fbff !important;
    font-size:15px;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,0.03);
}

.pointshop_character_input::placeholder {
    color:#7f9bab;
}

.pointshop_buy_form .pointshop_buy_btn {
    width:100%;
}

#bo_v_file,
#bo_v_link {
    margin-top:16px;
    border:1px solid #d9e0e4 !important;
    border-radius:0;
    background:#fff;
}

#bo_v_file h2,
#bo_v_link h2 {
    color:#233746;
    background:#f7fafb;
    border-bottom:1px solid #e2e8eb;
}

#bo_v_file li,
#bo_v_link li {
    color:#4f6571;
}

#bo_v_top,
#bo_v_bot,
#bo_v_share {
    padding-bottom:0;
}

.cmt_btn {
    width:calc(100% - 40px);
    margin:24px 20px 0;
    border:1px solid #0f5560;
    border-radius:3px;
    padding:13px 16px;
    background:
        url('./img/cmt_btn.png') no-repeat calc(100% - 16px) 16px,
        linear-gradient(180deg, #173642 0%, #01131a 100%);
    color:#bff3ee;
    box-shadow:none;
}

.cmt_btn_op {
    background:
        url('./img/cmt_btn.png') no-repeat calc(100% - 16px) -15px,
        linear-gradient(180deg, #173642 0%, #01131a 100%);
}

#bo_vc {
    margin-top:0;
    padding-bottom:10px;
}

#bo_vc article {
    padding:0;
    margin:16px 0;
    border:1px solid #d9e0e4 !important;
    border-radius:0;
    background:#fff;
    box-shadow:none;
}

#bo_vc article.pointshop_purchase_comment {
    border-left:4px solid #00c4ac !important;
    background:#fcffff;
}

#bo_vc header {
    padding:14px 16px 0;
    color:#233746;
}

#bo_vc header,
#bo_vc header a,
.bo_vc_hdinfo,
#bo_vc .member,
#bo_vc .guest,
#bo_vc .sv_member,
#bo_vc .sv_guest {
    color:#233746;
}

#bo_vc .cmt_contents {
    margin:10px 16px 16px;
    padding:14px 16px;
    background:#f8fbfc;
    border:1px solid #e6edf0;
    border-radius:3px;
    color:#35505d;
}

.pointshop_log_badge {
    background:#e6fbf7;
    color:#0b6e75;
    border:1px solid #8adfd7;
    border-radius:3px;
    box-shadow:none;
}

.pointshop_admin_badge {
    background:#eef1ff;
    color:#253dbe;
    border:1px solid #c8d0fb;
    border-radius:3px;
}

.bo_vc_act li a {
    min-height:32px;
    padding:0 12px;
    font-size:12px;
}

.bo_vc_w textarea,
#bo_w input.frm_input,
#bo_w select,
#bo_w .bo_w_flie .file_wr,
.pointshop_form_item input,
.pointshop_form_item select {
    border:1px solid #cfd7dc !important;
    background:#fff !important;
    color:#243746 !important;
    border-radius:3px;
    box-shadow:none;
}

#bo_w {
    padding:0;
    background:#fff;
    border:1px solid #c6cacc;
    border-radius:0;
    box-shadow:none;
}

#bo_w > form {
    width:100% !important;
}

#bo_w .write_div {
    margin:0;
    padding:18px 20px;
    border:0;
    border-bottom:1px solid #e3e8eb;
    border-radius:0;
    background:#fff;
}

#bo_w .bo_w_select,
#bo_w .bo_w_info,
#bo_w .bo_w_tit,
#bo_w .write_div.pointshop_fields {
    background:#fff;
}

#bo_w .bo_w_tit .frm_input,
#bo_w .bo_w_link .frm_input,
#bo_w .bo_w_flie .frm_file,
#bo_w .bo_w_info .frm_input,
.pointshop_form_item input,
.pointshop_form_item select {
    height:42px;
}

.pointshop_form_grid {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
    gap:14px;
}

.pointshop_form_item label {
    color:#233746;
    margin-bottom:8px;
}

#bo_w .btn_confirm {
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding:20px;
    background:#f8fbfc;
}

#bo_v .pointshop_meta:last-of-type,
.pointshop_fields .pointshop_form_item:last-child,
#bo_w .write_div:last-child {
    border-bottom:0;
}

@media (max-width: 1280px) {
    #bo_list,
    #bo_v,
    #bo_w {
        max-width:none;
    }
}

@media (max-width: 768px) {
    #bo_btn_top,
    #bo_sch,
    #bo_v > header,
    #bo_v_atc,
    #bo_v_share,
    #bo_v_top,
    #bo_v_bot,
    #bo_v_file,
    #bo_v_link,
    #bo_vc,
    #bo_vc_w,
    #bo_v_pointshop,
    .pointshop_fields,
    #bo_w .write_div,
    #bo_w .btn_confirm {
        margin-left:12px;
        margin-right:12px;
    }

    #bo_list .tbl_head01 table,
    #bo_list .tbl_head01 thead,
    #bo_list .tbl_head01 tbody,
    #bo_list .tbl_head01 tr,
    #bo_list .tbl_head01 th,
    #bo_list .tbl_head01 td {
        font-size:12px;
    }

    #bo_v_pointshop .pointshop_topline .pointshop_status_badge {
        position:static;
        margin:12px 20px 0;
        display:inline-flex;
    }

    #bo_v_title .bo_v_tit {
        font-size:24px;
    }

    .btn,
    #bo_w .btn_submit,
    #bo_w .btn_cancel,
    .bo_vc_w .btn_submit,
    .pointshop_buy_btn {
        width:100%;
    }

    #bo_w .btn_confirm {
        flex-direction:column;
    }

    .cmt_btn {
        width:calc(100% - 24px);
        margin-left:12px;
        margin-right:12px;
    }
}

/* ===== PLAYNC MU STORE GRID OVERRIDES ===== */
#bo_list.pointshop_store_shell {
    padding:0 0 28px;
    background:linear-gradient(180deg, #081019 0%, #0d1624 100%);
    border:1px solid rgba(74,120,155,0.45);
    border-radius:24px;
    box-shadow:0 24px 60px rgba(0,0,0,0.35);
    overflow:hidden;
}

.pointshop_store_hero {
    display:grid;
    grid-template-columns:minmax(0, 1.3fr) minmax(360px, 0.9fr);
    gap:20px;
    padding:28px;
    background:
        radial-gradient(circle at top right, rgba(0,196,172,0.18), transparent 36%),
        radial-gradient(circle at left center, rgba(37,61,190,0.28), transparent 42%),
        linear-gradient(135deg, #0f1a2a 0%, #0a1320 48%, #08131c 100%);
    border-bottom:1px solid rgba(160,205,214,0.12);
}

.pointshop_store_intro {
    min-width:0;
}

.pointshop_store_eyebrow {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 14px;
    border:1px solid rgba(98,228,214,0.32);
    border-radius:999px;
    background:rgba(4,16,24,0.55);
    color:#9df5ea;
    font-size:12px;
    font-weight:800;
    letter-spacing:0.24em;
    text-transform:uppercase;
}

.pointshop_store_title {
    margin:14px 0 12px;
    color:#f1f9ff;
    font-size:38px;
    line-height:1.18;
    font-weight:800;
    letter-spacing:-0.03em;
}

.pointshop_store_desc,
.pointshop_detail_copy {
    margin:0;
    color:#9eb7c8;
    line-height:1.8;
    font-size:15px;
}

.pointshop_store_stats {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:14px;
}

.pointshop_stat_card {
    padding:18px 18px 16px;
    border-radius:18px;
    border:1px solid rgba(160,205,214,0.14);
    background:linear-gradient(180deg, rgba(12,23,37,0.96) 0%, rgba(7,13,22,0.96) 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}

.pointshop_stat_card.accent {
    border-color:rgba(0,196,172,0.26);
    box-shadow:0 12px 30px rgba(0,196,172,0.12);
}

.pointshop_stat_card.mypoint {
    border-color:rgba(37,61,190,0.34);
    box-shadow:0 12px 30px rgba(37,61,190,0.16);
}

.pointshop_stat_card.muted {
    border-color:rgba(137,156,172,0.2);
}

.pointshop_stat_label {
    display:block;
    margin-bottom:10px;
    color:#89a5b7;
    font-size:12px;
    letter-spacing:0.06em;
}

.pointshop_stat_value {
    color:#f4fbff;
    font-size:28px;
    font-weight:800;
    letter-spacing:-0.03em;
}

#bo_list.pointshop_store_shell #bo_btn_top,
#bo_list.pointshop_store_shell #bo_cate,
#bo_list.pointshop_store_shell #bo_sch {
    margin:0 28px;
}

#bo_list.pointshop_store_shell #bo_btn_top {
    padding:22px 0 18px;
    background:transparent;
    border-bottom:0;
}

#bo_list.pointshop_store_shell #bo_list_total {
    display:inline-flex;
    align-items:center;
    gap:12px;
    height:auto;
    line-height:1;
    padding:12px 16px;
    background:linear-gradient(135deg, #111d2c 0%, #15273b 100%);
    border:1px solid rgba(88,207,199,0.16);
    border-radius:999px;
    color:#cce6ef;
}

#bo_list.pointshop_store_shell #bo_cate {
    padding:0 0 4px;
    background:transparent;
    border:0;
}

#bo_list.pointshop_store_shell #bo_cate ul {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

#bo_list.pointshop_store_shell #bo_cate li {
    padding:0;
}

#bo_list.pointshop_store_shell #bo_cate a {
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 16px;
    border-radius:999px;
    border:1px solid rgba(143,166,181,0.2);
    background:rgba(10,18,27,0.68);
    color:#b7cdda;
}

#bo_list.pointshop_store_shell #bo_cate a:hover,
#bo_list.pointshop_store_shell #bo_cate a:focus,
#bo_list.pointshop_store_shell #bo_cate a:active {
    background:rgba(16,31,42,0.95);
    border-color:rgba(88,207,199,0.34);
    color:#effcff;
}

#bo_list.pointshop_store_shell #bo_cate #bo_cate_on {
    background:linear-gradient(135deg, #203ca7 0%, #1f8f9a 100%);
    border-color:transparent;
    color:#fff;
}

.pointshop_admin_toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:8px 28px 0;
    padding:16px 18px;
    border:1px solid rgba(160,205,214,0.14);
    border-radius:18px;
    background:rgba(6,13,21,0.9);
}

.pointshop_admin_toolbar_right {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.pointshop_chkall_label {
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#d8ecf5;
    font-size:13px;
}

.pointshop_store_grid {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
    padding:22px 28px 0;
}

.pointshop_card {
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    border:1px solid rgba(160,205,214,0.16);
    border-radius:24px;
    background:linear-gradient(180deg, rgba(15,26,40,0.98) 0%, rgba(7,12,20,0.98) 100%);
    overflow:hidden;
    box-shadow:0 24px 48px rgba(0,0,0,0.22);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.pointshop_card:hover {
    transform:translateY(-6px);
    border-color:rgba(88,207,199,0.34);
    box-shadow:0 30px 60px rgba(0,0,0,0.32);
}

.pointshop_card.is_notice {
    border-color:rgba(0,196,172,0.28);
}

.pointshop_card.is_soldout {
    opacity:0.92;
}

.pointshop_card_check {
    position:absolute;
    top:16px;
    right:16px;
    z-index:3;
}

.pointshop_card_check input {
    width:18px;
    height:18px;
}

.pointshop_card_media {
    position:relative;
    min-height:240px;
    background:linear-gradient(135deg, rgba(37,61,190,0.25) 0%, rgba(0,196,172,0.18) 100%);
}

.pointshop_card_thumb {
    display:block;
    height:100%;
    min-height:240px;
    overflow:hidden;
}

.pointshop_card_thumb img {
    width:100%;
    height:100%;
    min-height:240px;
    object-fit:cover;
    display:block;
    transform:scale(1.01);
}

.pointshop_card_placeholder {
    height:100%;
    min-height:240px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    gap:8px;
    padding:24px;
    background:
        radial-gradient(circle at top right, rgba(0,196,172,0.22), transparent 34%),
        radial-gradient(circle at left top, rgba(37,61,190,0.30), transparent 42%),
        linear-gradient(160deg, #112033 0%, #0a1320 100%);
}

.pointshop_card_placeholder em {
    color:#94f3e5;
    font-size:12px;
    font-style:normal;
    letter-spacing:0.18em;
}

.pointshop_card_placeholder strong {
    color:#f6fbff;
    font-size:24px;
    line-height:1.3;
    letter-spacing:-0.03em;
}

.pointshop_card_badges {
    position:absolute;
    left:16px;
    right:16px;
    bottom:16px;
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.pointshop_inline_badge {
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(7,15,23,0.78);
    border:1px solid rgba(220,236,245,0.18);
    color:#eaf8ff;
    font-size:12px;
    font-weight:700;
}

.pointshop_inline_badge.notice {
    background:rgba(0,196,172,0.18);
    border-color:rgba(0,196,172,0.36);
    color:#9af2e6;
}

.pointshop_inline_badge.category {
    background:rgba(37,61,190,0.22);
    border-color:rgba(98,125,255,0.3);
    color:#d7dfff;
}

.pointshop_card_body {
    display:flex;
    flex-direction:column;
    gap:16px;
    padding:24px 24px 18px;
    color:#dcecf5;
}

.pointshop_card_meta_top,
.pointshop_card_extra {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
}

.pointshop_card_no,
.pointshop_card_views,
.pointshop_card_extra span {
    color:#8ea9b9;
    font-size:12px;
}

.pointshop_card_title {
    margin:0;
    font-size:23px;
    line-height:1.35;
    letter-spacing:-0.03em;
}

.pointshop_card_title a {
    color:#f7fcff !important;
}

.pointshop_card_title a:hover {
    color:#9af2e6 !important;
}

.pointshop_card_desc {
    margin:0;
    color:#9cb4c4;
    line-height:1.8;
    min-height:78px;
}

.pointshop_card_specs {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
    margin:0;
    padding:0;
}

.pointshop_card_specs > div,
.pointshop_meta_card {
    display:flex;
    flex-direction:column;
    gap:7px;
    padding:14px 16px;
    border-radius:16px;
    border:1px solid rgba(160,205,214,0.14);
    background:rgba(255,255,255,0.03);
}

.pointshop_card_specs dt,
.pointshop_meta_card strong {
    color:#88a4b6;
    font-size:12px;
    font-weight:600;
}

.pointshop_card_specs dd,
.pointshop_meta_card span {
    margin:0;
    color:#f2fbff;
    font-size:15px;
    font-weight:700;
}

.pointshop_card_specs dd.price,
.pointshop_summary_price .pointshop_price_value {
    color:#92fff3;
    font-size:22px;
}

.pointshop_card_specs dd.price span,
.pointshop_summary_price .pointshop_price_value span {
    font-size:15px;
    color:#c3fff8;
}

.pointshop_card_footer {
    display:flex;
    align-items:center;
    gap:10px;
    padding:0 24px 24px;
    margin-top:auto;
}

.pointshop_card_footer .btn,
.pointshop_card_footer form,
.pointshop_card_footer .pointshop_badge_soldout.large {
    flex:1 1 0;
    width:100%;
}

.pointshop_card_footer form {
    margin:0;
}

.pointshop_card_footer .pointshop_badge_soldout.large {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
}

.pointshop_empty_state {
    grid-column:1 / -1;
    padding:72px 24px;
    border:1px dashed rgba(160,205,214,0.18);
    border-radius:24px;
    background:rgba(8,15,24,0.78);
    text-align:center;
}

.pointshop_empty_state strong {
    display:block;
    margin-bottom:10px;
    color:#f4fbff;
    font-size:24px;
}

.pointshop_empty_state p {
    margin:0;
    color:#94afbf;
}

.pointshop_bottom_actions {
    float:none;
    margin:24px 28px 0;
}

#bo_list.pointshop_store_shell #bo_sch {
    margin-top:24px;
    padding:18px 20px;
    border:1px solid rgba(160,205,214,0.14) !important;
    border-radius:20px;
    background:rgba(8,14,23,0.88);
}

#bo_list.pointshop_store_shell #bo_sch select,
#bo_list.pointshop_store_shell #bo_sch .sch_input {
    border-color:rgba(160,205,214,0.18) !important;
    background:rgba(4,11,18,0.95) !important;
    color:#e7f9ff !important;
}

#bo_list.pointshop_store_shell #bo_sch .sch_btn {
    background:linear-gradient(135deg, #203ca7 0%, #1f8f9a 100%);
    color:#fff;
}

#bo_v.pointshop_detail_shell {
    padding:0 0 28px;
    background:linear-gradient(180deg, #081019 0%, #0d1624 100%);
    border:1px solid rgba(74,120,155,0.45);
    border-radius:24px;
    box-shadow:0 24px 60px rgba(0,0,0,0.35);
    overflow:hidden;
}

#bo_v.pointshop_detail_shell > header,
#bo_v.pointshop_detail_shell #bo_v_pointshop,
#bo_v.pointshop_detail_shell #bo_v_atc,
#bo_v.pointshop_detail_shell #bo_v_share,
#bo_v.pointshop_detail_shell #bo_v_top,
#bo_v.pointshop_detail_shell #bo_v_bot,
#bo_v.pointshop_detail_shell #bo_v_file,
#bo_v.pointshop_detail_shell #bo_v_link,
#bo_v.pointshop_detail_shell #bo_vc,
#bo_v.pointshop_detail_shell #bo_vc_w {
    margin-left:28px;
    margin-right:28px;
}

.pointshop_detail_header {
    padding:28px 28px 10px;
    background:
        radial-gradient(circle at top right, rgba(0,196,172,0.18), transparent 34%),
        radial-gradient(circle at left top, rgba(37,61,190,0.28), transparent 40%),
        linear-gradient(135deg, #0f1a2a 0%, #0a1320 54%, #08131c 100%);
    border-bottom:1px solid rgba(160,205,214,0.12);
}

.pointshop_detail_heading {
    min-width:0;
}

#bo_v.pointshop_detail_shell #bo_v_title {
    padding:12px 0 0;
    border-bottom:0;
}

#bo_v.pointshop_detail_shell #bo_v_title .bo_v_tit {
    color:#f4fbff;
    font-size:40px;
    line-height:1.2;
}

#bo_v.pointshop_detail_shell #bo_v_info {
    margin:18px 0 0;
    padding:0;
    border-bottom:0;
    color:#cfe0eb;
}

#bo_v.pointshop_detail_shell #bo_v_info strong,
#bo_v.pointshop_detail_shell #bo_v_info a {
    color:#d8ecf5;
}

#bo_v.pointshop_detail_shell #bo_v_pointshop.pointshop_detail_grid {
    display:grid;
    grid-template-columns:minmax(0, 1.18fr) minmax(360px, 0.82fr);
    gap:22px;
    margin-top:28px;
    padding:0;
    border:0 !important;
    background:transparent;
    overflow:visible;
}

.pointshop_detail_visual_wrap,
.pointshop_detail_summary {
    border:1px solid rgba(160,205,214,0.14);
    border-radius:24px;
    background:linear-gradient(180deg, rgba(15,26,40,0.98) 0%, rgba(7,12,20,0.98) 100%);
    overflow:hidden;
}

.pointshop_detail_visual {
    min-height:440px;
    background:linear-gradient(135deg, rgba(37,61,190,0.25) 0%, rgba(0,196,172,0.18) 100%);
}

.pointshop_detail_visual img {
    width:100%;
    height:100%;
    min-height:440px;
    object-fit:cover;
    display:block;
}

.pointshop_detail_placeholder {
    min-height:440px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    gap:10px;
    padding:32px;
    background:
        radial-gradient(circle at top right, rgba(0,196,172,0.24), transparent 34%),
        radial-gradient(circle at left top, rgba(37,61,190,0.30), transparent 40%),
        linear-gradient(160deg, #112033 0%, #0a1320 100%);
}

.pointshop_detail_placeholder span {
    color:#9cf4e8;
    font-size:12px;
    letter-spacing:0.2em;
}

.pointshop_detail_placeholder strong {
    color:#f6fbff;
    font-size:34px;
    line-height:1.24;
    letter-spacing:-0.03em;
}

.pointshop_detail_placeholder em {
    color:#9cb4c4;
    font-style:normal;
}

.pointshop_detail_visual_note {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    padding:16px 20px 20px;
    background:rgba(5,10,17,0.9);
}

.pointshop_detail_visual_note span {
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,0.04);
    border:1px solid rgba(160,205,214,0.14);
    color:#cfe4ee;
    font-size:13px;
}

.pointshop_detail_summary {
    display:flex;
    flex-direction:column;
}

.pointshop_summary_head {
    padding:26px 26px 18px;
    border-bottom:1px solid rgba(160,205,214,0.12);
}

.pointshop_summary_price {
    margin-top:18px;
}

.pointshop_summary_price small {
    display:block;
    margin-bottom:8px;
    color:#8aa4b6;
    font-size:12px;
}

.pointshop_summary_text {
    margin:14px 0 0;
    color:#96b0c0;
    line-height:1.8;
}

.pointshop_meta_grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
    padding:20px 26px 0;
}

.pointshop_meta_card.emphasis {
    border-color:rgba(0,196,172,0.28);
    box-shadow:0 14px 30px rgba(0,196,172,0.08);
}

#bo_v.pointshop_detail_shell .pointshop_buy_box {
    padding:20px 26px 0;
    background:transparent;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box .btn,
#bo_v.pointshop_detail_shell .pointshop_buy_box form,
#bo_v.pointshop_detail_shell .pointshop_buy_box .pointshop_badge_soldout.large {
    flex:1 1 0;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box form {
    margin:0;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box .pointshop_badge_soldout.large {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
}

#bo_v.pointshop_detail_shell .pointshop_notice_box {
    margin:18px 26px 26px;
    padding:18px 18px;
    border:1px solid rgba(88,207,199,0.16);
    border-radius:18px;
    background:rgba(6,16,23,0.88);
    color:#bad5e2;
}

#bo_v.pointshop_detail_shell #bo_v_atc,
#bo_v.pointshop_detail_shell #bo_v_file,
#bo_v.pointshop_detail_shell #bo_v_link,
#bo_v.pointshop_detail_shell #bo_vc article,
#bo_v.pointshop_detail_shell #bo_vc_w {
    border-radius:24px;
}

#bo_v.pointshop_detail_shell #bo_v_atc,
#bo_v.pointshop_detail_shell #bo_v_file,
#bo_v.pointshop_detail_shell #bo_v_link,
#bo_v.pointshop_detail_shell #bo_vc article,
#bo_v.pointshop_detail_shell #bo_vc_w,
#bo_v.pointshop_detail_shell #bo_v_share,
#bo_v.pointshop_detail_shell #bo_v_top {
    background:linear-gradient(180deg, rgba(15,26,40,0.98) 0%, rgba(7,12,20,0.98) 100%);
    border:1px solid rgba(160,205,214,0.14) !important;
    box-shadow:0 20px 40px rgba(0,0,0,0.16);
}

#bo_v.pointshop_detail_shell #bo_v_atc,
#bo_v.pointshop_detail_shell #bo_v_file,
#bo_v.pointshop_detail_shell #bo_v_link,
#bo_v.pointshop_detail_shell #bo_v_share,
#bo_v.pointshop_detail_shell #bo_v_top {
    padding:24px;
}

#bo_v.pointshop_detail_shell #bo_v_share,
#bo_v.pointshop_detail_shell #bo_v_top {
    margin-top:20px;
}

#bo_v.pointshop_detail_shell #bo_v_file h2,
#bo_v.pointshop_detail_shell #bo_v_link h2 {
    padding:0 0 16px;
    margin:0 0 16px;
    background:none;
    border-bottom:1px solid rgba(160,205,214,0.12);
    color:#f2fbff;
}

#bo_v.pointshop_detail_shell #bo_v_con {
    color:#dcecf5;
}

#bo_v.pointshop_detail_shell #bo_v_con a {
    color:#9af2e6;
}

#bo_v.pointshop_detail_shell .pointshop_detail_gallery {
    margin:0 0 20px;
}

#bo_v.pointshop_detail_shell .pointshop_detail_gallery img {
    border-radius:18px;
}

#bo_v.pointshop_detail_shell .cmt_btn {
    width:calc(100% - 56px);
    margin:24px 28px 0;
    border-radius:18px;
}

#bo_v.pointshop_detail_shell #bo_vc article {
    background:linear-gradient(180deg, rgba(15,26,40,0.98) 0%, rgba(7,12,20,0.98) 100%);
}

#bo_v.pointshop_detail_shell #bo_vc .cmt_contents {
    background:rgba(255,255,255,0.03);
    border-color:rgba(160,205,214,0.14);
    color:#d3e6f0;
}

#bo_v.pointshop_detail_shell #bo_vc header,
#bo_v.pointshop_detail_shell #bo_vc header a,
#bo_v.pointshop_detail_shell .bo_vc_hdinfo,
#bo_v.pointshop_detail_shell #bo_vc .member,
#bo_v.pointshop_detail_shell #bo_vc .guest,
#bo_v.pointshop_detail_shell #bo_vc .sv_member,
#bo_v.pointshop_detail_shell #bo_vc .sv_guest {
    color:#e7f7ff;
}

@media (max-width: 1200px) {
    .pointshop_store_grid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    #bo_v.pointshop_detail_shell #bo_v_pointshop.pointshop_detail_grid,
    .pointshop_store_hero {
        grid-template-columns:1fr;
    }
}

@media (max-width: 768px) {
    #bo_list.pointshop_store_shell,
    #bo_v.pointshop_detail_shell {
        border-radius:18px;
    }

    .pointshop_store_hero,
    .pointshop_store_grid,
    .pointshop_admin_toolbar {
        padding-left:18px;
        padding-right:18px;
    }

    .pointshop_store_grid {
        grid-template-columns:1fr;
        gap:18px;
    }

    .pointshop_store_stats,
    .pointshop_meta_grid,
    .pointshop_card_specs {
        grid-template-columns:1fr;
    }

    #bo_list.pointshop_store_shell #bo_btn_top,
    #bo_list.pointshop_store_shell #bo_cate,
    #bo_list.pointshop_store_shell #bo_sch,
    #bo_v.pointshop_detail_shell > header,
    #bo_v.pointshop_detail_shell #bo_v_pointshop,
    #bo_v.pointshop_detail_shell #bo_v_atc,
    #bo_v.pointshop_detail_shell #bo_v_share,
    #bo_v.pointshop_detail_shell #bo_v_top,
    #bo_v.pointshop_detail_shell #bo_v_bot,
    #bo_v.pointshop_detail_shell #bo_v_file,
    #bo_v.pointshop_detail_shell #bo_v_link,
    #bo_v.pointshop_detail_shell #bo_vc,
    #bo_v.pointshop_detail_shell #bo_vc_w {
        margin-left:18px;
        margin-right:18px;
    }

    .pointshop_admin_toolbar,
    .pointshop_admin_toolbar_right,
    .pointshop_card_footer,
    #bo_v.pointshop_detail_shell .pointshop_buy_box,
    .pointshop_bottom_actions .btn_bo_user,
    .pointshop_bottom_actions .btn_bo_user li {
        display:flex;
        flex-direction:column;
        width:100%;
    }

    .pointshop_card_footer .btn,
    .pointshop_card_footer form,
    #bo_v.pointshop_detail_shell .pointshop_buy_box .btn,
    #bo_v.pointshop_detail_shell .pointshop_buy_box form,
    #bo_v.pointshop_detail_shell .pointshop_buy_box .pointshop_badge_soldout.large {
        width:100%;
    }

    #bo_v.pointshop_detail_shell #bo_v_title .bo_v_tit,
    .pointshop_store_title {
        font-size:30px;
    }

    .pointshop_card_body,
    .pointshop_card_footer,
    .pointshop_summary_head,
    .pointshop_meta_grid,
    #bo_v.pointshop_detail_shell .pointshop_buy_box,
    #bo_v.pointshop_detail_shell .pointshop_notice_box,
    #bo_v.pointshop_detail_shell #bo_v_atc,
    #bo_v.pointshop_detail_shell #bo_v_file,
    #bo_v.pointshop_detail_shell #bo_v_link,
    #bo_v.pointshop_detail_shell #bo_v_share,
    #bo_v.pointshop_detail_shell #bo_v_top {
        padding-left:18px;
        padding-right:18px;
    }

    .pointshop_detail_visual,
    .pointshop_detail_placeholder,
    .pointshop_detail_visual img {
        min-height:280px;
    }

    #bo_v.pointshop_detail_shell .cmt_btn {
        width:calc(100% - 36px);
        margin-left:18px;
        margin-right:18px;
    }
}

/* ===== STORE LIST CLEANUP HIDE META ===== */
.pointshop_store_hero {
    grid-template-columns:1fr;
}

.pointshop_store_stats.compact {
    grid-template-columns:minmax(0, 320px);
    margin-top:18px;
}

.pointshop_card_specs.pointshop_card_specs_simple {
    grid-template-columns:1fr;
}

.pointshop_card_specs.pointshop_card_specs_simple > div {
    min-height:92px;
    justify-content:center;
}

/* ===== DETAIL MINIMAL PRICE CTA EMPHASIS ===== */
#bo_v.pointshop_detail_shell .pointshop_detail_header {
    padding-bottom:0;
    border-bottom:0;
}

#bo_v.pointshop_detail_shell .pointshop_detail_copy {
    margin-top:10px;
    max-width:680px;
    color:#90a8b8;
}

#bo_v.pointshop_detail_shell .pointshop_detail_visual_wrap {
    background:linear-gradient(180deg, rgba(14,24,37,0.98) 0%, rgba(8,14,22,0.98) 100%);
}

#bo_v.pointshop_detail_shell .pointshop_detail_summary {
    justify-content:center;
    background:
        radial-gradient(circle at top right, rgba(0,196,172,0.18), transparent 34%),
        radial-gradient(circle at left top, rgba(37,61,190,0.22), transparent 40%),
        linear-gradient(180deg, rgba(15,26,40,0.99) 0%, rgba(7,12,20,0.99) 100%);
}

#bo_v.pointshop_detail_shell .pointshop_summary_head.pointshop_summary_head_minimal {
    padding:34px 30px 18px;
    border-bottom:0;
    text-align:left;
}

#bo_v.pointshop_detail_shell .pointshop_summary_price_minimal {
    margin-top:0;
}

#bo_v.pointshop_detail_shell .pointshop_summary_price_minimal small {
    display:block;
    margin-bottom:12px;
    color:#9cb5c5;
    font-size:13px;
    letter-spacing:0.08em;
}

#bo_v.pointshop_detail_shell .pointshop_summary_price_minimal .pointshop_price_value {
    display:block;
    color:#a6fff4;
    font-size:54px;
    line-height:1;
    font-weight:900;
    letter-spacing:-0.05em;
    text-shadow:0 0 24px rgba(0,196,172,0.12);
}

#bo_v.pointshop_detail_shell .pointshop_summary_price_minimal .pointshop_price_value span {
    font-size:26px;
    color:#d4fffa;
}

.pointshop_member_point_inline {
    margin:14px 0 0;
    color:#d8eef6;
    font-size:15px;
    font-weight:600;
}

.pointshop_member_point_inline.subtle {
    margin-top:8px;
    color:#8da6b7;
    font-size:13px;
    font-weight:500;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box {
    padding:0 30px 18px;
    gap:12px;
}

#bo_v.pointshop_detail_shell .pointshop_buy_btn,
#bo_v.pointshop_detail_shell .pointshop_buy_box .btn_b02 {
    min-height:58px;
    font-size:17px;
    font-weight:800;
    border-radius:16px;
    box-shadow:0 18px 40px rgba(0,196,172,0.18);
}

#bo_v.pointshop_detail_shell .pointshop_detail_btn,
#bo_v.pointshop_detail_shell .pointshop_buy_box .btn_b01 {
    min-height:58px;
    border-radius:16px;
}

#bo_v.pointshop_detail_shell .pointshop_notice_box_minimal {
    margin:4px 30px 30px;
    padding:14px 16px;
    border-radius:16px;
    background:rgba(255,255,255,0.04);
    border:1px solid rgba(160,205,214,0.12);
    color:#a9c1d0;
    font-size:13px;
    line-height:1.7;
}

@media (max-width: 768px) {
    #bo_v.pointshop_detail_shell .pointshop_summary_price_minimal .pointshop_price_value {
        font-size:42px;
    }

    #bo_v.pointshop_detail_shell .pointshop_buy_box,
    #bo_v.pointshop_detail_shell .pointshop_notice_box_minimal,
    #bo_v.pointshop_detail_shell .pointshop_summary_head.pointshop_summary_head_minimal {
        padding-left:18px;
        padding-right:18px;
    }
}

/* ===== DETAIL ULTRA MINIMAL TITLE PRICE CTA ONLY ===== */
#bo_v.pointshop_detail_shell .pointshop_detail_header {
    display:none;
}

#bo_v.pointshop_detail_shell #bo_v_pointshop.pointshop_detail_grid {
    margin-top:28px;
    grid-template-columns:minmax(0, 1.08fr) minmax(320px, 0.92fr);
    align-items:stretch;
}

#bo_v.pointshop_detail_shell .pointshop_detail_visual_wrap {
    border-radius:28px;
    overflow:hidden;
}

#bo_v.pointshop_detail_shell .pointshop_detail_summary {
    justify-content:center;
    border-radius:28px;
    border:1px solid rgba(160,205,214,0.14);
    background:
        radial-gradient(circle at top right, rgba(0,196,172,0.16), transparent 34%),
        radial-gradient(circle at left top, rgba(37,61,190,0.20), transparent 40%),
        linear-gradient(180deg, rgba(15,26,40,0.995) 0%, rgba(7,12,20,0.995) 100%);
    box-shadow:0 26px 56px rgba(0,0,0,0.22);
}

#bo_v.pointshop_detail_shell .pointshop_summary_head.pointshop_summary_head_minimal {
    padding:42px 34px 18px;
    text-align:left;
}

.pointshop_detail_minimal_title {
    margin:0 0 18px;
    color:#f7fcff;
    font-size:36px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-0.04em;
}

#bo_v.pointshop_detail_shell .pointshop_summary_price_minimal .pointshop_price_value {
    font-size:58px;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box {
    padding:0 34px 34px;
    display:block;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box form,
#bo_v.pointshop_detail_shell .pointshop_buy_box .pointshop_badge_soldout.large,
#bo_v.pointshop_detail_shell .pointshop_buy_box > a {
    width:100%;
}

#bo_v.pointshop_detail_shell .pointshop_buy_btn,
#bo_v.pointshop_detail_shell .pointshop_buy_box .btn_b02,
#bo_v.pointshop_detail_shell .pointshop_buy_box .pointshop_badge_soldout.large {
    min-height:64px;
    width:100%;
    font-size:18px;
    border-radius:18px;
}

#bo_v.pointshop_detail_shell .pointshop_buy_box .pointshop_badge_soldout.large {
    display:flex;
    align-items:center;
    justify-content:center;
}

@media (max-width: 768px) {
    #bo_v.pointshop_detail_shell #bo_v_pointshop.pointshop_detail_grid {
        grid-template-columns:1fr;
        margin-top:18px;
    }

    .pointshop_detail_minimal_title {
        font-size:28px;
    }

    #bo_v.pointshop_detail_shell .pointshop_summary_price_minimal .pointshop_price_value {
        font-size:44px;
    }

    #bo_v.pointshop_detail_shell .pointshop_summary_head.pointshop_summary_head_minimal,
    #bo_v.pointshop_detail_shell .pointshop_buy_box {
        padding-left:18px;
        padding-right:18px;
    }
}

#bo_list.pointshop_store_shell #bo_sch {
    display:none !important;
}
/* v9 MINIMAL STRONG REFINEMENT */
#bo_list.pointshop_store_shell {
    background:linear-gradient(180deg, rgba(8,14,22,0.98) 0%, rgba(5,9,16,0.99) 100%);
    border-radius:20px;
    border:1px solid rgba(126, 168, 184, 0.14);
    box-shadow:0 18px 40px rgba(0,0,0,0.22);
}

.pointshop_store_hero.pointshop_store_hero_minimal {
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    align-items:end;
    gap:16px;
    padding:26px 28px 10px;
}

.pointshop_store_hero_minimal .pointshop_store_title {
    margin:0;
    font-size:32px;
    line-height:1.15;
    letter-spacing:-0.03em;
}

.pointshop_store_eyebrow,
.pointshop_store_desc,
.pointshop_card_badges,
.pointshop_card_meta_top,
.pointshop_card_desc,
.pointshop_card_extra,
.pointshop_bottom_actions,
#bo_v_share,
#bo_v_top,
#bo_v_act,
#bo_v_file,
#bo_v_link,
#bo_v_atc_title {
    display:none !important;
}

.pointshop_store_stats.compact {
    display:block;
}

.pointshop_stat_card.mypoint {
    min-width:170px;
    padding:14px 16px;
    border-radius:14px;
    border:1px solid rgba(88,207,199,0.18);
    background:rgba(9,18,28,0.9);
    box-shadow:none;
}

.pointshop_stat_label {
    margin-bottom:6px;
    font-size:11px;
    color:#7f9bab;
}

.pointshop_stat_value {
    font-size:22px;
    color:#f4fbff;
}

#bo_list.pointshop_store_shell #bo_btn_top,
#bo_list.pointshop_store_shell #bo_cate {
    margin:0 28px;
}

#bo_list.pointshop_store_shell #bo_btn_top {
    padding:10px 0 12px;
}

#bo_list.pointshop_store_shell #bo_btn_top .btn_bo_user {
    gap:8px;
}

#bo_list.pointshop_store_shell #bo_btn_top .btn {
    min-height:38px;
    padding:0 14px;
    border-radius:12px;
    box-shadow:none;
}

#bo_list.pointshop_store_shell #bo_cate {
    padding:0 0 2px;
}

#bo_list.pointshop_store_shell #bo_cate a {
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(12,20,29,0.82);
}

.pointshop_store_grid {
    gap:18px;
    padding:18px 28px 10px;
}

.pointshop_card {
    border-radius:18px;
    border:1px solid rgba(126, 168, 184, 0.12);
    background:linear-gradient(180deg, rgba(11,19,29,0.98) 0%, rgba(7,12,19,0.98) 100%);
    box-shadow:0 12px 28px rgba(0,0,0,0.18);
}

.pointshop_card:hover {
    transform:translateY(-3px);
    border-color:rgba(88,207,199,0.24);
    box-shadow:0 16px 34px rgba(0,0,0,0.22);
}

.pointshop_card_media,
.pointshop_card_thumb,
.pointshop_card_thumb img,
.pointshop_card_placeholder {
    min-height:200px;
}

.pointshop_card_body {
    padding:18px 18px 10px;
    gap:0;
}

.pointshop_card_title {
    margin:0;
    font-size:20px;
    line-height:1.4;
}

.pointshop_card_title a {
    color:#f4fbff;
}

.pointshop_card_specs.pointshop_card_specs_simple {
    margin-top:12px;
}

.pointshop_card_specs.pointshop_card_specs_simple > div {
    padding:0;
    border:0;
    background:none;
    gap:4px;
}

.pointshop_card_specs.pointshop_card_specs_simple dt {
    color:#7f9bab;
    font-size:11px;
    letter-spacing:0.08em;
}

.pointshop_card_specs.pointshop_card_specs_simple dd.price {
    font-size:26px;
    color:#9efff3;
}

.pointshop_card_footer {
    padding:0 18px 18px;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn,
.pointshop_card_footer .pointshop_detail_btn {
    width:100%;
    min-height:50px;
    border-radius:14px;
    background:linear-gradient(135deg, #2440b5 0%, #129e9a 100%);
    border:0;
    color:#fff;
    font-weight:800;
    letter-spacing:-0.01em;
}

.pointshop_card_footer form,
.pointshop_card_footer .pointshop_buy_btn,
.pointshop_card_footer .pointshop_badge_soldout.large {
    display:none !important;
}

#bo_v.pointshop_detail_shell {
    background:linear-gradient(180deg, rgba(8,14,22,0.98) 0%, rgba(5,9,16,0.99) 100%);
    border:1px solid rgba(126, 168, 184, 0.14);
    border-radius:20px;
    box-shadow:0 18px 40px rgba(0,0,0,0.22);
}

.pointshop_detail_header {
    display:none;
}

.pointshop_detail_grid {
    grid-template-columns:minmax(0, 1.02fr) minmax(320px, 0.98fr);
    gap:24px;
    padding:24px;
    align-items:center;
}

.pointshop_detail_visual,
.pointshop_detail_placeholder {
    border-radius:18px;
}

.pointshop_detail_visual img {
    border-radius:18px;
}

.pointshop_detail_summary {
    max-width:460px;
}

.pointshop_summary_head.pointshop_summary_head_minimal {
    gap:14px;
    margin-bottom:18px;
}

.pointshop_detail_minimal_title {
    margin:0;
    font-size:36px;
    line-height:1.18;
    letter-spacing:-0.04em;
}

.pointshop_summary_price.pointshop_summary_price_minimal {
    gap:6px;
}

.pointshop_summary_price.pointshop_summary_price_minimal small {
    font-size:11px;
    letter-spacing:0.08em;
    color:#7f9bab;
}

.pointshop_summary_price.pointshop_summary_price_minimal .pointshop_price_value {
    font-size:40px;
    color:#9efff3;
}

.pointshop_summary_price.pointshop_summary_price_minimal .pointshop_price_value span {
    font-size:22px;
}

#bo_v_pointshop .pointshop_buy_box {
    padding:0;
    background:none;
}

.pointshop_buy_form {
    gap:10px;
}

.pointshop_character_input {
    height:52px;
    border-radius:12px;
    border:1px solid rgba(88,207,199,0.18) !important;
    background:rgba(10,18,28,0.92) !important;
    font-size:14px;
}

.pointshop_buy_form .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_btn,
#bo_v_pointshop .pointshop_badge_soldout.large {
    min-height:56px;
    border-radius:14px;
    font-size:16px;
    font-weight:800;
}

#bo_v_atc {
    display:none !important;
}

.cmt_btn {
    width:100%;
    margin:18px 0 0;
    border-radius:14px;
    border:1px solid rgba(88,207,199,0.14);
    background:rgba(10,18,28,0.88);
    color:#d9f9f3;
}

#bo_vc article {
    margin:12px 0;
    border-radius:14px;
    border:1px solid rgba(126, 168, 184, 0.12) !important;
    background:rgba(10,18,28,0.82);
}

#bo_vc .cmt_contents {
    margin:8px 14px 14px;
    padding:12px 14px;
    border-radius:12px;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(126, 168, 184, 0.10);
    color:#d5e7ef;
}

#bo_vc header,
#bo_vc header a,
.bo_vc_hdinfo,
#bo_vc .member,
#bo_vc .guest,
#bo_vc .sv_member,
#bo_vc .sv_guest {
    color:#dceef6;
}

@media (max-width: 1024px) {
    .pointshop_store_hero.pointshop_store_hero_minimal {
        grid-template-columns:1fr;
        align-items:start;
    }

    .pointshop_detail_grid {
        grid-template-columns:1fr;
    }

    .pointshop_detail_summary {
        max-width:none;
    }
}

@media (max-width: 768px) {
    .pointshop_store_hero.pointshop_store_hero_minimal {
        padding:22px 18px 8px;
    }

    .pointshop_store_grid {
        padding:16px 18px 8px;
        gap:14px;
    }

    .pointshop_detail_grid {
        padding:18px;
        gap:18px;
    }

    .pointshop_detail_minimal_title {
        font-size:28px;
    }

    .pointshop_summary_price.pointshop_summary_price_minimal .pointshop_price_value {
        font-size:32px;
    }
}

/* === refined purchase/login button hover & alignment override === */
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn,
.pointshop_card_footer .pointshop_detail_btn,
.pointshop_buy_form .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_box > a.btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    padding:0 20px;
    text-align:center;
    line-height:1.2;
    border-radius:16px;
    border:1px solid rgba(151, 243, 234, 0.18);
    background:linear-gradient(135deg, #1f318a 0%, #1958c6 34%, #119b98 68%, #79ead2 100%);
    background-size:200% 200%;
    background-position:0 50%;
    color:#ffffff;
    font-weight:800;
    letter-spacing:-0.01em;
    text-decoration:none;
    box-shadow:0 14px 30px rgba(8, 30, 70, 0.30), inset 0 1px 0 rgba(255,255,255,0.18);
    position:relative;
    overflow:hidden;
    isolation:isolate;
    transition:transform .35s ease, box-shadow .35s ease, background-position .45s ease, filter .35s ease, border-color .35s ease;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn::before,
.pointshop_card_footer .pointshop_detail_btn::before,
.pointshop_buy_form .pointshop_buy_btn::before,
#bo_v_pointshop .pointshop_buy_btn::before,
#bo_v_pointshop .pointshop_buy_box > a.btn::before {
    content:"";
    position:absolute;
    top:0;
    left:-140%;
    width:62%;
    height:100%;
    background:linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.36) 50%, rgba(255,255,255,0) 100%);
    transform:skewX(-24deg);
    transition:left .6s ease;
    pointer-events:none;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:hover,
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:focus,
.pointshop_card_footer .pointshop_detail_btn:hover,
.pointshop_card_footer .pointshop_detail_btn:focus,
.pointshop_buy_form .pointshop_buy_btn:hover,
.pointshop_buy_form .pointshop_buy_btn:focus,
#bo_v_pointshop .pointshop_buy_btn:hover,
#bo_v_pointshop .pointshop_buy_btn:focus,
#bo_v_pointshop .pointshop_buy_box > a.btn:hover,
#bo_v_pointshop .pointshop_buy_box > a.btn:focus {
    transform:translateY(-3px);
    background-position:100% 50%;
    border-color:rgba(183, 249, 241, 0.42);
    box-shadow:0 22px 38px rgba(7, 28, 68, 0.36), 0 0 0 1px rgba(160, 246, 237, 0.10);
    filter:brightness(1.04) saturate(1.06);
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:hover::before,
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:focus::before,
.pointshop_card_footer .pointshop_detail_btn:hover::before,
.pointshop_card_footer .pointshop_detail_btn:focus::before,
.pointshop_buy_form .pointshop_buy_btn:hover::before,
.pointshop_buy_form .pointshop_buy_btn:focus::before,
#bo_v_pointshop .pointshop_buy_btn:hover::before,
#bo_v_pointshop .pointshop_buy_btn:focus::before,
#bo_v_pointshop .pointshop_buy_box > a.btn:hover::before,
#bo_v_pointshop .pointshop_buy_box > a.btn:focus::before {
    left:175%;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn span,
.pointshop_card_footer .pointshop_detail_btn span,
.pointshop_buy_form .pointshop_buy_btn span,
#bo_v_pointshop .pointshop_buy_btn span,
#bo_v_pointshop .pointshop_buy_box > a.btn span {
    width:100%;
    text-align:center;
}

/* === luxury black gold button override === */
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn,
.pointshop_card_footer .pointshop_detail_btn,
.pointshop_buy_form .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_box > a.btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:56px;
    padding:0 22px;
    text-align:center;
    line-height:1.2;
    border-radius:16px;
    border:1px solid rgba(212, 175, 55, 0.34);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.02) 18%, rgba(255,255,255,0) 100%),
        linear-gradient(135deg, #050505 0%, #141414 34%, #241b0b 68%, #6f5521 100%);
    background-size:100% 100%, 210% 210%;
    background-position:center, 0 50%;
    color:#f6e7b2;
    font-weight:800;
    letter-spacing:-0.01em;
    text-decoration:none;
    text-shadow:0 1px 0 rgba(0,0,0,0.55);
    box-shadow:0 14px 32px rgba(0,0,0,0.38), inset 0 1px 0 rgba(255,255,255,0.10), inset 0 -1px 0 rgba(212,175,55,0.12);
    position:relative;
    overflow:hidden;
    isolation:isolate;
    transition:transform .35s ease, box-shadow .35s ease, background-position .45s ease, border-color .35s ease, color .35s ease, filter .35s ease;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn::before,
.pointshop_card_footer .pointshop_detail_btn::before,
.pointshop_buy_form .pointshop_buy_btn::before,
#bo_v_pointshop .pointshop_buy_btn::before,
#bo_v_pointshop .pointshop_buy_box > a.btn::before {
    content:"";
    position:absolute;
    top:0;
    left:-145%;
    width:60%;
    height:100%;
    background:linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,227,141,0.34) 50%, rgba(255,255,255,0) 100%);
    transform:skewX(-24deg);
    transition:left .72s ease;
    pointer-events:none;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:hover,
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:focus,
.pointshop_card_footer .pointshop_detail_btn:hover,
.pointshop_card_footer .pointshop_detail_btn:focus,
.pointshop_buy_form .pointshop_buy_btn:hover,
.pointshop_buy_form .pointshop_buy_btn:focus,
#bo_v_pointshop .pointshop_buy_btn:hover,
#bo_v_pointshop .pointshop_buy_btn:focus,
#bo_v_pointshop .pointshop_buy_box > a.btn:hover,
#bo_v_pointshop .pointshop_buy_box > a.btn:focus {
    transform:translateY(-3px);
    background-position:center, 100% 50%;
    border-color:rgba(255, 214, 102, 0.58);
    color:#fff3c7;
    box-shadow:0 22px 40px rgba(0,0,0,0.46), 0 0 0 1px rgba(212,175,55,0.18), 0 0 24px rgba(212,175,55,0.14);
    filter:brightness(1.04) saturate(1.05);
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:hover::before,
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:focus::before,
.pointshop_card_footer .pointshop_detail_btn:hover::before,
.pointshop_card_footer .pointshop_detail_btn:focus::before,
.pointshop_buy_form .pointshop_buy_btn:hover::before,
.pointshop_buy_form .pointshop_buy_btn:focus::before,
#bo_v_pointshop .pointshop_buy_btn:hover::before,
#bo_v_pointshop .pointshop_buy_btn:focus::before,
#bo_v_pointshop .pointshop_buy_box > a.btn:hover::before,
#bo_v_pointshop .pointshop_buy_box > a.btn:focus::before {
    left:180%;
}

/* === final clean rectangular black-gold button override === */
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn,
.pointshop_card_footer .pointshop_detail_btn,
.pointshop_buy_form .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_btn,
#bo_v_pointshop .pointshop_buy_box > a.btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:56px;
    padding:0 22px;
    text-align:center;
    line-height:1.2;
    border-radius:8px;
    border:1px solid rgba(196, 154, 63, 0.42);
    background:linear-gradient(180deg, #161616 0%, #0b0b0b 72%, #1f180d 100%);
    color:#ffffff !important;
    font-weight:700;
    letter-spacing:-0.01em;
    text-decoration:none;
    text-shadow:none;
    box-shadow:0 10px 22px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.04);
    position:relative;
    overflow:hidden;
    isolation:isolate;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn::before,
.pointshop_card_footer .pointshop_detail_btn::before,
.pointshop_buy_form .pointshop_buy_btn::before,
#bo_v_pointshop .pointshop_buy_btn::before,
#bo_v_pointshop .pointshop_buy_box > a.btn::before {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.02) 22%, rgba(255,255,255,0) 100%);
    pointer-events:none;
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:hover,
.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn:focus,
.pointshop_card_footer .pointshop_detail_btn:hover,
.pointshop_card_footer .pointshop_detail_btn:focus,
.pointshop_buy_form .pointshop_buy_btn:hover,
.pointshop_buy_form .pointshop_buy_btn:focus,
#bo_v_pointshop .pointshop_buy_btn:hover,
#bo_v_pointshop .pointshop_buy_btn:focus,
#bo_v_pointshop .pointshop_buy_box > a.btn:hover,
#bo_v_pointshop .pointshop_buy_box > a.btn:focus {
    transform:translateY(-2px);
    border-color:rgba(233, 189, 91, 0.7);
    background:linear-gradient(180deg, #1c1c1c 0%, #101010 70%, #2a2010 100%);
    color:#ffffff !important;
    box-shadow:0 14px 28px rgba(0,0,0,0.34), 0 0 0 1px rgba(196, 154, 63, 0.12);
}

.pointshop_card_footer.pointshop_card_footer_single .pointshop_detail_btn span,
.pointshop_card_footer .pointshop_detail_btn span,
.pointshop_buy_form .pointshop_buy_btn span,
#bo_v_pointshop .pointshop_buy_btn span,
#bo_v_pointshop .pointshop_buy_box > a.btn span {
    width:100%;
    text-align:center;
    color:#ffffff !important;
}
