@charset "utf-8";

/* Step15 (2026-05-26): 빈 썸네일 항목 숨김 — 백엔드 thumbnails 배열에 file_srl 빈 항목이 포함되는 케이스 대응 */
.thumbnail_Image[data-url=""] {
    display: none !important;
}

.ctrl_dummy	{position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: 1;}
.d_table	{display: table;}
.text_wide	{letter-spacing: 0.1em;}
.align_left	{text-align: left;}
.bio_nproduct .discounted	{text-decoration: line-through; margin-right: 5px;}
.ink_align_center	{position: absolute; left: 50%; z-index: 300;}
.ink_align_center>div	{position: fixed; bottom: 10%; height: 32px; line-height: 32px; margin-top: -16px; background-color: rgba(0,0,0,0.5); color: #FFF; opacity: 0; white-space: nowrap;}

/* rating */
.rating	{position: relative;}
.rating_star	{position: relative; z-index: 1;}
.rating_star .last_star	{display: inline-block; overflow: hidden; vertical-align: top;}
.rating_bg	{position: absolute; left: 0; opacity: 0.2;}

/* item list */
.item_list .list_unit	{display: inline-block; position: relative; box-sizing: border-box;}
.item_list .list_title	{line-height: 100%;}
.item_list .list_thumb	{display: inline-block; width: 100%; padding-bottom: 100%; background-position: center center;}

/* item detail */
.product_summary h3	{margin-bottom: 15px; font-weight: normal;}
.product_summary>ul>li:first-child h3	{margin-bottom: 0;}
.product_summary>ul>li>div	{font-weight: 300;}
.product_summary .rating	{position: absolute; width: 102px;}
.product_summary .rating_num {position: absolute; width: 102px;}
.product_summary .ps_title	{display: inline-block; width: 90px;}
.product_price	{position: relative; text-align: right;}
.product_price .item_quantity	{display: inline-block; position: absolute; padding: 0 20px; border-radius: 5px;}
.product_price.has_option .item_quantity	{position: relative;}
.product_price .item_quantity .unit	{display: inline-block; width: 20px; height: 30px; line-height: 30px; border: none; box-sizing: border-box; text-align: center;}
.product_price .item_quantity span	{position: absolute; top: 0; cursor: pointer;}
.product_price .item_quantity .iconDown,
.product_price .item_quantity .iconDowns	{left: 0;}
.product_price .item_quantity .iconUp,
.product_price .item_quantity .iconUps	{right: 0; border-right: none !important;}
.option_table	{width: 100%;}
.option_table td	{width: 1%; padding: 5px; white-space: nowrap; font-size:12px !important;}
.option_table td.quantity_col	{width: auto; text-align: left;}
.option_table td:first-child	{padding-left: 0;}
.option_table td:last-child	{padding-right: 0;}
.product_buttons .bt_group	{display: inline-block; width: 100%; border-radius: 10px; height: 45px; overflow: hidden;}
.product_buttons .bt	{display: inline-block; width: calc(50% - 25px); height: 45px; line-height: 45px; box-sizing: border-box; text-align: center;}
.product_buttons .bt_wish	{width: 50px;}
.product_buttons .not_on_sale	{text-align: center;}
.product_buttons .bt_group .ib	{border-right: none;}

.product_event	{text-align: center;}
.review_content .xe_content br+br,
.review_content .xe_content p+br	{display: none;}

.starPoint li	{display: inline-block;}

/* paging */
.paging	{text-align: center; font-size: 0;}
.paging .bt_page	{display: inline-block; padding: 5px 0;}
.paging .bt_page:first-of-type	{border-radius: 10px 0 0 10px;}
.paging .bt_page:last-of-type	{border-radius: 0 10px 10px 0; }
.paging .bt_page a	{display: inline-block; padding: 0 12px; height: 20px; line-height: 20px;}
.paging .page_num_wrap	{display: inline-block;}
.paging .page_num_wrap .bt_page	{border-radius: 0;}

/* new icon */
.list_icon	{display: inline-block; width: 15px; height: 16px; border-radius: 5px; text-align: center;}

/* sk ctn */
.sk_ctn	{display: none;}
.sk_ctn	.sk_ctn_inner {position: fixed; left: 0; top: 0; width: 100%; height: 100%; padding: 0 30px; box-sizing: border-box; background-color: rgba(0,0,0,0.9); z-index: 99; overflow: auto; -webkit-overflow-scrolling: touch; color: #FFF;}
.sk_ctn .message	{display: none;}
.sk_ctn section:first-of-type,
.sk_ctn h1	{display: none; margin: 0;}
.sk_ctn section:last-of-type	{}
.bio_nproduct .sk_ctn section h2	{margin-bottom: 30px; padding: 20px 0; border: 1px solid #555; font-weight: normal; text-align: center; font-size: 18px; letter-spacing: 0.15em; font-family: 'IropkeBatangM', 'IropkeBatangOTFM', 'NanumMyeongjo', 'Batang', serif; cursor: pointer;}
.sk_ctn .x_control-group	{display: none; margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px dashed rgba(255, 255, 255, 0.1)}
.sk_ctn .x_control-label	{letter-spacing: 0.15em;}
.sk_ctn .x_controls	{margin-top: 15px; overflow: hidden;}
.sk_ctn .x_controls label	{margin-right: 10px; line-height: 180%;}
.sk_ctn .ink_check.ink_radio>span	{background-color: rgba(255, 255, 255, 0.2);}
.sk_ctn .x_controls textarea,
.sk_ctn .x_controls input[type=text],
.sk_ctn .x_controls input[type=file]	{position: relative; display: block; width: 100%; padding: 10px; box-sizing: border-box; border: 1px solid rgba(255,255,255,0.3); background-color: rgba(255,255,255,0.1); line-height: 140%; color: #FFF; z-index: 1;}
.sk_ctn .x_controls textarea:focus,
.sk_ctn .x_controls input[type=text]:focus	{border: 1px solid rgba(255,255,255,1.0);}
.sk_ctn .x_icon-question-sign	{display: none;}
.sk_ctn .x_help-block	{display: block; margin-top: 10px; font-size: 12px; opacity: 0.5;}
.sk_ctn .bt_area	{padding-bottom: 60px; text-align: center;}
.sk_ctn .bt	{margin: 0 10px; width: 80px; line-height: 34px; background-color: transparent !important; border: 1px solid #555 !important;}
.sk_ctn .bt i,
.sk_ctn .bt svg	{color: #CCC}
/* ================================================================ */
/* Step9 (2026-05-25): nproduct_m.css 흡수 (mobile-first 베이스, hearzen 톤) */
/* ================================================================ */

.bd_header	{position: relative; padding-bottom: 15px;}
.bd_header .bd_title	{min-height: 31px; padding-top: 6px; box-sizing: border-box; font-size: 1.2em;}
.bd_header .bt_area	{position: absolute; right: 0; top: 0;}
.bd_header .ink_custom_select	{margin-top: 15px;}
.list_category	{margin-bottom: 15px;}	


/* custom select2 */
.ink_custom_select2	{display: inline-block; position: relative; width: 100%; line-height: 21px; padding: 0 12px; border-radius: 5px; box-sizing: border-box; text-align: left; vertical-align: middle;background-color:#f7f7f7;border:2px solid lightgrey;}
.ink_custom_select2 select	{width: 100%; -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; appearance: none; outline: 0 box-shadow: none; border: 0 !important; background: none; background-image: none; padding: 0; margin: 0; text-transform: uppercase; letter-spacing: 0.15em; font-size: 1em;}
.ink_custom_select2 select:focus	{outline: none;}
.ink_custom_select2 i	{position: absolute; right: 10px; top: 9px;}


/* item list */
.item_list>ul	{padding-bottom: 0px;}
.item_list .list_unit	{display: inline-block; width: calc(50% - 7.5px); margin-right: 10px; vertical-align: top;}
.item_list .list_unit:nth-child(2n)	{margin-right: 0;}
.item_list .list_thumb	{position: relative; background-size: cover; border-radius: 10px; margin-bottom: 15px;}
.item_list .list_thumb::after	{content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border: 1px solid #000; box-sizing: border-box; opacity: 0.05; border-radius: 10px;}
.item_list .list_sale	{display: none !important;}

/* Step62 (2026-05-28): review 배지 단계별 — mobile-first (PC도 동일하게 적용) */
.item_list .x_review_badge {
	position: absolute !important;
	left: 10px;
	top: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 5px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	color: #ffffff;
	line-height: 1;
	z-index: 2;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
	white-space: nowrap;
}
.item_list .x_review_badge i {
	font-size: 10px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	color: #ffd54a;
}
.item_list .x_review_tier_1 {
	background: rgba(15, 23, 42, 0.72);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}
.item_list .x_review_tier_2 {
	background: #e04a2d;
	padding: 5px 12px;
	font-size: 12px;
	box-shadow: 0 3px 10px rgba(224, 74, 45, 0.45);
}
.item_list .x_review_tier_3 {
	background: linear-gradient(135deg, #ffb800, #ef6c00);
	padding: 6px 14px;
	font-size: 13px;
	box-shadow: 0 4px 16px rgba(245, 184, 0, 0.5), 0 0 20px rgba(245, 184, 0, 0.35);
	animation: x_review_glow 2s ease-in-out infinite alternate;
}
@keyframes x_review_glow {
	from { box-shadow: 0 4px 16px rgba(245, 184, 0, 0.45), 0 0 12px rgba(245, 184, 0, 0.3); }
	to   { box-shadow: 0 4px 16px rgba(245, 184, 0, 0.65), 0 0 28px rgba(245, 184, 0, 0.6); }
}
.item_list .list_title	{font-size: 1.1em; font-weight: 500; margin-bottom: 10px;}
.item_list .list_price	{margin-bottom: 8px;}
.item_list .discounted	{display:inline-block; margin-bottom: 5px;}
.item_list .list_key {padding:5px !important;}
/* paging */
.paging	{height: 30px; overflow: hidden;}
.paging .bt_next	{border-right: none !important;}
.paging .bt_page	{vertical-align: top; font-size: 13px;}
.paging .page_num_wrap	{max-width: calc(100% - 150px); padding-bottom: 50px; margin-bottom: -50px; box-sizing: border-box; overflow-x: auto; overflow-y: white-space: nowrap; -webkit-overflow-scrolling: touch;}

/* new icon */
.list_icon	{margin-left: 5px; margin-top: 1px; font-size: 10px; line-height: 16px; font-weight: bold; vertical-align: top;}

/* item detail */
.product_header .left_side	{text-align: center;}
.product_header .product_thumb	{display: inline-block; margin: 15px 0; border-radius: 15px; overflow: hidden; max-width: 100%; font-size: 0;}
.product_header .product_thumb img	{max-width: 100%;}
.product_header h1	{font-size: 1.3em;}
.product_header .title_box	{display: inline-block; padding: 3px 6px; margin: -3px 3px 0 0; border-radius: 3px; font-size: 0.7em; vertical-align: middle;}
.product_header .right_side	{position: relative; margin: 15px -15px 0;}
.product_summary>ul>li	{padding: 10px 0 5px 15px;}
.product_summary h3	{font-size: 1.1em; font-weight: 500;}
.product_summary>ul>li>div	{margin-top: 10px;; font-size: 0.95em;}
.product_summary .rating	{right: 0; top: 16px;}
.product_summary .rating_num	{right: 100px; top: 3px;font-size:18px;}
.product_price	{padding: 17px 15px 0px; font-size: 1.2em;}
.product_price.no_option .item_quantity	{left: 15px; top: 15px; font-size: 0.8em;}
.option_table	{margin: 10px 0; font-size: 1.0em;}
.option_table .deleteItem	{display: inline-block; padding: 3px 6px; border-radius: 5px; font-size: 0.8em;}
.product_buttons	{padding: 15px 15px;}

.product_event	{padding: 10px 15px; margin-bottom: 30px; border-radius: 10px; line-height: 1.6em;}

.product_module	{margin: 0 -15px;}
.product_module .product_nav>a	{display: inline-block; width: 32%; padding: 12px 0; box-sizing: border-box; text-align: center;}
.product_module .product_nav>a.active	{margin-bottom: -1px; padding-bottom: 13px;}
.product_module .product_nav>a:last-of-type	{border-right: none !important;}

.product_info	{padding: 30px 15px;}
.product_info.folded	{position: relative; height: 1000px; overflow: hidden;}
.product_info.folded::after	{content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 100px;}
.product_info .bt	{display: inline-block; width: 100%; max-width: 340px; height: 45px; line-height: 45px; border-radius: 5px;}
.darkmode .product_info .bt	{line-height: 35px;}
.product_info .bt_unfold	{position: absolute; left: 50%; bottom: 50px; margin-left: -170px; z-index: 1;}
.product_info.folded .bt_fold	{display: none;}
.product_info .bt_area	{padding-top: 30px; text-align: center;}
.product_info .xe_content	{font-size: 0.5em; line-height: 1.6em;}

.product_info .xe_content h2 {
    display: block;
    font-size: 1.3em;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold !important;
}

.product_info .xe_content h3 {
    display: block;
    font-size: 1.1em;
    margin-block-start: 0.2em;
    margin-block-end: 0.2em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold !important;
}

.review_header	{position: relative; padding: 15px; min-height: 32px;}
.review_header .rating_title	{font-size: 1.1em;}
.review_header .rating	{margin-top: 5px;}
.review_header .rating_num	{position: absolute; left: 110px; bottom: 13px; font-size: 1.5em;}
.review_header .rating_num .font_grey1	{font-size: 0.7em; letter-spacing: 0;}
.review_header button	{display: inline-block; position: absolute; right: 15px; top: 50%; padding: 8px 12px; margin-top: -16px; border-radius: 5px; font-size: 0.85em;}

.review_write	{position: relative; height: 0; overflow: hidden;}
.review_write.active	{height: auto; padding: 0 15px 25px;}
.review_write .starPoint	{font-size: 1.3em;}
.review_write .bt_submit	{position: absolute; right: 15px; bottom: 20px;}

.review_unit	{position: relative;}
.review_unit.has_thumb	{padding-right: 79px;}
.review_unit .user_info	{padding: 15px 15px 15px 65px; font-size: 1.1em;}
.review_unit .user_info .inkpf	{position: absolute; top: 15px; left: 15px;}
.review_unit .user_info .rating	{margin-top: 3px; font-size: 0.8em;}
.review_unit .review_delete	{display: inline-block; position: absolute; right: 15px; top: 15px; text-align: center; font-size: ;}
.review_unit .review_delete>a	{display: inline-block; width: 30px; height: 30px; line-height: 32px; border-radius: 5px; font-size: 0.8em;}
.review_unit .review_modify	{display: inline-block; position: absolute; right: 50px; top: 15px; text-align: center; font-size: 12px;}
.review_unit .review_modify>a	{display: inline-block; width: 30px; height: 30px; line-height: 32px; border-radius: 5px;}
.review_summary	{padding: 0 15px 15px; line-height: 1.7em;}
.review_summary>a	{display: inline-block; margin-top: 5px; font-size: 0.9em;}
.review_thumb	{display: inline-block; position: absolute; right: 15px; top: 70px; width: 64px; height: 64px; background-position: center center; background-repeat: no-repeat; background-size: cover; border-radius: 10px;}
.review_body .inner 	{height: calc(100% - 114px) !important;}
.review_body .rating_wrap	{padding-top: 15px; text-align: center; font-size: 1.3em;}
.review_body .rating	{display: inline-block; width: 115px; text-align: left;}
.review_body .xe_content	{padding: 15px; font-size: 1.0em; line-height: 1.6em;}
.review_body2 .xe_content	{padding: 0 15px 15px; font-size: 1.0em; line-height: 1.4em;}
.no_review	{padding: 15px 0 30px; text-align: center;}
.review_content .paging	{padding: 15px 15px 0; margin: 0 0 15px;}

.qna_header	{position: relative; padding: 15px;}
.qna_header .qna_title	{font-size: 1.1em;}
.qna_header button	{display: inline-block; position: absolute; right: 15px; top: 50%; padding: 8px 12px; margin-top: -16px; border-radius: 5px; font-size: 0.85em;}
.qna_write	{height: 0; overflow: hidden;}
.qna_write.active	{height: auto; padding: 0 15px 15px;}
.qna_write .bt_area	{padding-top: 5px; text-align: right;}

.qna_unit	{padding: 15px;}
.qna_unit .qna_title	{}
.qna_unit .qna_title .fa-long-arrow-alt-right	{margin: -2px 5px 0 0; font-size: 18px; vertical-align: middle;}
.qna_unit .qna_content	{margin-bottom: 5px;}
.qna_unit .qna_body	{display: none; padding: 15px 0 10px;}
.qna_unit.reply .qna_body	{margin-left: 25px;}
.qna_unit .xe_content	{font-size: 1.0em; line-height: 1.6em;}
.qna_unit .bt_area	{margin-top: 10px;}
.qna_unit .bt_area a	{margin-right: 10px;}
.qna_unit .qna_status	{}
.qna_unit .qna_author	{position: relative; margin-right: 15px;}
.qna_unit .qna_author::after	{content: ''; position: absolute; right: -9px; top: 5px; width: 1px; height: 9px;}
.qna_unit.reply .qna_author	{margin-left: 25px;}
.qna_unit .qna_author,
.qna_unit .qna_date	{display: inline-block; font-size: 0.9em;}
.qna_content .paging	{margin: 15px;}

.deleviery_content	{padding: 15px;}
.deleviery_content h3	{margin-bottom: 10px; font-size: 1.1em;}
.deleviery_content .delivery_body	{font-size: 1.0em; line-height: 1.6em;}

/* reply qna */
.reply_target .cmt_unit	{padding-bottom: 15px;}
.reply_target .target_author	{margin-bottom: 10px;}
.reply_target .target_author a	{font-size: 1.2em;}
.reply_target .xe_content	{font-size: 1.0em; line-height: 1.6em;}
.reply_form .bt_area	{text-align: right;}




.product_fixed {
    margin-top: 0 !important;
    border-radius: 15px;
    background-color: rgba(255,255,255,0.9);
    box-shadow: 0 5px 10px rgb(0 0 0 / 10%);
    border-top: none;
    position: fixed;
    bottom: 50px;
    width:100%;
    animation-name: move_top;
    animation-duration: 0.5s;
    margin-left: 0px;
    z-index:100;

}
/* ================================================================ */
/* Step9 (2026-05-26): PC viewport (≥1024px) — hearzen 2열 + 우측 sticky 구매정보 */
/* JS가 .right_side를 article.item_detail 직계로 이동 (article 전체 길이만큼 sticky) */
/* ================================================================ */
@media (min-width: 1024px) {
    article.item_detail {
        display: grid;
        grid-template-columns: 1fr 38%;
        column-gap: 40px;
        max-width: 1240px;
        margin: 0 auto;
        position: relative;
    }
    /* 모든 자식은 기본 좌측 컬럼 */
    article.item_detail > *:not(.right_side):not(script):not(style):not(input) {
        grid-column: 1;
        min-width: 0;
    }
    /* .right_side는 article 직계로 이동되어 우측 컬럼 모든 row 차지 + sticky
       자체 스크롤 — 옵션 많거나 콘텐츠 길어도 우측 영역 안에서 독립 스크롤 */
    article.item_detail > .right_side {
        grid-column: 2;
        grid-row: 1 / span 999;
        position: sticky !important;
        top: 80px !important;
        align-self: start;
        margin: 0 !important;
        padding: 24px 0;
        max-height: calc(100vh - 100px);
        overflow-y: auto;
        scrollbar-width: thin;
    }
    article.item_detail > .right_side::-webkit-scrollbar {
        width: 6px;
    }
    article.item_detail > .right_side::-webkit-scrollbar-thumb {
        background: rgba(0,0,0,0.2);
        border-radius: 3px;
    }
    /* .product_header는 좌측 영역 (이미지만) — 배경 회색 제거 */
    .product_header,
    .product_header.bg_grey1 {
        display: block !important;
        padding: 24px 0;
        margin: 0 !important;
        background: transparent !important;
    }
    /* Step26 (2026-05-26): PC 상품 제목 — 우측 sticky 영역 안으로 이동, 좌측 정렬 */
    article.item_detail > .right_side > .product_title {
        padding: 0 14px !important;
        margin: 0 0 4px !important;
        text-align: left !important;
    }
    /* Step31 (2026-05-26): 카테고리(눈건강) 숨김 */
    article.item_detail > .right_side > .product_title .product_ctg {
        display: none !important;
    }
    /* Step31: 우측 sticky 자체 상단 padding 줄임 (제목 위 빈공간 제거) */
    article.item_detail > .right_side {
        padding-top: 8px !important;
    }
    article.item_detail > .right_side > .product_title h1 {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
        word-break: keep-all;
        text-align: left !important;
    }
    article.item_detail > .right_side > .product_title h1 .title_box {
        display: inline-block;
        padding: 2px 8px;
        margin-right: 6px;
        font-size: 12px;
        font-weight: 600;
        vertical-align: middle;
    }
    /* Step30 (2026-05-26): 일일 한정수량 — 박스 외곽 없이, 진행바 위 말풍선 형태 (히어젠 스타일) */
    .right_side .x_daily_limit {
        margin: 14px 14px 18px;
        padding: 0;
        background: transparent;
        border: none;
        border-radius: 0;
    }
    .right_side .x_daily_limit .x_dl_header {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-bottom: 10px;
    }
    .right_side .x_daily_limit .x_dl_dot {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background: #e04a2d;
        color: #fff;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
    }
    .right_side .x_daily_limit .x_dl_label {
        font-size: 13px;
        font-weight: 700;
        color: #1b1e26;
    }
    /* 진행바 wrap — 말풍선의 absolute 기준 */
    .right_side .x_daily_limit .x_dl_bar_wrap {
        position: relative;
        padding-bottom: 26px;
    }
    .right_side .x_daily_limit .x_dl_bar {
        height: 6px;
        background: #f3f4f6;
        border-radius: 3px;
        overflow: hidden;
    }
    .right_side .x_daily_limit .x_dl_progress {
        width: 26%;
        height: 100%;
        background: #e04a2d;
        border-radius: 3px;
    }
    /* 남은수량 — 진행 끝 위치에 말풍선 (꼬리 위로 향함, 진행바 아래에 위치) */
    @keyframes x_dl_blink {
        0%, 100% { opacity: 1; }
        50% { opacity: 0.7; }
    }
    .right_side .x_daily_limit .x_dl_remain {
        position: absolute;
        top: 12px;
        left: 26%;
        transform: translateX(-50%);
        display: inline-block;
        padding: 3px 10px;
        background: #e04a2d;
        color: #fff;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 600;
        white-space: nowrap;
        animation: x_dl_blink 1.2s ease-in-out infinite;
    }
    /* 말풍선 꼬리 (위쪽으로 진행바 끝을 가리킴) */
    .right_side .x_daily_limit .x_dl_remain::before {
        content: '';
        position: absolute;
        top: -5px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        border-bottom: 5px solid #e04a2d;
    }
    .right_side .x_daily_limit .x_dl_remain strong {
        font-weight: 700;
    }
    /* Step16 (2026-05-26): PC도 모바일과 동일하게 .x_gal_track 가로 swipe 갤러리 사용
       — 일반 #thumbnail은 숨기고, 하단 작은 미리보기 썸네일도 숨김 */
    .item_detail .product_thumb > #thumbnail,
    .item_detail .product_thumb > img:not(.x_gal_img) {
        display: none !important;
    }
    .item_detail .product_header .left_side ul li.thumbnail_Image {
        display: none !important;
    }
    .item_detail .product_header .left_side > div[style*="margin-top:10px"][style*="height:80px"],
    .item_detail .product_header .left_side > div[style*="margin-top:180px"],
    .item_detail .product_header .left_side > div[style*="margin-top:210px"] {
        display: none !important;
    }
    .item_detail .product_thumb {
        aspect-ratio: 1 / 1;
        position: relative;
    }
    .item_detail .product_thumb .x_gal_track {
        display: flex !important;
    }
    /* Step17 (2026-05-26): PC 갤러리 좌/우 화살표 */
    .item_detail .product_thumb .x_gal_arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 44px;
        height: 44px;
        border-radius: 50%;
        border: none;
        background: rgba(255,255,255,0.9);
        box-shadow: 0 2px 8px rgba(0,0,0,0.15);
        color: #1b1e26;
        font-size: 18px;
        cursor: pointer;
        z-index: 10;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background 0.2s, box-shadow 0.2s;
    }
    .item_detail .product_thumb .x_gal_arrow:hover {
        background: #fff;
        box-shadow: 0 4px 14px rgba(0,0,0,0.22);
    }
    .item_detail .product_thumb .x_gal_prev { left: 12px; }
    .item_detail .product_thumb .x_gal_next { right: 12px; }
    .product_header .left_side {
        margin: 0 !important;
        text-align: center;
    }
    .product_header .left_side > div { width: 100%; }
    .product_header .product_thumb { margin: 0 0 16px; }
    .product_header .product_thumb img {
        max-width: 100% !important;
        width: 100%;
        height: auto;
    }
    /* 우측 구매정보 카드 톤 */
    article.item_detail > .right_side .product_summary > ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    /* Step10 (2026-05-26): PC에서 옵션이 따라다니는 .product_fixed 효과 비활성화
       — 우측 .right_side 전체가 sticky이므로 옵션도 자동으로 따라옴 */
    #product_fix2.product_fixed,
    .item_detail #product_fix2.product_fixed {
        position: static !important;
        bottom: auto !important;
        margin-top: 0 !important;
        margin-left: 0 !important;
        width: auto !important;
        background: transparent !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        animation: none !important;
        z-index: auto !important;
    }
    #product_fix2.product_fixed .product_buttons {
        position: static !important;
        margin: 0 !important;
        width: 100% !important;
    }
    /* Step22 (2026-05-26): PC 옵션 picker — 셀렉트 박스 (강조 디자인) */
    .right_side .x_option_picker,
    .item_detail .x_option_picker {
        padding: 0 !important;
        border: 2px solid #1b1e26 !important;
        border-radius: 12px !important;
        overflow: visible !important;
        background: #fff !important;
        margin: 12px 14px !important;
        position: relative;
        box-shadow: 0 4px 12px rgba(27, 30, 38, 0.08);
    }
    /* 헤더 (셀렉트 박스 트리거) — .x_opt_head 사용 */
    .right_side .x_option_picker .x_opt_head,
    .item_detail .x_option_picker .x_opt_head {
        display: block !important;
        padding: 18px 48px 18px 22px !important;
        background: #fff !important;
        font-weight: 700 !important;
        font-size: 15px !important;
        color: #1b1e26 !important;
        cursor: pointer !important;
        position: relative !important;
        list-style: none !important;
        margin: 0 !important;
        border-bottom: none !important;
        letter-spacing: -0.01em !important;
        border-radius: 10px !important;
        transition: background 0.2s;
    }
    .right_side .x_option_picker .x_opt_head:hover,
    .item_detail .x_option_picker .x_opt_head:hover {
        background: #fafafa !important;
    }
    .right_side .x_option_picker .x_opt_head::after,
    .item_detail .x_option_picker .x_opt_head::after {
        content: '';
        position: absolute;
        right: 22px;
        top: 50%;
        width: 10px;
        height: 10px;
        margin-top: -7px;
        border-right: 2px solid #1b1e26;
        border-bottom: 2px solid #1b1e26;
        transform: rotate(45deg);
        transition: transform 0.25s ease;
    }
    /* 옵션 카드 리스트 — 기본 접힘 (display: none), .x_opened 시 펼침 */
    .right_side .x_option_picker .x_opt_list,
    .item_detail .x_option_picker .x_opt_list {
        padding: 0 !important;
        margin: 0 !important;
    }
    .right_side .x_option_picker .x_opt_list .x_opt_card,
    .item_detail .x_option_picker .x_opt_list .x_opt_card {
        display: none !important;
    }
    /* 펼침 상태 */
    .right_side .x_option_picker.x_opened .x_opt_head::after,
    .item_detail .x_option_picker.x_opened .x_opt_head::after {
        margin-top: -3px;
        transform: rotate(-135deg);
    }
    .right_side .x_option_picker.x_opened .x_opt_head,
    .item_detail .x_option_picker.x_opened .x_opt_head {
        border-bottom: 2px solid #1b1e26 !important;
        background: #1b1e26 !important;
        color: #fff !important;
        border-radius: 10px 10px 0 0 !important;
    }
    .right_side .x_option_picker.x_opened .x_opt_head::after,
    .item_detail .x_option_picker.x_opened .x_opt_head::after {
        border-color: #fff !important;
    }
    .right_side .x_option_picker.x_opened .x_opt_list .x_opt_card,
    .item_detail .x_option_picker.x_opened .x_opt_list .x_opt_card {
        display: block !important;
    }
    /* 카드 스타일 */
    .right_side .x_option_picker .x_opt_card,
    .item_detail .x_option_picker .x_opt_card {
        border: none !important;
        border-bottom: 1px solid #f0f0f0 !important;
        border-radius: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        background: #fff !important;
    }
    .right_side .x_option_picker .x_opt_card:last-child,
    .item_detail .x_option_picker .x_opt_card:last-child {
        border-bottom: none !important;
    }
    .right_side .x_option_picker .x_opt_card:hover,
    .item_detail .x_option_picker .x_opt_card:hover {
        background: #fafafa !important;
    }
    .right_side .x_option_picker .x_opt_card:has(input[type="radio"]:checked),
    .item_detail .x_option_picker .x_opt_card:has(input[type="radio"]:checked) {
        background: #fff5f3 !important;
    }
    .right_side .x_option_picker .x_opt_card label,
    .item_detail .x_option_picker .x_opt_card label {
        padding: 14px 110px 14px 18px !important;
    }
    .right_side .x_option_picker .x_opt_card .x_opt_title,
    .item_detail .x_option_picker .x_opt_card .x_opt_title {
        font-size: 14px !important;
        margin-bottom: 4px !important;
    }
    .right_side .x_option_picker .x_opt_card .x_opt_price_row,
    .item_detail .x_option_picker .x_opt_card .x_opt_price_row {
        font-size: 14px !important;
    }
    .right_side .x_option_picker .x_opt_card .x_opt_price,
    .item_detail .x_option_picker .x_opt_card .x_opt_price {
        font-size: 15px !important;
    }
    /* Step23: 선택된 옵션 X — 좌측 마진만 */
    .right_side #selected_options .deleteItem {
        margin-right: 16px !important;
    }
    .right_side #selected_options td:last-child {
        padding-right: 16px !important;
    }
    /* Step24 (2026-05-26): 셀렉트 박스 전체 클릭 가능 + cursor pointer */
    .right_side .x_option_picker,
    .item_detail .x_option_picker {
        cursor: pointer !important;
    }
    .right_side .x_option_picker .x_opt_head,
    .item_detail .x_option_picker .x_opt_head {
        cursor: pointer !important;
    }
    .right_side .x_option_picker .x_opt_card,
    .right_side .x_option_picker .x_opt_card label,
    .item_detail .x_option_picker .x_opt_card,
    .item_detail .x_option_picker .x_opt_card label {
        cursor: pointer !important;
    }

    /* Step11 (2026-05-26): nproduct_pc.css의 핵심 PC 스타일 흡수
       — .product_header 자체는 grid가 관리하므로 제외, 내부 콘텐츠/탭/리뷰/Q&A만 흡수 */

    /* 시장 헤더 */
    .bd_header { margin-bottom: 25px; }
    .bd_title { display: inline-block; font-size: 20px; vertical-align: bottom; }
    .bd_desc { display: inline-block; margin-left: 10px; vertical-align: bottom; }
    .list_header { position: relative; min-height: 45px; margin-bottom: 15px; }
    .list_header:empty { display: none; }
    .category_list { display: inline-block; border-radius: 10px; overflow: hidden; }
    .category_list a { display: inline-block; height: 45px; line-height: 45px; padding: 0 25px; }

    /* 상품 목록 — Step58 (2026-05-28): 위젯(ink_widget)과 통일된 supanova 디자인 */
    /* Step59: 메뉴와 상품 스킨 사이 간격 확보 */
    .item_list { position: relative; margin-top: 10px; }
    .item_list .list_unit {
        background: #faf7f3 !important;
        border: 1px solid rgba(15, 23, 42, 0.04);
        border-radius: 20px;
        padding: 16px 16px 20px;
        margin-bottom: 24px;
        box-shadow:
            0 1px 2px rgba(15, 23, 42, 0.04),
            0 8px 28px rgba(15, 23, 42, 0.06);
        transition: transform 0.25s ease, box-shadow 0.25s ease;
        overflow: hidden;
    }
    .item_list .list_unit:hover {
        transform: translateY(-4px);
        box-shadow:
            0 4px 8px rgba(15, 23, 42, 0.05),
            0 18px 44px rgba(15, 23, 42, 0.10);
    }
    .item_list .list_thumb {
        border-radius: 16px !important;
        overflow: hidden;
        margin-bottom: 14px;
        background-color: #ffffff;
    }
    .item_list .list_title {
        position: relative;
        margin: 0 4px 10px;
        padding: 0;
        font-size: 16px;
        font-weight: 600;
        color: #1b1e26;
        line-height: 1.4;
    }
    .item_list .list_title a {
        color: inherit;
        text-decoration: none;
    }
    .item_list .list_title a:hover { color: #e04a2d; }
    .item_list .title_box {
        display: inline-block;
        margin: -2px 8px 0 0;
        padding: 3px 10px;
        background: #fde7e1 !important;
        color: #c44530 !important;
        border-radius: 6px;
        font-size: 11px;
        font-weight: 700;
        line-height: 1.2;
        vertical-align: top;
    }
    .item_list .review_count {
        display: inline-block;
        position: absolute;
        right: 0;
        top: 2px;
        font-size: 13px;
        color: #9ca3af;
    }
    .item_list .list_price {
        position: relative;
        margin: 0 4px 10px;
        padding: 0;
        line-height: 1.3;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 8px;
    }
    .item_list .list_price > .text_en {
        font-size: 17px;
        font-weight: 700;
        color: #e04a2d;
        flex: 1;
    }
    .item_list .list_price .discounted {
        font-size: 13px;
        font-weight: 400;
        color: #9ca3af;
        text-decoration: line-through;
        margin-right: 4px;
    }
    .item_list .list_cart {
        position: static !important;
        transform: none !important;
        display: flex;
        gap: 6px;
    }
    .item_list .list_cart button {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 36px !important;
        height: 36px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        background: #fff !important;
        border: 1px solid rgba(15, 23, 42, 0.08) !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
        cursor: pointer;
        transition: all 0.2s ease;
        margin: 0 !important;
        font-size: 14px;
        line-height: 1;
    }
    .item_list .list_cart .bt_cart:hover {
        background: #c7b078 !important;
        border-color: #c7b078 !important;
    }
    .item_list .list_cart .bt_cart:hover i { color: #fff !important; }
    .item_list .list_cart .bt_wish:hover {
        background: #fde7e1 !important;
        border-color: #e04a2d !important;
    }
    .item_list .list_cart .bt_wish:hover i { color: #e04a2d !important; }
    .item_list .list_key {
        margin: 8px 4px 0 !important;
        padding: 8px 12px !important;
        background: #ffffff !important;
        border: 1px solid rgba(15, 23, 42, 0.06) !important;
        border-radius: 10px !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        flex-wrap: wrap !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
    }
    .item_list .key_text {
        display: inline-block !important;
        padding: 4px 10px !important;
        margin-right: 0 !important;
        background: #e04a2d !important;
        background-color: #e04a2d !important;
        color: #ffffff !important;
        border-radius: 5px !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        line-height: 1.2 !important;
        border: 0 !important;
    }
    .item_list .keyword {
        font-size: 13px !important;
        color: #5b6273 !important;
        line-height: 1.3 !important;
    }
    /* Step62 PC 보정: review 배지 사이즈 살짝 키움 (PC에서 더 잘 보이게) */
    .item_list .x_review_badge {
        left: 12px;
        top: 12px;
        padding: 5px 12px;
        font-size: 12px;
        gap: 5px;
    }
    .item_list .x_review_badge i { font-size: 10px; }
    .item_list .x_review_tier_2 { padding: 6px 14px; font-size: 13px; }
    .item_list .x_review_tier_3 { padding: 7px 16px; font-size: 14px; }

    /* Step33 (2026-05-26): PC 사이드 네비게이션(← ↓ 💬 ⚙ ⊞) 완전 숨김 */
    article.item_detail > .list_buttons,
    article.item_detail .list_buttons {
        display: none !important;
    }
    .list_buttons > div { width: 30px; text-align: center; }
    /* JS가 추가하는 .fix 클래스는 CSS sticky가 대신하므로 무력화 */
    article.item_detail > .list_buttons > div.fix {
        position: static !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
    }
    .list_buttons li { position: relative; margin-bottom: 10px; }
    .list_buttons .bt_top { display: none; }
    .list_buttons .has_bubble { display: inline-block; width: 30px; height: 30px; line-height: 30px; border-radius: 50%; }
    .list_buttons .review_count { position: absolute; left: 18px; top: -5px; }

    /* 상품 요약 / 가격 / 버튼 */
    .product_summary > ul > li { padding: 20px 25px; position: relative; }
    .product_summary h3 { font-size: 16px; }
    .product_summary > ul > li > div { margin-top: 5px; font-weight: 300; }
    /* Step27 (2026-05-26): PC 우측 sticky — 중복 li 숨김 + 판매가를 위로
       실제 DOM: 1=상품후기 2=x_extras 3=혜택안내 4=배송정보 5=판매가 */
    article.item_detail > .right_side > .product_summary > ul {
        display: flex !important;
        flex-direction: column !important;
    }
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(1),
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(3),
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(4) {
        display: none !important;
    }
    /* 판매가(li:nth-child(5))를 상품후기 자리로 (.x_extras 위에) */
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(5) {
        order: -1;
        padding: 12px 0 16px !important;
    }
    /* Step31: "판매가" 헤더 숨김 + 가격 디자인 */
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(5) > h3 {
        display: none !important;
    }
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(5) > div {
        font-size: 22px;
        font-weight: 700;
        color: #1b1e26;
        line-height: 1.2;
        margin: 0 !important;
        display: flex;
        align-items: baseline;
        flex-wrap: wrap;
        gap: 8px;
    }
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(5) .discounted {
        font-size: 14px !important;
        color: #9ca3af !important;
        text-decoration: line-through;
        font-weight: 400;
        order: 1;
    }
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(5) .discounted_price {
        font-size: 24px !important;
        font-weight: 700 !important;
        color: #1b1e26 !important;
        order: 2;
    }
    /* 할인율(%) — JS로 동적 생성, 빨간 배경 + 흰색 글자 */
    article.item_detail > .right_side > .product_summary > ul > li:nth-child(5) .x_price_off {
        order: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #e04a2d !important;
        color: #fff !important;
        font-size: 18px;
        font-weight: 800;
        padding: 4px 10px;
        border-radius: 6px;
        line-height: 1;
        margin-right: 4px;
    }
    /* Step32 (2026-05-26): .x_extras 안 배송비/적립금 한 줄에 "배송비 : 3,000원 적립금 : 199M" 형태 */
    article.item_detail > .right_side > .product_summary .x_extras > .x_delivery_info,
    article.item_detail > .right_side > .product_summary .x_extras > .x_mileage_info {
        display: inline-flex !important;
        align-items: baseline !important;
        gap: 4px !important;
        padding: 0 !important;
        margin: 0 12px 0 0 !important;
        font-size: 12px !important;
        line-height: 1.5 !important;
        vertical-align: top;
        border-top: 0 !important;
    }
    article.item_detail > .right_side > .product_summary .x_extras .x_di_label {
        color: #6b7280 !important;
        font-size: 12px !important;
        font-weight: 500 !important;
        flex: 0 0 auto;
        min-width: auto !important;
    }
    article.item_detail > .right_side > .product_summary .x_extras .x_di_label::after {
        content: ' :';
        margin-left: 2px;
    }
    article.item_detail > .right_side > .product_summary .x_extras .x_di_value {
        color: #1b1e26 !important;
        font-size: 12px !important;
        font-weight: 500 !important;
    }
    article.item_detail > .right_side > .product_summary .x_extras {
        padding: 8px 14px !important;
    }
    /* Step18 (2026-05-26): 상품후기 영역의 별점 + 4.5/5.0 같은 라인 정렬 */
    .product_summary .rating_num {
        position: absolute !important;
        right: 130px;
        top: 50%;
        transform: translateY(-50%);
        width: auto;
        font-size: 13px;
        line-height: 1;
        margin: 0 !important;
    }
    .product_summary .rating {
        position: absolute !important;
        right: 25px;
        top: 50%;
        transform: translateY(-50%);
        width: auto;
        font-size: 14px;
        line-height: 1;
        margin: 0 !important;
        white-space: nowrap;
        display: inline-block;
    }
    .product_summary .rating .rating_star {
        position: relative !important;
        z-index: 1;
        display: inline-block;
        white-space: nowrap;
        line-height: 1;
    }
    .product_summary .rating .rating_bg {
        position: absolute !important;
        left: 0;
        top: 0;
        z-index: 0;
        opacity: 0.2;
        display: inline-block;
        white-space: nowrap;
        line-height: 1;
    }
    .product_summary .rating .last_star {
        display: inline-block;
        overflow: hidden;
        vertical-align: top;
        line-height: 1;
    }
    .product_summary .rating i {
        vertical-align: top !important;
        line-height: 1 !important;
    }
    /* Step19 (2026-05-26): 장바구니/바로구매 버튼 라운드 + 옵션 카드와 동일 폭 */
    .right_side .product_buttons {
        width: auto;
        margin: 12px 14px;
        padding: 0;
    }
    .right_side .product_buttons .bt_group {
        display: flex;
        gap: 8px;
        width: 100%;
    }
    .right_side .product_buttons .bt_group .bt {
        flex: 1 1 0;
        min-width: 0;
        height: 52px !important;
        line-height: 52px !important;
        padding: 0 !important;
        font-size: 16px;
        font-weight: 600;
        text-align: center;
        border-radius: 12px !important;
        box-sizing: border-box;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }
    /* 위시 아이콘 숨김 — .bt 룰 뒤에 정의 + specificity 높여 override */
    .right_side .product_buttons .bt_group a.bt.bt_wish,
    .right_side .product_buttons a.bt.bt_wish {
        display: none !important;
    }

    /* 탭 (상세내용/상품후기/Q&A/반품·교환·배송) — 4개 한 줄, 25%씩 */
    .product_module { margin: 30px 0 20px; padding-bottom: 20px; }
    .product_module .product_nav {
        border-radius: 10px;
        font-size: 0;
        text-align: center;
        overflow: hidden;
        white-space: nowrap;
    }
    .product_module .product_nav > a {
        display: inline-block;
        position: relative;
        width: 25%;
        padding: 15px 0;
        font-size: 16px;
        box-sizing: border-box;
    }
    .product_module .product_nav > a:not(.active)::after {
        content: '';
        position: absolute;
        right: -1px;
        top: 50%;
        width: 1px;
        height: 20px;
        margin-top: -10px;
    }

    /* 상품 정보 펼침/접기 */
    .product_info { margin-top: 50px; }
    .product_info.folded { position: relative; height: 1000px; overflow: hidden; }
    .product_info.folded::after { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 200px; }
    .product_info .bt { display: inline-block; width: 340px; height: 55px; line-height: 55px; border-radius: 10px; box-shadow: 0 0 25px rgba(0,0,0,0.1); font-size: 16px; }
    .product_info .bt_unfold { position: absolute; left: 50%; bottom: 25px; margin-left: -170px; z-index: 1; }
    .product_info.folded .bt_fold { display: none; }
    .product_info .bt_area { padding-top: 50px; text-align: center; }
    .product_info .xe_content { line-height: 180%; }
    .product_info .xe_content h2 { display: block; font-size: 1.5em; margin: 0.53em 0; font-weight: bold !important; }
    .product_info .xe_content h3 { display: block; font-size: 1.5em; margin: 0.2em 0; font-weight: bold !important; }

    /* Step13 (2026-05-26): PC 포토카드 형태 제거 — 모바일 동일 한 줄(풀폭) 형태 사용
       box-sizing: border-box 필수 (.has_thumb padding-right 79px 포함하여 부모 폭 안 침범) */
    .review_unit,
    .item_detail .review_unit {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        margin: 0 0 20px 0 !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
    }
    .review_unit *,
    .item_detail .review_unit * {
        box-sizing: border-box;
    }

    /* Q&A */
    .qna_header { position: relative; padding: 30px 0; }
    .qna_header .qna_title { font-size: 18px; }
    .qna_header button { display: inline-block; position: absolute; right: 0; top: 50%; height: 45px; line-height: 45px; margin-top: -22.5px; padding: 0 30px; border-radius: 10px; font-size: 16px; }
    .qna_write { height: 0; overflow: hidden; }
    .qna_write.active { height: auto; padding-bottom: 30px; }
    .qna_textarea { height: 64px; padding: 15px; border: none; border-radius: 15px; box-sizing: border-box; overflow: hidden; resize: none; font-size: 14px; }
    .qna_write .bt_area { padding-top: 5px; text-align: right; }
    .qna_content > ul { display: table; width: 100%; border-collapse: collapse; }
    .qna_unit { display: table-row; }
    .qna_unit > div { display: table-cell; width: 1%; padding: 15px 10px; white-space: nowrap; }
    .qna_unit .qna_title { display: inline-block; }
    .qna_unit .qna_content { width: auto; padding: 15px 25px; white-space: normal; }
    .qna_unit .bt_open { cursor: pointer; }
    .qna_unit .qna_body { display: none; padding-top: 15px; }
    .qna_unit .xe_content { font-size: 14px; line-height: 180%; }
    .qna_unit .bt_area { margin-top: 15px; }
    .qna_unit .qna_status { text-align: center; }
    .qna_content .paging { margin-top: 30px; }

    /* 배송 */
    .delivery_body { margin-top: 50px; line-height: 180%; }

    /* 답글 */
    .reply_target .cmt_unit { padding: 25px; }
    .reply_target .target_author { margin-bottom: 10px; }
    .reply_target .target_author a { font-size: 16px; }
    .reply_target .xe_content { font-size: 14px; line-height: 180%; }
    .reply_form { padding: 25px; }
    .reply_form .bt_area { text-align: right; }

    /* SK 컨테이너 */
    .sk_ctn .sk_ctn_inner > div { width: 500px; margin: 0 auto; }
    .sk_ctn section { margin-bottom: 60px; }

    /* Step20 (2026-05-26): PC 리뷰 모달 — 풀스크린 대신 가운데 작은 모달 */
    .ink_message.review_body.active {
        width: 720px !important;
        height: 80vh !important;
        max-width: 90vw !important;
        max-height: 820px !important;
        top: 50% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        transform: translate(-50%, -50%) !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        box-shadow: 0 20px 60px rgba(0,0,0,0.3);
    }
    .ink_message.review_body.active > div {
        width: 100% !important;
        height: 100% !important;
        max-height: 100% !important;
        border-radius: 16px !important;
        overflow: hidden !important;
    }
}
