@charset "UTF-8";
/* 공통 컨테이너 */
.mypage-container {
    max-width: 1000px;
    margin: 40px auto 100px;
}
/* 회원 정보 */
#user_info_box{
	display: flex;
	gap:20px;
	justify-content: space-between;
}
#user_info_box > div{
	padding:24px;
}
/* 개인정보 */
#user_info_box .p_info{
	width:405px;
}
.p_info .p_info_group_1{
	display: flex;
	justify-content: space-between;
	gap:8px;
}
.p_info .p_info_group_1 a.modify_info_link{
	cursor: pointer;
	white-space: nowrap;
}
.p_info .p_info_group_2{
	display: flex;
	align-items: center;
	margin-top:5px;
}
.p_info .p_info_group_2 .user_classify{
	margin-left:12px;
}
.p_info .p_info_name{
	color:var(--Color-Grey-900);
}

.p_info .p_info_school{
	color:var(--Color-Grey-800);
}

/* 이용권 정보 */
#user_info_box .s_info{
	width:575px;
}
.s_info .s_info_group_1{
	display: flex;
	justify-content: space-between;
}
.s_info .s_info_group_2{
	display: flex;
	align-items: center;
	gap:24px;
}
.s_info_group_2 div{
	display: flex;
	align-items: center;
	font-size:16px;
	font-weight: 500;
}
.s_info_group_2 div > span:first-of-type{
	color: var(--Color-Grey-900);
}
.s_info_group_2 div .count_ticket{
	color:var(--Color-Primary-600);
	padding:0 4px 0 8px;
}
.s_info_group_2 div > span.sort_text{
	color:var(--Color-Grey-700);
}
/*마이페이지 메뉴*/
#mypage_menu{
	display: flex;
	flex-direction: column;
	gap: 0;
	margin-top: 20px;
	border-bottom: 1px solid var(--Color-Grey-400);
}
#mypage_menu .tab_style1{
	border-bottom: 0;
}
#mypage_menu .mypage_notice_list{
	width: 100%;
	margin-bottom: 16px;
	justify-content: flex-end;
}
#mypage_menu .mypage_menu_list{
	width: 100%;
}

/* 결제 내역 테이블 */
.payment_history {
    margin-top: 40px;
}

#paymentTable thead th{
	color:var(--Color-Grey-800);
	font-weight: 600;
	padding:20px 24px;
}
#paymentTable tbody td{
	color:var(--Color-Grey-800);
}

#paymentTable tbody td .cancelpay_btn{
	cursor: pointer;
}

/* 검색된 내용 없을 경우 내용*/
.not_found_content{
	height:360px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.not_found_content .text_wrap{
	margin:24px 0;
	text-align: center;
}
.not_found_content .sub_text{
	margin-top:16px;
}
.not_found_content .btn_wrap a{
	cursor: pointer;
}
.payment_history .title_wrap{
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
}
.payment_history .title_wrap .button_group{
	display: flex;
	justify-content: flex-end;
	gap:12px;
}
/* 마이페이지 fill 아이콘 색상 수정 */ 
.tab_style1 li.connect_ticket svg{
	stroke:none;
	fill:var(--Color-Grey-700);
}
.tab_style1 li.connect_ticket.on svg{
	stroke:none;
	fill:var(--Color-Grey-900);
}



/* 결제취소 모달 */
.cancelpay_content{
	width:352px;
}
.cancelpay_content .warning_text{
	color:var(--Color-Error-600);
}

/* 학급수 클릭 링크 */
#paymentTable tbody td .ord_detail_link{
	cursor: pointer;
	text-decoration: underline;
}

/* ===== 구매 상세 모달 ===== */
.ord_detail_wrap{
	width:100%;
	text-align: left;
}
.ord_detail_tb{
	width:100%;
	border:1px solid var(--Color-Grey-300);
	border-radius:8px;
	border-collapse: separate;
	border-spacing:0;
	overflow: hidden;
	margin-bottom:28px;
}
.ord_detail_tb th,
.ord_detail_tb td{
	padding:12px 16px;
	font-size:14px;
	line-height:1.4;
	vertical-align: middle;
	border-bottom:1px solid var(--Color-Grey-200);
	border-right:1px solid var(--Color-Grey-200);
	word-break: break-all;
}
.ord_detail_tb tr:last-child th,
.ord_detail_tb tr:last-child td{
	border-bottom:0;
}
.ord_detail_tb td:last-child{
	border-right:0;
}
.ord_detail_tb th{
	background:var(--Color-Grey-100);
	color:var(--Color-Grey-700);
	font-weight:500;
	width:13%;
	white-space: nowrap;
}
.ord_detail_tb td{
	color:var(--Color-Grey-900);
	width:37%;
}

.detail-class-section{
	margin-top:24px;
}
.detail-section-title{
	font-weight:600;
	color:var(--Color-Grey-900);
	margin-bottom:12px;
}
.detail-section-title .detail-count{
	color:var(--Color-Primary-600);
}
.detail-class-list{
	width:100%;
	border:1px solid var(--Color-Grey-300);
	border-radius:8px;
	overflow: hidden;
}
.detail-class-item{
	display:flex;
	align-items:center;
	justify-content: space-between;
	gap:10px;
	padding:12px 16px;
	border-bottom:1px solid var(--Color-Grey-200);
}
.detail-class-item:last-child{
	border-bottom:0;
}
.detail-class-item.cancelled .detail-class-name{
	color:var(--Color-Grey-600);
	text-decoration: line-through;
}
.detail-class-name{
	color:var(--Color-Grey-900);
}