/* 예약상태에따른 컬러값 */
#new_mypage_wrap .status_value {font-weight: 600;}
#new_mypage_wrap .confirm {color: #157CED; display: flex; align-items: center; gap: 5px;}
#new_mypage_wrap .dday {color: #FF7D7D; display: flex; align-items: center; gap: 5px;}
#new_mypage_wrap .standby {color: #04D8BB; display: flex; align-items: center; gap: 5px;}
#new_mypage_wrap .standby_moretxt {color: #04D8BB; display: flex; align-items: center; gap: 5px;}
#new_mypage_wrap .paydone {color: #4600D5; display: flex; align-items: center; gap: 5px;}

#new_mypage_wrap .cancle {color: #ddd; display: flex; align-items: center;}
#new_mypage_wrap .point {color: #FF7D7D; display: flex; align-items: center;}
#new_mypage_wrap .end {color:#bbb; display: flex; align-items: center;}
#new_mypage_wrap .end_box {background: #f6f7f9}
#new_mypage_wrap .point span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #FF7D7D; border-radius: 5px; margin-right: 4px;}
#new_mypage_wrap .confirm span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #157CED; border-radius: 5px; margin-right: 4px;}
#new_mypage_wrap .dday span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #FF7D7D; border-radius: 5px; margin-right: 4px;}
#new_mypage_wrap .standby span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #04D8BB; border-radius: 5px; margin-right: 4px;}
#new_mypage_wrap .paydone span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #4600D5; border-radius: 5px; margin-right: 4px;}
#new_mypage_wrap .cancle span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #999; border-radius: 5px; margin-right: 4px;}
#new_mypage_wrap .end span {padding: 4px 8px; font-size: 0.8rem; color: #fff; background: #bbb; border-radius: 5px; margin-right: 4px;}
.reser_infor_wrapper .status_value {padding:  0 0 5px 0;}

/* 250220  마이페이지 스타일추가 */
#new_mypage_wrap {font-family: 'pretendard'; width: 100%; font-size: 16px;}
#new_mypage_wrap h1 {font-size: 1.75rem; padding: 24px 0; border-bottom: 1px solid #ddd;}
#new_mypage_wrap h2 {font-size: 1.25rem; color: #111; padding: 24px 0; }
#new_mypage_wrap .flex_row {display: flex; justify-content: space-between;}

.mw_1300 {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 10px !important;
    font-family: 'pretendard' !important;
}


#mypage_cont_area {width: 100%;}
#mypage_cont_area .mypage_member_txt{margin: 3% 0 0 0; display: flex; align-content: center; align-items: center}
#mypage_cont_area .mypage_member_txt p{font-size: 1.75rem; font-weight: 700;} 
#mypage_cont_area .mypage_member_txt p span {color: #157ced;}

.mypage_sum_infor { width: 100%; background: #F8FBFF; border-radius: 10px; margin-top: 2%;
    display: flex; justify-content: space-around; padding: 26px 0;text-align: center;}
.mypage_sum_infor li p {margin-top: 16px; font-size: 1.5rem; font-weight: 600; color:#111;
    overflow: hidden; text-overflow: ellipsis; max-width: 450px;}
.mypage_sum_infor li .mypage_ka {display: flex; align-items: center;}
.mypage_sum_infor li .mypage_na {display: flex; align-items: center;}
.mypage_sum_infor li .mypage_ap {display: flex; align-items: center;}
.mypage_sum_infor li .mypage_to {display: flex; align-items: center;}
.mypage_sum_infor li .mypage_ka::before {content: "";display: inline-block;  width: 21px; height: 21px;
background: url(/images/icon/icon_simbol_kakao.svg) no-repeat; padding-left: 18px; }
.mypage_sum_infor li .mypage_na::before {content: "";display:inline-block; width: 21px; height: 21px;
background: url(/images/icon/icon_simbol_naver.svg) no-repeat; padding-left: 18px; }
.mypage_sum_infor li .mypage_ap::before {content: "";display: inline-block;  width: 21px; height: 21px;
background: url(/images/icon/ap.png) no-repeat; padding-left: 18px; }
.mypage_sum_infor li .mypage_to::before {content: "";display:inline-block; width: 21px; height: 21px;
background: url(/images/icon/to.png) no-repeat; padding-left: 18px; }

.mypage_sum_infor li:first-child p {color: #157CED;}
.mypage_member_txt2 {border-bottom: 1px solid #ddd; display: flex; align-items: center; justify-content:space-between;}
.mypage_member_txt2 h2 {padding-bottom: 16px;}
.reser_infor_detail {display: flex; padding: 24px; border: 1px solid #ddd; border-radius: 5px; justify-content: space-around;
    gap: 2.8%; margin-top: 2%; align-items: center;}
.reser_infor_detail > img {width: 128px; height:128px; border-radius: 5px; object-fit: cover;}
.reser_infor_detail .detail_only__justify > img {width: 128px; height:128px; border-radius: 5px; object-fit: cover;}
.reser_infor_detail > dl div img {width: 128px; height:128px; border-radius: 5px; object-fit: cover;}
.reser_infor_detail > dl {border-right: 1px solid #dfdfdf; width: 100%;}

.infor_detail_txt {margin-top: 8px;}
.reser_infor_detail dl dl {display: inline-block; width: 45%;}
.reser_infor_detail dl dl > dt {margin-top: 8px; color: #999; display: inline-block;}
.reser_infor_detail dl dl > dd {color: #555; display: inline-block; margin-left: 10px;}
.reser_infor_detail > dl > dd {font-size: 1.25rem; margin: 10px 0 0 0; font-weight: 600;  
    overflow: hidden; text-overflow: ellipsis; display: -webkit-box;
    -webkit-line-clamp: 2;  /* 2줄 넘어가면 말줄임 */
    -webkit-box-orient: vertical; padding-right: 16px;}
.reser_infor_detail .product_name {font-size: 1.25rem; margin: 10px 0 0 0; font-weight: 600;  
    overflow: hidden; text-overflow: ellipsis; display: -webkit-box;
    -webkit-line-clamp: 2;  /* 2줄 넘어가면 말줄임 */
    -webkit-box-orient: vertical; padding-right: 16px;}
.reser_infor_detail .list_product_name {font-size: 1.25rem; margin: 10px 0 0 0; font-weight: 600;  
    overflow: hidden; text-overflow: ellipsis; display: -webkit-box;
    -webkit-line-clamp: 2;  /* 2줄 넘어가면 말줄임 */
    -webkit-box-orient: vertical; padding-right: 16px;}
.txt_list_only {min-width: 180px}

.reser_infor_wrap .only_mo {display: none;}
.right-btn3 {background: #F6F7F9; padding: 4px 8px; color: #999; border-radius: 3px; width: 100%; font-size: 1rem;}
.txt_list_only .right-btn3{margin-top: 10px; }
/* 예약상세_new 250221 */
.reser_infor_wrapper {padding:24px; border: 1px solid #ddd; border-radius: 10px; color:#999; margin-top: 2%;}

.detail_only_txt {border-bottom: 1px solid #ddd; padding-bottom: 12px; display: flex;
justify-content: space-between; align-items: center;} 
.detail_only_txt dl {display: inline-block;}
.detail_only_txt dl dl:nth-child(2) {margin-left: 10px;}
.detail_only_txt dt {display: inline-block; color:#999; }
.detail_only_txt dd {display: inline-block; color:#555; margin-left: 10px; }
.reser_infor_wrapper .product_name {color: #333;}
.detail_only_txt div {position: relative; right: 0;;}
.detail_button_warp {background: #F6F7F9;border-radius: 5px; padding: 12px 24px; 
    display: flex; gap: 16px; align-items: center; }
.detail_button_warpper{display: flex; justify-content: space-between;}
.detail_button_warp .button_type07 {background: #fff;}
.button_type07 {padding: 8px 12px; border: 1px solid #ddd; border-radius: 20px; color:#999; display: inline-block; cursor: pointer;
transition: all 0.3s;}
.button_type07:hover {border-color: #555; color: #555;}
.button_type07::after {content: '';
    display: inline-block;width: 6px; height: 6px; border-top: 2px solid #999;
    border-right: 2px solid #999; transform: rotate(45deg); margin-left: 10px;
    position: relative;top: -1.5px; border-radius: 1px;}

.detail_button_warp .button_type07:first-child {background: #157ced; color:#fff; border: none;}
.detail_button_warp .button_type07:first-child:hover {color: #fff;}
.detail_button_warp .button_type07:first-child::after {content: '';
    display: inline-block; width: 6px; height: 6px; border-top: 2px solid #fff;
    border-right: 2px solid #fff; transform: rotate(45deg); margin-left: 10px;
    position: relative; top: -1.5px;}

.end_box .detail_button_warp .button_type07:first-child {background: #fff; color:#999; border: 1px solid #ddd;}
.end_box .detail_button_warp .button_type07:first-child:hover {color: inherit;}
.end_box .detail_button_warp .button_type07:first-child::after {content: '';
    display: inline-block; width: 6px; height: 6px; border-top: 2px solid #999;
    border-right: 2px solid #999; transform: rotate(45deg); margin-left: 10px;
    position: relative; top: -1.5px;}

.reser_infor_wrapper .reser_infor_wrap { padding: 24px; margin-top: 2.5%;
    border-radius:10px; box-shadow: 0px 0px 5px #9797974A;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl {display: flex; margin-top: 8px; align-items: baseline;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl .add_pay {color:#157CED;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl .total_count_num {color:#157CED; font-weight: 600; padding-left: 5px;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl .total_count_num::before {content:""; margin-right: 8px; width: 1px 
    ; height:12px; background: #ddd; display: inline-block;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt .total_ammount {padding-top: 16px; border-top: 1px solid #ddd; margin-top: 10px;}
.total_pay {color: #FF3939; font-size: 1.25rem; font-weight: 600;}
.total_pay_discount {color: #999; font-size: 1rem; font-weight: 600; text-decoration:line-through;}
.total_pay span {color: #999; font-size: 1rem; font-weight: 400;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt > dl > dt {flex-basis: 12%;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt > dl > dd {color :#333; flex-basis: 80%;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl .add_description {color: #999; margin-left: 5px;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl .add_description::before {content:""; margin-right: 8px; width: 1px 
   ; height:12px; background: #ddd; display: inline-block;}
#new_mypage_wrap .reser_infor_wrapper h4 {font-size: 1.25rem; color :#333; padding: 0 0 10px 0;}
#new_mypage_wrap .reser_infor_wrapper .bottom_button_wrap {justify-content: center; gap: 2%; margin-top: 20px;}
#mypage_cont_area .reser_infor_wrapper .confirm_addtxt {background: #EFF7FF; padding :5px;}
#mypage_cont_area .reser_infor_wrapper .confirm_addtxt p {display: inline-block; color:#555}
.reser_infor_wrapper .status_addtxt p{  background: #EFF7FF; margin-top: 5px;
    font-size: 1.0rem;
    font-weight: 500;
    padding: 4px 10px;
    display: inline-block;
    color: #999;}

#mypage_cont_area .infor_wrapper .confirm_addtxt {background: #EFF7FF; padding :5px;}
#mypage_cont_area .infor_wrapper .confirm_addtxt p {display: inline-block; color:#555}
.infor_wrapper .status_addtxt p{background: #EFF7FF;
    font-size: 1.0rem;
    font-weight: 500;
    padding: 4px 10px;
    display: inline-block;
    color: #999;}

/* 예약목록 */
.detail_button_warpper .detail_button_warp { background: none;
padding: 0; margin-top: 12px; gap:12px}
.detail_button_warpper .button_type04 {width: 120px; background: #fff;}
#new_mypage_wrap .reser_infor_wrapper .flex_row {flex-direction: row;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt dl .total_pay {color: #FF3939; }

/* 앱전용메뉴 */
.m_mypage_menu > ul li{display: flex; justify-content: space-between; 
    align-items: center;padding: 9px 0; font-size: 16px;}
.m_mypage_menu > ul {margin-top: 10px;}
.m_mypage_menu .m_tail_menu {display: flex; margin-top: 10px;
    border-top: 1px solid #ddd; border-bottom: 1px solid #ddd;}
.m_mypage_menu div {flex-basis: 50%; padding:10px 0; text-align: center; cursor: pointer;}
.m_mypage_menu div:first-child {border-right: 1px solid #ddd;}
.reser_infor_wrap {position: relative;}
.reser_infor_wrap > .button_type07 {position: absolute; top: 24px; right: 24px;}

.gostRed{ display: inline-block; margin-left: 10px;
    color:#ffa3a3; font-size: 0.9rem; padding:0 ; background: none !important; border:none !important; font-family: 'Pretendard';line-height: 16px;}
.gostRed::before{content: ''; background: url(/images/icon/gost_red.svg)no-repeat; width: 14px; height: 14px; display: inline-block; background-size: 12px 12px; position: relative; top: 3px;}
.gostRed:hover{font-weight: 600;}
.gostBlue::before {content: ''; background: url(/images/icon/gost_blue.svg)no-repeat; width: 14px; height: 14px; display: inline-block; background-size: 12px 12px; position: relative; top: 3px; fill: #7cbbff;}
.gostBlue{color: #7cbbff; font-size: 0.9rem; margin-left: 10px; background: none !important; border:none !important; font-family: 'Pretendard';line-height: 16px;}
.gostBlue:hover{font-weight: 600; }

.pointer{cursor:pointer;}
.pay_description p{padding:12px; background: #F8FBFF; color: #157ced; margin-top: 12px;}

/* 체크박스 스타일 */
.allselect {margin: 20px 0;}
.custom_checkbox input { display: none;}
.custom_checkbox {display: flex; align-items: flex-start;}
.product_select {gap: 12px; align-items: center;}
.custom_checkbox .checkmark {
    display: inline-block; position: relative;
    min-width: 20px; min-height: 20px; border-radius: 5px;
    border: 1px solid #BBBBBB; background: white;
    cursor: pointer; transition: all 0.3s ease-in-out;
}
.custom_checkbox input:checked + .checkmark {
    background: #157CED;
    border: 1px solid #157CED;}
.check_txt {color: #157ced; margin-left: 8px; line-height: 20px;}
.check_txt span {font-weight: 600; color: #ff4141;}
.custom_checkbox input:checked + .checkmark::after {
    content: ""; background: url(/images/item/selec_01.png)no-repeat; width: 10px; height: 8px;
    position: absolute; top: 4px; left: 4px;}
.checkbox_type01 {padding-top: 8px;}
.cehckbox_type02 {margin-bottom: 8px;}

/* 기본 체크박스 숨김 */
.screen-reader { 
    position: absolute;
    width: 1px;height: 1px; padding: 0; border: 0; overflow: hidden; margin: -1px; clip-path: inset(50%);
}

/* 체크 아이콘 */
.check_2icon {
    width: 1.4em; height: 1.4em;
    border-radius: 50%; background-color: #ECF6FF; border: 1px solid #157CED;
    position: absolute; left: 7px; top: 50%; transform: translateY(-50%);
    transition: all 0.3s ease-in-out;}

/* 체크 아이콘 내부 체크 표시 */
.check_2icon::before {
    content: ""; position: absolute;
    box-sizing: border-box; width: 30%; height: 55%;
    left: 50%; top: 50%;
    transform: translateX(-50%) translateY(-70%) rotateZ(40deg);
    border-right: 1.7px solid #157CED; border-bottom: 1.7px solid #157CED;
    transition: all 0.3s ease-in-out;
}

/* 체크 해제 시 스타일 변경*/
.screen-reader:not(:checked) ~ .label_box2 {
    border: 1px solid #ddd;
    color: #999;
    background: #fff;
}

.screen-reader:not(:checked) ~ .label_box2 .check_2icon {
    border: 1px solid #ddd;
    background: #fff;
}

/* 체크 아이콘 숨기기 */
.screen-reader:not(:checked) ~ .label_box2 .check_2icon::before {
    opacity: 0;
}
.reser_infor_wrapper:has(.custom_checkbox) {
  width: 100% !important;
  margin-top: 15px;
padding: 14px; 
}
.reser_infor_wrapper:has(.product_select) .reser_infor_detail {width: 100% !important; margin-top: 0;
padding: 0; border: none;}

.reser_infor_wrapper.selected {
  border: 1px solid #157ced;
}
#select_only {display: flex; justify-content: center; gap: 1%;  margin-top: 20px;
}
.only_mo_value {display: none!important;}

/* 기존코드 중복커스텀 */
.product_select .couponUse input{ border: 1px solid #157ced; border-radius: 20px; margin-left: 5px; margin-top: 5px;
color: #157ced; background: #fff; padding:4px 10px;
}
.product_select .couponUse ul li {width: 90%;}

.product_select .couponUse div > div.checkbox, div.couponSelectDiv ul li > label {background: #999;}
.product_select .couponUse div > div.checkbox, div.couponSelectDiv ul li > label:checked > div.checkbox {background: #157ced;}

.product_select .couponUse ul li input[type="checkbox"]:checked + label > div.checkbox span.icon {border-color: #157ced;}
.product_select .couponUse ul li div, .couponSelectDiv ul li > input[type="checkbox"]:checked + label { border-color: #157ced;}
.product_select .couponUse ul li > div > div.coupon_info, div, .couponSelectDiv ul li > input[type="checkbox"]:checked + label > div.coupon_info {border-color: #157ced;}
.reser_infor_wrapper .Product_article__list { margin-bottom: 0;}
.final__price {border: 1px solid #157ced!important; padding:28px!important; border-radius: 10px; margin-bottom: 20px;}
.final__price .discount_div p {color:#999; font-size: 14px;}
.payment_price p {color: #999 !important; font-size: 14px; font-weight: 600;}
.final__price .discount_div span {font-size: 16px!important; font-weight: 400;}
.discount_div .origin {color: #111; font-weight: 500;}
.discount_div .discount {color: #157ced; font-weight: 500;}
.final__price .discount_div {border-bottom: 1px solid #ddd!important; padding-bottom: 20px;}
.price_krw_all {font-weight: 600!important; font-size: 1.25rem!important;}
.price_krw_all, .red {color: #FF3939!important; }
.select_payment .radio input[type='radio'] + label {border-color: #157ced;padding: 8px 12px 8px 45px; border-radius: 20px;}
.select_payment .radio [type="radio"] {border-color: #157ced; left: 12px;}
.select_payment .radio input[type='radio']:checked + label {background: #157CED!important; }
.select_payment .radio input[type='radio'] + label p {font-family: 'Pretendard'; color:#157ced; font-size: 16px;}


/* 마이페이지 스타일추가 */
.wishlist_block img {width: 100%; min-width: 112px;
    height: 160px; border-radius: 10px;}
.wishlist_box {margin-top: 10px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 2%;  row-gap: 20px;}
.wishlist_block {position: relative;}
.wishlist_txt {margin-top: 12px;  font-size: 1.1rem; overflow: hidden; height: 40px; line-height: 115%;
    text-overflow: ellipsis; 
    display: -webkit-box;
    -webkit-line-clamp: 2;  /* 2줄 넘어가면 말줄임 */
    -webkit-box-orient: vertical;}
.wishlist_value {display: flex; align-items: center; color: #157ced; gap: 14px; margin-top: 4px;}
.wishlist_value span::before {position: relative; top:3px}
.wishlist_value .star_score::before {content: ""; display: inline-block; background: url(https://tourpik.b-cdn.net/images/icon/star.png);
    width: 20px; height: 20px; top: 3px;}
.wishlist_value .review_count::before {content: ""; display: inline-block; background: url(https://tourpik.b-cdn.net/images/icon/review.png);
    width: 20px; height: 20px;}
.only_mo_arrow {display: none;}
.only_mo_data {display: none!important;}
.wishlist_box .wishlist_block .heart{display: inline-block;
    background: url(/images/main/ico_heart_off.svg) no-repeat;
    width: 30px; height: 30px; position: absolute; right: 12px; top: 10px; cursor:pointer;}
.wishlist_box .wishlist_block .heart.on {display: inline-block;
    background: url(/images/main/ico_heart_on.svg?v=1) no-repeat;
    width: 30px; height: 30px; position: absolute; right: 12px; top: 10px; z-index:2; cursor:pointer;}
div.index_wishlist div.wishGroup div.wishTitle{display: flex; align-items: center; justify-content: space-between; margin: 10px 0 0;}
div.index_wishlist div.wishGroup div.wishTitle h3{font-size: 1.15rem; color: #111; padding: 0;}

/* 플레이스 위시리스트 스타일 */
.wishlist_block.place .detailinfo_place {display: flex; justify-content: space-between; align-items: center; margin-top: 8px;}
.wishlist_block.place .location_tag {padding: 4px; border: 1px solid #ddd; border-radius: 5px; color: #999; font-size: .9rem;}
.wishlist_block.place .discount_rate {color: #FF4343; font-size: .9rem; font-weight: 800; flex-basis: 44%; text-align: right;}
.wishlist_block.place .place_name {font-size: 1rem; width: 100%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; font-weight: 600; margin-top: 8px;}
.wishlist_block.place .place_addinfo {width: 100%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 0.925rem; color: #9C9C9C; margin-top: 5px;}
.wishlist_block.place .miniinfo_wrapper {margin-top: 4px; display: flex; color: #999; gap: 10px; align-items: center;}
.wishlist_block.place .miniinfo_wrapper > div {align-items: center; display: flex; gap: 2px;}
.wishlist_block.place .miniinfo_wrapper img {width: auto; min-width: auto; height: auto;}

/* 슬릭 dots 블렛 스타일 */
.slick-dots {
  text-align: center;
  padding-top: 10px;
}

.slick-dots li {
  display: inline-block;
  margin: 0 4px;
}

.slick-dots li button {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #ccc;
  border: none;
  padding: 0;
  cursor: pointer;
}

.slick-dots li.slick-active button {
  background-color: #007bff; /* 활성 점 색상 */
}

/* 예약내역 스타일추가 */
.add_infor_date {border-left: 1px solid #ddd; padding-left: 20px; position: relative; margin-top: 32px; padding-top: 12px;}
.infor_date {font-size: 1.2rem; font-weight: 600; margin-top: 32px; position: absolute; top: -40px;}
.infor_date::before {content: ""; width: 8px; height: 8px; display: inline-block; border-radius: 6px; background: #157ced; position: relative; left: -24px; top: -3px;}
.add_infor_date .reser_infor_detail .flex_detail {display: flex;}
.reser_infor_detail_only {display: none;}
.reser_infor_wrapper .reser_infor_detail .detail_only__justify {display: flex; align-items: center; gap: 20px;}
.mo_button_wrapper {display: none;}

div.develop_gallery_new_div input[type="file"] {
    display: none;
}
/*.data_more_button {display: block;
    background: none; padding:4px 12px; border: 1px solid #ddd; display: flex; align-items: center; border-radius: 50px;}*/
/*.data_more_button p::before {content: ''; width: 12px; height: 7px; display: inline-block; background: url(/images/ico/arrow_blue.svg); margin-right: 5px;}*/
.data_more_button {content: ''; width: 32px; height: 32px; display: inline-block; background: url(/images/ico/arrow_more.svg?v=250704); background-repeat : no-repeat;background-color:#fff; cursor:pointer !important;}

/* 위시리스트 추가 250703 */
.only_wishlist_box {border: 1px solid #dfdfdf; border-radius: 10px;}
.only_wishlist_box img {border-radius: 10px 10px 0 0; object-fit: cover;}
.only_wishlist_box .wishlist_txt {padding: 0 12px;}
.only_wishlist_box .wishlist_value {padding-left: 12px; padding-bottom: 12px;}

.only_wishlist_box .wishbox_price {padding-left: 12px; font-weight: 600; color:#FF7D7D; margin-top: 4px;}
.only_wishlist_box .wishbox_price span {font-weight: 400; color: #999}

/* 인보이스 확인 팝업 추가 */
.invoice_modal_wrap {position: fixed; font-family: 'Pretendard'; text-align: center;
  bottom: 0; left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.3); 
  z-index: 10;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;}
.invoice_confirm {width: 100%; max-width: 500px; margin: 0 auto; background: #FFF; padding:24px ;}
.invoice_confirm h1 {font-size: 1.15rem; font-weight: 600;}
.invoice_confirm .confirm_txt {padding: 24px 0;}
.invoice_confirm .confirm_txt p > strong {color: #157ced}
.invoice_confirm .confirm_txt strong {font-weight: 600;}
.invoice_confirm .confirm_txt .pink_box {padding: 10px; color:#FF7D7D; margin: 12px 0; font-weight: 600;}
.confirm_buttonwrap{ display: flex; gap: 20px;}

@media (max-width: 980px) { 
/*마이페이지 */
#new_mypage_wrap .flex_row {flex-direction: column}  
#mypage_cont_area {margin-left: 0;}
.reser_infor_detail dl dl > dt {display: block;}
.reser_infor_detail dl dl > dd {margin-left: 0;}
.reser_infor_detail > dl > dd {font-size: 1.25rem; margin: 10px 0 0 0; font-weight: 600; 
text-overflow: ellipsis; display: -webkit-box;
-webkit-line-clamp: 1;  /* 2줄 넘어가면 말줄임 */
-webkit-box-orient: vertical; padding-right: 16px;}
.txt_list_only {min-width: 150px;}
#new_mypage_wrap h1 {font-size: 1.25rem; display: none;}
}

@media (max-width: 720px) {
        /* 예약내역에서만 */
.reser_infor_wrapper .reser_infor_detail {flex-wrap: wrap; flex-direction: column}
.reser_infor_wrapper .reser_infor_detail .detaillist___only dl {display: none!important;}
.detail_only__justify {display: flex; width: 100%;}
.reser_infor_detail .detail_only__justify > img {width: 72px; height:68px;}
    .reser_infor_detail .flex_detail .product_name {margin-left: 10px;}
   .reser_infor_detail .flex_detail {margin-top: 10px; align-items: center; } 
.add_infor_date .reser_infor_detail .status_value {border-bottom: 1px solid #ddd;}
.reser_infor_detail .reser_infor_detail_only {background: #F8FBFF; padding: 10px; gap: 20px;
    display: flex; width: 100%; margin-top: 10px;}
.reser_infor_detail .only_tourticket dl{display: flex; gap: 20px; 
    justify-content: space-between; align-items: center;}
.reser_infor_detail .only_tourticket dl .checkdate {margin-top: 0;}
.reser_infor_detail .reser_infor_detail_only dl {flex-basis: 50%; position: relative;}
.reser_infor_detail .reser_infor_detail_only dl:nth-child(2)::before {content: ''; width: 1px; height: 50%; background: #d9d9d9; display: inline-block; position: absolute;
top: 25%; left: -15%;}
.reser_infor_detail .reser_infor_detail_only .checktime {color: #157ced; }
.reser_infor_detail .reser_infor_detail_only .checkdate {color:#111; margin-top: 5px; font-weight: 500;  }

.detail_button_warpper {display: none;}
.mo_button_wrapper {display: flex;}
/* 마이페이지 */
.product_select .couponUse ul li {width: 100%;}

.reser_infor_wrapper .reser_infor_detail .status_value::after {display: none;}
.reser_infor_wrapper .product_name {margin: 10px 0;}
.reser_infor_wrapper .reser_infor_wrap .infor_detail_txt > dl > dt {flex-basis: 35%;}
.reser_infor_wrapper .reser_infor_wrap {padding: 18px;}
.txt_list_only {width: 100%; padding: 5px 0;border-top: 1px solid #ddd; margin-top: 10px;}
.txt_list_only > dl {display: flex; justify-content: space-between; align-items: center;}
.txt_list_only:has(.PaymentList_link-detail) dl{flex-direction: column; align-items: flex-start;}
.txt_list_only .button_type04 {display: none;}
.reser_infor_detail > dl {border: none;} 
.detail_button_warpper { flex-wrap: wrap;}
.mypage_sum_infor li:first-child {display: none;}
.reser_infor_detail .button_wrap {display: none;}
.reser_infor_wrapper .button_wrap {width: 100%; display: flex; justify-content: center; gap: 10px;
    margin-top: 12px; padding-top: 12px; border-top: 1px solid #ddd;}
    
.wishlist_box {gap: 12px; width: 100%; margin-top: 12px; min-width:320px; justify-content: left; grid-template-columns: repeat(3, 1fr);}
.wishlist_block {min-width: none; font-size: 0.9rem;}
.wishlist_block img {min-width: 80px; height: 100px; border-radius: 10px 10px 0 0;}
.wishlist_box .wishlist_block:nth-child(4) {display: none;}
div.reser_infor_wrap.listAll .wishlist_box .wishlist_block:nth-child(4),
.wishlist_box .only_wishlist_box:nth-child(4) {display: block;}
.wishlist_txt {margin-top: 8px; height: 36px;}
.wishlist_txt p {font-size: 1rem;}

.wishlist_block.place .location_tag,
.wishlist_block.place .discount_rate {font-size: .8rem;}

#mypage_cont_area:last-child{margin-bottom: 10%;}
.center_operating span {margin-left: 0;}
.chatbox_wrap {flex-direction: column; gap: 10px;}
.chatbox_wrap div {width: 100%; padding: 16px 18px; border: 1px solid #ddd;position: relative;}
.chatbox_wrap div:hover {background: #fff;}

.center_number_wrap {flex-direction: column; padding: 16px 18px;}
.center_number_wrap dl {display: flex; justify-content: space-between;}
.center_number_wrap dl dd {flex-basis: 60%;}

#board_list_new .list_block {flex-direction: column; align-items: flex-start;}
.list_type > div { width: 100%; flex-basis: auto;
    flex-direction: column; align-items: flex-start;}
.list_type > div p {margin-top: 0;}
.list_block .date {font-size: 14px; margin-top: 5px;}
.list_block .writer {display: none;}
.list_block {position: relative;}
.list_block button {position: absolute; top: calc(50% - 12px); right: 24px;}
.center_number_wrap span {margin-left: 0;}
.detail_button_warp {gap: 10px; width: 100%; padding:12px 18px}
.detail_button_warp::-webkit-scrollbar{display:none;}

.detail_only_txt dl dl:nth-child(2) {margin-left: 0; padding-top: 4px;}
.button_wrap .button_type04 {width: 80px;}
.detail_button_warpper .detail_button_warp {margin-top: 0;}
.detail_button_warpper .detail_button_warp:nth-child(2) { row-gap: 0; flex-wrap: wrap; gap:0; justify-content: center;}
.detail_button_warpper .detail_button_warp .button_type07 {text-align:center; margin: 10px 0 0 0 ; width: 31%; margin-right: 2%;} 
.detail_button_warpper .detail_button_warp .button_type07:nth-child(3n) {margin-right: 0;}
.detail_button_warpper .detail_button_warp .button_type07:last-child {margin-right: 0;}
.warpper_scroll {width: 100%; overflow: scroll; -ms-overflow-style: none; margin-top: 10px;}
.warpper_scroll::-webkit-scrollbar {display: none;}
#new_mypage_wrap .reser_infor_wrapper .bottom_button_wrap {justify-items: center;}
.reser_infor_wrapper:has(.product_select) .reser_infor_detail img {display: none;}

    /* 버튼타입 여기서만 적용 */
    .button_type02_03::after {position: absolute;top: calc(50% - 7px); right: 24px;}
    .button_type07::after {display: none;}
    .button_type02_03::after {display: none;}
    .chatbox_wrap div .button_type02_03::after {display: inline-block;}
    #item_list .list_in > ul li .productInfo {width: 100% !important;}
    #item_list .list_in > ul > li .newThm {width: 100% !important;}
    #item_list .list_in > ul li a img {width: 100% !important;}
    #item_list .product__Item {margin-top: 0;}
    #item_list .list_in > ul {margin-bottom: 10px !important;}
    #item_list .list_in > ul > li {margin-top: 10px !important;}

/* 모바일 플로팅 버튼 */
.mo_button_wrapper {display: flex;}
.only_mo_button .main_button {width: 85%; color:#fff; background: #111;}
.only_mo_button .more_button {width: 40px;}
.only_mo_button {margin-top: 10px;}
.mo_button_floating {display: none;
padding-top: 10px;
  position: fixed;
  bottom: 0; left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.3); /* 검정 배경 + 투명도 */
  z-index: 10;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}
  .mo_button_floating .sub_button:last-child { 
  padding-bottom:  calc(var(--safeAreaBottom1) + 10px);
  padding-bottom:  calc(var(--safeAreaBottom2) + 10px)}

.mo_button_floating .button_type04 {border: none; border-radius: 0; }
.mo_button_floating .sub_button {
 padding: 15px;
  width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid #ddd;}
.mo_button_floating .sub_button:first-of-type {border-radius: 10px 10px 0 0;}
.mo_button_floating::before {
  content: '';
  flex: 1;
}
}

@media (max-width:550px){
div.wrap main.sub section.margin_top_more {margin-top: calc(var(--safeAreaTop2) + 76px);
    margin-top: calc(var(--safeAreaTop1) + 76px);}
div.wrap main.sub section.basicContent {margin-top: calc(var(--safeAreaTop2) + 76px);
    margin-top: calc(var(--safeAreaTop1) + 76px);}
#mypage_cont_area:has(.mypage_sum_infor) .mypage_member_txt2 {margin-top: 10px;}
.only_mo_data .checkout_time {margin-top: 5px;}
    .reser_infor_detail .list_product_name {padding-right: 8px;}
 .infor_detail_txt .only_mo_data  {margin-top: 10px;}
.reser_infor_wrapper .status_value {padding:0}
.only_mo_button {margin-top: 0;}
.slick-slide .reser_infor_detail > img {display: none!important;}
.reser_infor_detail {position: relative; margin-top: 3%; padding: 36px 18px 14px 18px;}
.reser_infor_wrapper .reser_infor_detail  {padding: 0; border: none;}
.reser_infor_detail > img {width: 92px; height: 92px; margin-top: 10px;} 
.reser_infor_detail > dl div img {width: 92px; height: 92px; margin-top: 10px;} 
.detail_button_warpper .button_type04 {margin-top: 0;}
.reser_infor_detail .infor_detail_txt dl:not(.only_mo_data) {display: none}
.reser_infor_wrapper .reser_infor_detail .infor_detail_txt dl {display: flex; justify-content: space-between;
margin-top: 4px;}
.reser_infor_detail dl dl {width: 100%;}
.reser_infor_detail > dl > dd {-webkit-line-clamp: 2; word-break: break-all; margin-top: 0; }
.reser_infor_detail .product_name {-webkit-line-clamp: 2; word-break: break-all;}
.reser_infor_detail dl dl > dt {margin-top: 0;}
.myp_pro_banner .swiper-slide img {height: 140px; object-fit: cover;}
#new_mypage_wrap h1 {padding: 10px 0 20px 0;}
.reser_infor_wrap:has(.customer_center) {padding:0 10px;}
#mypage_cont_area .mypage_member_txt {margin: 12px 0 3% 0;}
.only_mo_arrow {display: block; width: 28px; height: 100%; position: absolute; right: 0; top: 0;
    border-left: 1px solid #ddd; background:#F8FBFF;}
.only_mo_arrow > img {position: relative; top: calc(50% - 5px); left: 10px;} 
.summury_only {border-left: 1px solid #ddd; padding-right: 20px;}
.only_mo_justify {display: flex; align-items: center;}
.reser_infor_detail dl dl > dd {color: #111; font-weight: 500;}
.reser_infor_detail .status_value {position: absolute; left: 0; top: 0;
    width: 100% ;padding: 12px 18px; display: flex; align-items: center;}
.summury_only .reser_infor_detail:has(.confirm) .status_value{position: absolute; left: -18px; top: -14px; border: none;
    width: 100% ;padding: 14px 18px; display: flex; align-items: center;}
#new_mypage_wrap .confirm span {border-radius: 5px; padding: 4px 8px; }
#new_mypage_wrap .summury_only .confirm span {border-radius: 5px; padding: 4px 8px;}
.only_mo_value {display: flex!important; gap: 10px;}
.only_mo_value span {padding: 3px 6px; background: #FFF3F3; border-radius: 3px; color: #FF8181; font-weight: 400; margin-top: 6px; font-size: 1rem;}
.only_mo_value .location_na {background: #FFF9E2;}
.button_type02_03 {font-size: 1.0rem;}
.mypage_sum_infor li p {font-size: 1.1rem; margin-top: 12px;}
.summury_only > img {display: none;}
.mypage_sum_infor {padding: 14px;}
.final__price {padding:12px!important;}
#select_only {gap: 2%;}
.reser_infor_wrapper .reser_infor_detail > img {height: 152px; width: 100%;}
#new_mypage_wrap h2 {padding:12px 0}
.detail_only_txt dd {margin-left: 0;}
.button_type02 {margin-top: 0; font-size: .88rem;}
.reser_infor_wrapper {padding: 20px;}
.reser_infor_wrapper .reser_infor_detail {border: none;}
.wishlist_value {gap: 8px;}
.only_mo_detail {flex-basis: 50%; min-height: 80px;}
.summury_only .summury_onlytxt .only_mo_data {display: block!important; flex-basis: 30%; border-left: 1px solid #ddd; padding-left: 20px;}

  .rate_list {
    display: inline-block;
    border: 0;
    vertical-align: bottom;
}

.rate_list > span {float: right; color: #ddd;}
.rate_list > span:before {
    display: inline-block;
    font-size: 18px;
    margin: 0;
    content: "★";
}

.rate_list span.on{
    color: #ffc107 !important;
}
.wishlist_value .star_score::before {top: 5px;;}
.wishlist_value .review_count::before {top: 5px;}
/* 위시리스트 추가 250703 */
.only_wishlist_box {gap: 0;}
.wishlist_value {margin-top: 0;}
.only_wishlist_box img {height: 120px;}
div.bordBottom {margin-top:12px!important;}

}



@media (max-width:480px){
    .listAll .wishlist_box {grid-template-columns: repeat(2, 1fr);}
}

@media (max-width:390px){
.summury_only .list_product_name {font-size: 1.1rem;}
.only_mo_value span{font-size: 0.8rem;}
.summury_only dl dl > dt {font-size: 0.9rem;}
.summury_only .list_product_name {margin-right: 0; margin-top: 5px;}
.only_mo_detail {flex-basis: 50%; min-height: auto;}
.summury_only .reser_infor_detail dl dl > dd {font-size: 0.9rem;}
.only_mo_justify {flex-direction: column;align-items: flex-start }
#new_mypage_wrap .standby .moretxt{ align-items: flex-start;
    gap: 5px; flex-direction: column;}
.reser_infor_detail:has(.moretxt) {padding-top: 40px;}
.summury_only .summury_onlytxt .only_mo_data{border: none; padding-left: 0;}
}


/*마이투어픽 예약내역 기본 3건 노출*/
.reservation_slider .reser_item:nth-child(n+4) {
    display: none;
}
/* 마이투어픽 +버튼*/
.qusetion_button_container {
    padding: 10px 0px 0px 0px;
    text-align: center;
}
#loadMoreReservations {
    display: none;
}

/* 인보이스 확인 팝업 추가 */
.invoice_modal_wrap {position: fixed; font-family: 'Pretendard'; text-align: center; font-size: 16px;
  bottom: 0; left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.3); 
  z-index: 10;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  display:none;
}
.invoice_confirm {width: 100%; max-width: 500px; border-radius: 10px;
    background: #FFF; padding:24px ; line-height: 128%; position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);}
.invoice_confirm h1 {font-size: 1.2rem; font-weight: 600; margin-top: 10px;}
.invoice_confirm .confirm_txt p > strong {color: #157ced}
.invoice_confirm .confirm_txt strong {font-weight: 600;}
.invoice_confirm .confirm_txt .pink_box {padding: 10px; color:#FF7D7D; margin: 12px 0; font-weight: 600; background: #FFF2F2;}
.confirm_buttonwrap2{ display: flex; gap: 10px; justify-content: center;}
.confirm_buttonwrap2 button {width: 110px; color:#BBBBBB; border: 1px solid #e0e0e0; height: 40px; background: #fff; font-size: 1.0rem; 
line-height: 36px; border-radius: 5px; cursor: pointer;}
.confirm_buttonwrap2 .button_on {color: #fff; background: #157ced; border: none;}

@media (max-width:550px){
    .invoice_modal_wrap .invoice_confirm {padding: 20px; width: calc(100% - 30px);}
}





/* 여행객 정보 상세 */
div.reser_infor_wrap > div.paxDetails div.detailInfo > dl {
    display: flex; align-items: center; gap: 10px;
}
div.reser_infor_wrap > div.paxDetails div.detailInfo:not(:first-child) {
    margin-top: 7px;
    padding-top: 7px;
    border-top: 1px dashed #dedede;
}
div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dt {width: 60px; font-size: 15px; color: #333; font-weight: bold;}
div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd {flex: 1;}
div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd p {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 5px 15px; 
    align-items: center;
    line-height:20px;
}

div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd p > span {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto; 
    white-space: nowrap;
}

div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd p > span > span {
    color: #555;
    margin-right: 5px;
    flex-shrink: 0; 
}

div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd p > span > font {
    overflow: hidden;
    text-overflow: ellipsis; 
}

@media (max-width: 600px) {
    div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd p > span {
        flex: 1 1 calc(50% - 20px);
    }
}

@media (max-width: 400px) {
    div.reser_infor_wrap > div.paxDetails div.detailInfo > dl dd p > span {
        flex: 1 1 100%;
    }
}



div.detailInfo {
    display: flex;
    align-items: center;
}
div.detailInfo > dl{flex: 1;}
div.reser_infor_wrap .btnGroup {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-direction: column;
}
div.reser_infor_wrap .btnGroup > *{
    min-width: 90px;
    text-align: center;
}
div.reser_infor_wrap .eTicketBtn,
div.reser_infor_wrap .edit-btn {
    background-color: #ffffff;
    border: 1px solid #d1e3ff;
    border-radius: 6px;
    color: #4a86ff;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}
div.reser_infor_wrap .eTicketBtn {
    background-color: #e7ffe5;
    border: 1px solid #b9f4b4;
    color: #32b826;
}
div.reser_infor_wrap .eTicketBtn > span,
div.reser_infor_wrap .edit-btn > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 16px;
}
div.reser_infor_wrap .icon-pencil {
    width: 13px;
    height: 13px;
    stroke: #4a86ff;
    margin-top: 2px;
}
div.reser_infor_wrap .edit-btn:hover {
    background-color: #f0f7ff;
    border-color: #4a86ff;
}
div.reser_infor_wrap .eTicketBtn:active,
div.reser_infor_wrap .eTicketBtn:hover {
    background-color: #78e96e;
    border: 1px solid #46da39;
    color: #fff;
}

div.reser_infor_wrap .edit-btn:active {
    background-color: #e1eeff;
    transform: translateY(1px);
}

@media (max-width: 600px) {
    div.detailInfo {
        flex-flow: wrap;
        gap: 7px;
    }
    div.detailInfo > div {
        flex: 1;
        text-align: right;
    }

    div.reser_infor_wrap .btnGroup {
        flex-direction: inherit;
        justify-content: flex-end;
    }

    div.reser_infor_wrap .btnGroup > * {        
        min-height: 36px;
        line-height: 22px;
    }
}


/* 여기서부터 여권정보 수정 레이어팝업 */
:root {
    --primary-blue: #2563eb;
    --border-color: #dce1e9;
    --text-main: #333;
    --text-sub: #666;
}

/* 배경 오버레이 (실제 모달처럼 보이기 위함) */
.paxDetailModify.modal-overlay {
    background-color: #f5f7fa;
    display: flex;
    justify-content: center;
    padding: 20px;
    max-height: 100vh;
    overflow: auto;
}

.paxDetailModify .modal-container {
    width: 100%;
    max-width: 500px;
    /* PC에서의 최대 너비 */
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* 헤더 */
.paxDetailModify .modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
}

.paxDetailModify .modal-header h2 {
    font-size: 1.1rem;
    margin: 0;
    color: var(--text-main);
}

.paxDetailModify .close-btn {
    background: none;
    border: none;
    font-size: 28px;
    color: #ccc;
    cursor: pointer;
}

/* 폼 그리드 (반응형의 핵심) */
.paxDetailModify .modal-body {
}

.paxDetailModify .form-grid {
    display: grid;
    padding: 0 24px;
    grid-template-columns: repeat(2, 1fr);
    /* 기본 2열 */
    gap: 16px;
}

.paxDetailModify .form-group.full-width {
    grid-column: span 2;
}

.paxDetailModify .form-group label {
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: var(--text-sub);
    margin-bottom: 8px;
}

.paxDetailModify input,
.paxDetailModify select {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 14px;
    color: var(--text-main);
    transition: border-color 0.2s;
}

.paxDetailModify input:focus {
    border-color: var(--primary-blue);
    outline: none;
}

.paxDetailModify .icon-calendar-left {
    position: absolute;
    left: 12px;
    top: 12px;
    font-style: normal;
}

.paxDetailModify .icon-calendar-right {
    position: absolute;
    right: 12px;
    top: 12px;
    font-style: normal;
    cursor: pointer;
}

/* 하단 버튼 */
.paxDetailModify .modal-footer {
    display: flex;
    padding: 24px;
    gap: 12px;
}

.paxDetailModify .modal-footer button {
    flex: 1;
    height: 50px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid var(--border-color);
}

.paxDetailModify .btn-cancel {
    background: #fff;
    color: var(--text-main);
}

.paxDetailModify .btn-save {
    background: var(--primary-blue);
    color: #fff;
    border: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.paxDetailModify .check-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: 1.5px solid #fff;
    border-radius: 50%;
    font-size: 11px;
}

/* 📱 모바일 반응형 (화면 너비가 480px 이하일 때) */
@media (max-width: 480px) {
    .paxDetailModify .modal-container {
        border-radius: 0;
        /* 모바일 전면일 경우 0, 아니면 유지 */
        max-width: 100%;
    }

    .paxDetailModify .form-grid {
        grid-template-columns: 1fr;
        /* 1열로 변경 */
    }

    .paxDetailModify .form-group.full-width {
        grid-column: span 1;
    }

    .paxDetailModify .modal-footer {
        flex-direction: row;
        /* 버튼 가로 나열 유지 혹은 column으로 변경 가능 */
    }
}
/* 포인트 제도 */

.point-lay {margin-bottom: 2.66rem; padding: 1rem 1.33rem; border-radius: 10px; background-color:#fff8f8;}
.point-lay h3 {margin-bottom: .26rem; font-size: 1rem;}
.point-lay p {font-size: .86rem;}
.point-lay p span {color:#FF3939;}

.mypoint-wrap {margin: 3% 0 0 0; padding: 2rem; background-color: #f0f5ff; border-radius: 1rem;}

.point-pc {display: none;}
.mypoints-wrap {margin: 2.5% 0 2.1rem 0; padding: 2rem; background-color: #f0f5ff; border-radius: 1rem;}
.mypoints-wrap .mypoints-box {padding-bottom: 1.5rem; border-bottom: 1px solid #ddd;}
.mypoints-wrap .mypoints-box p{ margin-bottom: 9px; font-size: 18px; font-weight: 600;}
.mypoints-wrap .mypoints-box .mypoints {font-size: 28px; font-weight: 700; color: #157CED;}
.mypoints-wrap .ex-vnd {padding-top: .8rem; font-size: 16px;}
.qr-banner {position:relative; margin-bottom: 2.1rem; background-color: #f0f5ff; border-radius: 1rem;}
.qr-banner .qr-tit:after {
        content: '';
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 4%;
        width: 6px;
        height: 6px;
        border-top: 2px solid #999;
        border-right: 2px solid #999;
        transform: rotate(45deg);
    }
.qr-banner .qr-tit {display: block; padding-bottom: .4rem; font-size: 1.2rem; font-weight: 600; padding: 2rem;}
.qr-banner .qr-tag {font-size: .94rem; font-weight: 400; color:#157CED;}
.qr-banner .qr-tag span {margin-right: .8rem;}
.onoff-points {display: flex; align-items: center; padding: 40px; background-color: #fff; border-radius: 10px;}
.onoff-points .on-points {flex: 1 1 0%;}
.onoff-points .on-points .pay-points {display: flex; align-items: center; justify-content: space-between; margin-bottom: 40px;}
.onoff-points .on-points .gopay-btn {width: 100%; height: 52px; background-color: #157CED; border-radius: 6px; color: #fff; font-size: 16px; transition: all 0.3s;}
.onoff-points .on-points .gopay-btn:hover {background-color: #fff; border: 1px solid #157ced; color: #157ced;}
.h-line {display: block; background-color: #ddd; width: 1px; height: 60px; margin: 0 32px;}
.gopay-points {font-size: 16px; font-weight: 400; color: #111;}
.pay-points .points-kr, .points-vnd {font-size: 20px; font-weight: 600;}


.points-info {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-bottom: 32px;}
.points-info .info-box {padding: 24px; border-radius: 10px; background-color: #f9fafb; }
.points-info .info-box .month-st {margin-bottom:32px; font-size: 16px; font-weight: 400;}
.points-info .info-box .month-point {text-align: right; font-size: 20px; font-weight: 700; color:#157ced;}
.points-info .info-box .acc-point {color: #FF3939;}

.exrate-box {display: flex; justify-content: space-between; align-items:center; margin-bottom: 16px; padding: 16px; background-color: #F8FBFF; border-radius: 6px;}
.exrate-box p {font-size: 14px;}
.exrate-box .basic-rate {display:flex; align-items:center; color: #7E58C4; font-weight: 600;}
.exrate-box .basic-rate span {font-weight: 400;}
.exrate-box .basic-rate .img-notice {display: inline-block; margin-right: 8px;}
.exrate-box .basic-date {color: #555;}

.exp-info {display: flex; align-items: center; gap:20px; margin-bottom: 56px; padding: 16px 20px; background-color: #FFFDF4;}
.exp-info .exp-tit {margin-bottom: 4px; font-size: 14px; font-weight: 600; color: #9D6700;}
.exp-info .exp-desc {font-size: 13px; font-weight: 400; color: #333;}

.point-history {display: flex; justify-content: space-between; align-items: center;}
.point-history a:after{content: ''; display: inline-block; width: 6px; height: 6px; border-top: 2px solid #999; border-right: 2px solid #999; transform: rotate(45deg); margin-left: 10px; position: relative; top: -1.5px; border-radius: 1px;}
.point-history a {font-size: 14px; color: #555;}

.history-wrap .history-list li {padding: 32px 24px; border-bottom: 1px solid #DFDFDF; display: block;}
.history-wrap .history-list .item {display: inline-block; padding: 4px 12px; border-radius: 4px; font-size:14px;}
.txt-desc {padding: 20px 0; border-bottom: 1px solid #DFDFDF;}
.first-line {display: flex; align-items: center; margin-bottom: 16px;}
.first-line .item {margin-right: 8px;}

/* 포인트 내역 타입별 스타일 */
ul.history-list .status.type-earn,
ul.history-list .status.type-adjust { background-color: #E5F1FF; color: #157CED; } /* 적립, 조정 (파랑 계열) */
ul.history-list .status.type-pending_earn { background-color: #FFFDE7; color: #FBC02D; } /* 적립예정 (Light Orange) */
ul.history-list .status.type-use, /* 사용 */
ul.history-list .status.type-expire, /* 소멸 */
ul.history-list .status.type-cancel, /* 취소 */ ul.history-list .status.type-refund { background-color: #FFF2F2; color: #FF3939; } /* 환불 */
ul.history-list .status.type-default { background-color: #f8f9fa; color: #343a40; } /* 기본 (White) */

/* 지역 타입별 스타일 (b1 ~ b13) */
ul.history-list .region.type-b1 { background-color: #f8d7da; color: #721c24; } /* Light Red */
ul.history-list .region.type-b2 { background-color: #fce4d4; color: #8b4513; } /* Light Orange */
ul.history-list .region.type-b3 { background-color: #d4edda; color: #155724; } /* Light Green */
ul.history-list .region.type-b4 { background-color: #cce5ff; color: #004085; } /* Light Blue */
ul.history-list .region.type-b5 { background-color: #e0cffc; color: #4b0082; } /* Light Purple */
ul.history-list .region.type-b6 { background-color: #d1ecf1; color: #0c5460; } /* Light Cyan */
ul.history-list .region.type-b7 { background-color: #fff3cd; color: #856404; } /* Light Yellow */
ul.history-list .region.type-b8 { background-color: #f8f9fa; color: #343a40; } /* White */
ul.history-list .region.type-b9 { background-color: #e2e3e5; color: #383d41; } /* Light Gray */
ul.history-list .region.type-b10 { background-color: #f0f8ff; color: #4682b4; } /* Alice Blue */
ul.history-list .region.type-b11 { background-color: #faebd7; color: #a0522d; } /* Antique White */
ul.history-list .region.type-b12 { background-color: #f5f5dc; color: #8b8878; } /* Beige */
ul.history-list .region.type-b13 { background-color: #e6e6fa; color: #483d8b; } /* Lavender */

/* 카테고리 타입별 스타일 (a1 ~ a16) */
ul.history-list .cate.type-a1 { background-color: #f0e68c; color: #8b8000; } /* Khaki */
ul.history-list .cate.type-a2 { background-color: #dda0dd; color: #800080; } /* Plum */
ul.history-list .cate.type-a3 { background-color: #ffb6c1; color: #c71585; } /* Light Pink */
ul.history-list .cate.type-a4 { background-color: #add8e6; color: #00008b; } /* Light Blue */
ul.history-list .cate.type-a5 { background-color: #90ee90; color: #006400; } /* Light Green */
ul.history-list .cate.type-a6 { background-color: #ffdead; color: #a0522d; } /* Navajo White */
ul.history-list .cate.type-a7 { background-color: #d8bfd8; color: #4b0082; } /* Thistle */
ul.history-list .cate.type-a8 { background-color: #afeeee; color: #008b8b; } /* Pale Turquoise */
ul.history-list .cate.type-a9 { background-color: #f5deb3; color: #8b4513; } /* Wheat */
ul.history-list .cate.type-a10 { background-color: #e6e6fa; color: #483d8b; } /* Lavender */
ul.history-list .cate.type-a11 { background-color: #ffefd5; color: #a0522d; } /* Papaya Whip */
ul.history-list .cate.type-a12 { background-color: #f0f8ff; color: #4682b4; } /* Alice Blue */
ul.history-list .cate.type-a13 { background-color: #fdf5e6; color: #8b4513; } /* Old Lace */
ul.history-list .cate.type-a14 { background-color: #fffafa; color: #556b2f; } /* Snow */
ul.history-list .cate.type-a15 { background-color: #f8f8ff; color: #483d8b; } /* Ghost White */
ul.history-list .cate.type-a16 { background-color: #f5fffa; color: #2f4f4f; } /* Mint Cream */
ul.history-list .badge,
ul.history-list .usage.type-offline { background-color: #e0e0e0; color: #424242; } /* 오프라인 타입 */

.txt-date {font-size: 14px; color: #555;}
.history-wrap .history-list li .history-cont .second-line {flex: 1;}
.history-cont div.second-line > .tit-point {margin-bottom: 24px; font-size: 20px;  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; word-break: break-all; width: 100%; min-width: 0;}
.history-cont > .tit-point {display: none; margin-bottom: 10px; font-size: 16px; width: 100%;}

.history-cont div.history_body {display: grid; justify-content: space-between; --align-items: center; grid-template-columns: minmax(0, 1fr) 130px; gap: 1%;}
.third-line {text-align: right;}
.third-line .txt-point {font-size: 20px; font-weight: 700;}
.third-line .txt-vnd {font-size: 14px; font-weight: 600;}
.third-line .txt-left {margin-top: 8px; font-size: 14px; font-weight: 400; color: #555;}

.vm-btn {display: flex; align-items:center; justify-content: center; margin-top: 2rem; font-size: 1.2rem; font-weight: 600;}
.vm-btn:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #999;
    border-right: 2px solid #999;
    transform: rotate(45deg);
    margin-left: 10px;
    position: relative;
    top: -1.5px;
    border-radius: 1px;
}

@media all and (min-width:320px) and (max-width:768px) {
    .point-pc {display: flex;}
    .mypoints-wrap .mypoints-box {padding-bottom: 1rem;}
    .mypoints-wrap .mypoints-box p {font-size: 1rem;}
    .mypoints-wrap .mypoints-box .mypoints {font-size: 1.6rem;}
    .mypoints-wrap {margin: 1.2rem 0; padding: 1.6rem; border-radius: .8rem;}
    .onoff-points {display:block; padding: 2rem;}
    .onoff-points .on-points .pay-points {margin-bottom: 1.6rem;}
    .h-line {margin: 2.14rem 0; height: 1px; width: 100%;}
    .gopay-points {font-size: .94rem;}
    .pay-points .points-kr {font-size: .94rem;}
    .pay-points .points-vnd {font-size: .94rem;}
    .onoff-points .on-points .gopay-btn {height: 3rem; font-size: 1rem;}
    .mypoints-wrap .ex-vnd {font-size:.94rem;}
    .qr-banner {margin-bottom: 1.2rem;}
    .qr-banner:after {
        content: '';
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 4%;
        width: 6px;
        height: 6px;
        border-top: 2px solid #999;
        border-right: 2px solid #999;
        transform: rotate(45deg);
    }
    .qr-banner .qr-tit {font-size: .94rem; padding: 1.6rem; }
    .qr-banner .qr-tag {font-size: .8rem;}

    .points-info {display: flex; flex-direction: column; gap: .66rem; margin-bottom: 1.2rem;}
    .points-info .info-box {display: flex; justify-content: space-between; align-items: center; padding: .8rem 1.6rem; border-radius: 5px;}
    .points-info .info-box .month-st {margin: 0; font-size: .87rem;}
    .points-info .info-box .month-point {font-size: 1rem;}

    .exrate-box {padding: .8rem 1rem; margin-bottom: 1.2rem;}
    .exrate-box p {font-size: .8rem; letter-spacing: -1;}
    .exp-info {margin-bottom: 1.2rem; padding: .8rem 1rem;  gap: 1rem;}
    .exp-info .exp-tit {font-size: .86rem;}
    .exp-info .exp-desc {font-size: .8rem;}

    .point-history a {font-size: .94rem;}
    .txt-desc {font-size: .94rem;}

    .history-wrap .history-list li {padding: 1.6rem 0rem;}
    .tit-point {font-size: 1rem; margin-bottom: 1.6rem;}
    .first-line {margin-bottom: 1rem;}
    .first-line .item {margin-right: .6rem;}
    .history-wrap .history-list .item {padding: .27rem .67rem; font-size: .8rem;}

    .history-cont div.second-line  > .tit-point {display: none;}
    .history-cont .third-line .txt-point {font-size: 1rem;}
    .history-cont .third-line .txt-vnd {font-size: .94rem;}
    .history-cont .third-line .txt-left {font-size: .94rem;}

    .vm-btn {display: block; margin-top: 2rem; background-color: #f5f5f5; width: 100%; text-align: center; font-size: 1rem; font-weight: 600; padding: 1rem 0; border-radius: .4rem;}
}

@media (max-width: 768px) {
    .history-cont .second-line {flex: 1; overflow: hidden;}
    .history-cont > .tit-point {display: block;}
}

/* QR코드 페이지 */
#new_mypage_wrap .qr-wrap {padding: 2rem 0px 3rem; background-color: #fff;}
#new_mypage_wrap .qr-wrap .qr-header .qr-tit {padding: .8rem 0; border-radius: 1rem 1rem 0 0; background-color: #0054D2;}
#new_mypage_wrap .qr-wrap .qr-header .qr-tit h2 {text-align: center; font-size: 1.34rem; font-weight:700; color: #fff;}

#new_mypage_wrap .qr-wrap .qr-header .qr-info {display: flex; justify-content: space-between; align-items: center; padding: 1.6rem 1.34rem 2.13rem; border-radius: 0 0 1rem 1rem; background-color: #0977EF;}
#new_mypage_wrap .qr-wrap .qr-header .qr-info .point-vnd {font-size: 1.6rem; font-weight: 700; color: #fff;}
#new_mypage_wrap .qr-wrap .qr-header .qr-info .point-default {font-size: 1.6rem; font-weight: 400; color: #fff;}
#new_mypage_wrap .qr-wrap .qr-header .qr-img {max-width: 19rem; margin: 2.4rem auto; text-align: center;}
#new_mypage_wrap .qr-wrap .qr-header .qr-img img {padding: .8rem; border: 1px solid #ddd; border-radius: .8rem;}

#new_mypage_wrap .qr-wrap .qr-desc {margin-bottom: 4rem; text-align: center; font-size: 1rem; font-weight: 400; color: #333;}

#new_mypage_wrap .faq-cont .faq-tit {margin-bottom: 1.6rem; font-size: 1.2rem; font-weight: 700; color:#111;}
#new_mypage_wrap .faq-cont .faq-wrap {padding: 1.34rem; background-color: #f8f8f8; border-radius: .4rem;}
#new_mypage_wrap .faq-cont .faq-wrap .faq-item {margin-bottom: 1.34rem;}
#new_mypage_wrap .faq-cont .faq-wrap .faq-item .faq-q {margin-bottom: .8rem; font-size: 1rem; font-weight:500; color:#111;}
#new_mypage_wrap .faq-cont .faq-wrap .faq-item .faq-a {padding: .8rem; border-radius: .4rem; background-color: #fff; font-size: .94rem; font-weight: 400; color: #333;}

#new_mypage_wrap .faq-cont .faq-wrap .faq-item .faq-a.warn {background-color: #ebebeb;}

/* 포인트 사용 */
.point-box {margin-top: 20px;}
.point-box .point-box-tit{padding: 20px 0 10px; border-bottom: 1px solid #000; font-size: 16px; font-weight: 600;}
.point-box .my-point {padding: 16px 0;}
.point-box .my-point p {font-size: 16px;}
.point-box .my-point span {display: inline-block; margin-left: 4px; color: #ed4157; font-weight: 600;}
.point-box .pay-point {display: flex;}
.point-box .pay-point input {margin-right: 4px; flex: 1; text-align: right; padding: 0px 10px;}
.point-box .pay-point .point-btn {padding: 0 8px; border: 1px solid #e6e6e6; border-radius: 3px; background-color: #fff; line-height: 32px; font-size: 14px;}
.point-box .benefit-box {margin: 16px 0 40px; padding: 16px; background-color: #fff8f8; border-radius: 4px; font-size: 15px; font-weight: 700;}
.point-box .benefit-box p {font-size: 13px; line-height: 1.4; font-weight: 400;}
