/**
 * ===========================================================================
 * IGE 운영 배포 변경 파일 (deploy-2026-05-02-v2)
 * ---------------------------------------------------------------------------
 * 변경 종류: 수정 (overwrite)
 * 변경 위치: 반응형 관련 규칙 추가
 * 변경 내용: 반응형 정규화 — 외부 콘텐츠 이미지/테이블 화면 밖 넘침 수정
 * 운영 baseline 대비: 본 파일은 운영 baseline 존재. 패키지가 overwrite.
 * 변경 사유: 학교 콘텐츠 내 외부 이미지/테이블이 모바일에서 화면 밖으로 넘침
 * 의존성: 독립적 변경
 * 관련 문서: FOR_DEVELOPER.md §5.2
 * ===========================================================================
 */
/* css */


#school-info-temp h1,
#school-info-temp h2,
#school-info-temp h3,
#school-info-temp h4,
#school-info-temp h5,
#school-info-temp h6{
    font-size: 1.2em !important;
    font-family: 'Noto Sans KR', dotum, sans-serif;
}

#school-info-temp{
	font-family: 'Noto Sans KR', -apple-system, BlinkMacSystemFont, sans-serif;
	background-color: #f8f9fa;
	color: #333;
	line-height: 1.6;
	font-size:1.3em;
}

/* === 콘텐츠 이미지/미디어 반응형 정규화 (2026-04-04) === */
#school-info-temp img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin-bottom: 12px;
}

#school-info-temp iframe,
#school-info-temp video,
#school-info-temp embed,
#school-info-temp object {
    max-width: 100% !important;
}

/* st_text 콘텐츠 영역: 오버플로우 방지 + 테이블 반응형 */
#st_text1_cont,
#st_text2_cont,
#st_text3_cont,
#st_text4_cont,
#st_text5_cont {
    overflow: hidden;
}

#st_text1_cont *,
#st_text2_cont *,
#st_text3_cont *,
#st_text4_cont *,
#st_text5_cont * {
    max-width: 100% !important;
}

#st_text1_cont table,
#st_text2_cont table,
#st_text3_cont table,
#st_text4_cont table,
#st_text5_cont table {
    width: 100% !important;
    table-layout: auto !important;
}

#st_text1_cont .se-table-container,
#st_text2_cont .se-table-container,
#st_text1_cont .se-section-table,
#st_text2_cont .se-section-table,
#st_text1_cont [class^="se-section"],
#st_text2_cont [class^="se-section"] {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden;
}

#st_text1_cont table td,
#st_text1_cont table th {
    word-break: break-word;
    overflow-wrap: break-word;
}

#final_score_100_diff_tbl,
#final_score_100_diff{
	display:none;
}

/* User Tier Banner - ��� ���� ȸ�� ��� ǥ�� */
.user-tier-banner {
	background: linear-gradient(135deg, #1a73e8 0%, #0d47a1 100%);
	color: white;
	padding: 1rem;
	text-align: center;
/*	position: sticky;*/
	top: 115px;
	z-index: 1000;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.tier-info {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.tier-badge {
	background: rgba(255,255,255,0.2);
	padding: 0.5rem 1rem;
	border-radius: 20px;
	font-weight: bold;
}

.tier-upgrade-btn {
	background: #ffd700;
	color: #333;
	padding: 0.5rem 1.5rem;
	border: none;
	border-radius: 20px;
	font-weight: bold;
	cursor: pointer;
	transition: all 0.3s;
}

.tier-upgrade-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(255, 215, 0, 0.5);
}

.image-gallery{
	width:100%;
	height:auto;
/*	overflow:hidden;*/
	display:flex;
	flex-direction:column;
	gap:20px;
}

.image-gallery .img-bento{
	display:flex;
	flex-direction:row;
	gap:20px;
}

.image-gallery .img-bento.list-type{
	flex-wrap:wrap;	
}

.img-bento-box{
	width:60%;
	background-color:#f8f8f8;
	overflow:hidden;
	border-radius:15px;
	position:relative;
	cursor:pointer;
	transition:all 0.2s ease;
}

.img-bento-box:hover{
	transform:scale(1.005);
	box-shadow: 0px 1px 30px -3px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0px 1px 30px -3px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 1px 30px -3px rgba(0,0,0,0.1);
	transition:all 0.2s ease;
}

.img-bento-set{
	width:40%;
	display:flex;
	flex-direction:column;
	gap:20px;
}

.img-bento-set .img-bento-box{
	width:100%;
}

.img-bento-box.img-type-a{
	min-height:500px;
}

.img-bento-box.img-type-b{
	height:250px;
}


.img-bento-box.img-type-c{
	width:calc(33.39% - 14px);
	height:250px;
}

.img-bento-desc{
	width:100%;
	height:auto;
	overflow:hidden;
	background-color:rgba(0,0,0,0.6);
	box-sizing:border-box;
	padding:20px;
	position:absolute;
	left:0px;
	bottom:0px;
}

.img-bento-desc h3{
	font-size:16px;
	color:#fff;
	display:block;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
.img-bento-desc p{
	font-size:14px;
	color:#fff;
	display:block;
	line-height:20px;
	max-height:40px;
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;

}

@media (max-width: 1200px) {
	.img-bento-box.img-type-b,
	.img-bento-box.img-type-c{
		height:200px;
	}
}

@media (max-width: 780px) {
	.image-gallery .img-bento{
		flex-direction:column;
	}
	.img-bento-box,
	.img-bento-box.img-type-c,
	.img-bento-set{
		width:100%;
	}
	.img-bento-box,
	.img-bento-box.img-type-b,
	.img-bento-box.img-type-c{
		height:400px;
		min-height:400px;
	}
}

@media (max-width: 520px) {
	.img-bento-box,
	.img-bento-box.img-type-b,
	.img-bento-box.img-type-c{
		height:350px;
		min-height:350px !important;
	}
}

@media (max-width: 460px) {
	.img-bento-box,
	.img-bento-box.img-type-b,
	.img-bento-box.img-type-c{
		height:300px;
		min-height:300px !important;
	}
	#img-modal-yt-frame{
		height:300px;
	}
}

.img-type-mov:before{
	content:'';
	width:100px;
	height:68px;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	background-image:url(/school/img/yt_btn_img.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}

/* ---- img modal ---- */

.gall-modal{
	z-index:1100;
	position:fixed;
	top:100px;
	left:50%;
	transform:translateX(-50%);
}

.gall-modal .gall-modal-inner{
	width:100%;
	height:auto;
	overfloW:hidden;
	box-sizing:border-box;
	display:flex;
	flex-direction:column;
	gap:20px;
	padding:30px;
}

.gall-modal .gall-modal-inner .gall-modal-top{
	width:100%;
	height:auto;
	overflow:hidden;
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}

.gall-modal .gall-modal-inner .gall-modal-top .gall-modal-title{
	display:flex;
	flex-direction:column;
	gap:5px;
	width:calc(100% - 40px);
}

.gall-modal .gall-modal-inner .gall-modal-top .gall-modal-title h2{
	font-size:20px;
	color:#fff;
}

.gall-modal .gall-modal-inner .gall-modal-top .gall-modal-title p{
	font-size:14px;
	line-height:18px;
	color:#fff;
	opacity:0.7;
}

.gall-modal .gall-modal-inner .gall-modal-top button{
	display: inline-block;
    font-size: 12px;
    color: #fff;
    line-height: 14px;
    padding: 24px 5px 5px 5px;
    background-image: url(/theme/ige_2025/img/icon_close_w.svg);
    background-position: center top;
    background-size: 18px auto;
    background-repeat: no-repeat;
    background-color: transparent;
    border: none;
}

.gall-modal .gall-modal-inner .gall-modal-img{
	width:100%;
	max-width:800px;
	min-width:600px;
	box-sizing:border-box;
}

@media (max-width: 800px) {
	.gall-modal{
		width: 100%;	
		top:20px;
/*		height:calc(100vh - 40px);*/
/*		overflow:auto;*/
/*		overflow-y:auto;*/
/*		overflow-x:hidden;*/
	}
	.gall-modal .gall-modal-inner .gall-modal-img{
		min-width:100%;
	}	
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-area img{
	max-width:100%;	
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list{
	width:100%;
	height:auto;
	overflow:auto;
	overflow-x:auto;
	overflow-y:hidden;
	white-space: nowrap;
}


/* ��ũ�ѹ� ��ü ���� */
.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list::-webkit-scrollbar {
  height: 8px; /* ���� ��ũ�ѹ� ���� */
}

/* ��ũ�ѹ� Ʈ�� (���) */
.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list::-webkit-scrollbar-track {
  background: rgba(46,46,46,0.7);
  border-radius: 5px;
}

/* ��ũ�ѹ� �ڵ� (�����̴� �κ�) */
.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list::-webkit-scrollbar-thumb {
  background: #353535;
  border-radius: 5px;
}

/* ��ũ�ѹ� hover �� ���� ���� */
.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list::-webkit-scrollbar-thumb:hover {
  background: #666;
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list .img-item-list{
	display:inline-flex;
	gap:20px;
	box-sizing:border-box;
	padding:20px 0;
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list .img-item-list .img-bento-box{
	width:240px;
	height:150px;
	min-height:150px;
	flex-shrink: 0; 
	border:2px solid rgba(46,46,46,0.7);
	min-height:0 !important;
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list .img-item-list .img-bento-box .img-bento-desc{
	padding:15px 10px;
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list .img-item-list .img-bento-box.img-type-mov:before{
	width: 60px;
    height: 42px;
}

.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list .img-item-list .img-bento-box:hover,
.gall-modal .gall-modal-inner .gall-modal-img .gall-modal-img-list .img-item-list .img-bento-box.on{
	border-color:#fff;
}



/* ---- img modal ---- */

/*  */
.skeleton {
	display: inline-block;
	min-width: 200px;
	width:100%;
	max-width:400px;
	height: 16px;
	border-radius: 4px;
	background: #f8f8f8;
	position: relative;
	overflow: hidden;
	text-indent:-9999px;
	margin:0 auto;
}

.skeleton::after {
	content: "";
	position: absolute;
	top: 0;
	left: -100%;
	height: 100%;
	width: 100%;
	background: linear-gradient(to right, transparent 0%, rgba(200,200,200,0.2) 50%, transparent 100%);
	animation: shimmer 1.5s infinite;
}

.skeleton.wt{
	background: rgba(255,255,255,0.1);
}

.skeleton.wt:after{
	background: linear-gradient(to right, transparent 0%, rgba(255,255,255,0.2) 50%, transparent 100%);	
}

@keyframes shimmer {
	100% {
		left: 100%;
	}
}

.application-status{
	background: #f8f9fa; 
	border-radius: 10px; 
	padding: 20px; 
	margin-bottom: 20px;
}

.application-status h4{
	color: #2c5aa0; 
	margin-bottom: 15px;
}

.application-status p{
	font-size: 0.9rem; 
	color: #666; 
	margin-bottom: 15px;
}

.application-status .status-item{
	display: flex; 
	justify-content:space-between;
	gap:5px;
	padding: 10px 0; 
	border-bottom: 1px solid #e9ecef;
	align-items: center;
}

.application-status .status-term{
	display:flex;
	gap:5px;
	flex-direction:column;
}

.application-status .status-term .sch-type{
	color: #2c5aa0;
}

.application-status .status-badge-box{
	display:flex;
	flex-direction: column;
    align-items: flex-end;
}

.application-status .status-badge-box p{
	font-size: 0.8rem; color: #666; margin: 5px 0 0 0;
}

span.status-badge{
	background: #2c5aa0; 
	color: white; 
	padding: 5px 15px; 
	border-radius: 20px; 
	font-size: 0.85rem; 
	font-weight: 600;
}

span.status-badge.app{
	background: #dc3545; 
}

span.status-badge.close{
	background: #28a745; 
}

span.status-badge.ige{
	background: #ffc107; 
	color:#000;
}

.fair-info{
	background: #e3f2fd; 
	padding: 15px; 
	border-radius: 10px; 
	margin-top: 15px;
	display:flex;
	flex-direction:column;
	gap:10px;
}

.fair-info p{
	color: #1976d2; 
	font-size: 0.9rem; 
	line-height: 1.6;
}

.fair-info p{
	color: #1976d2; 
	font-size: 0.9rem; 
	line-height: 1.6;
}

.fair-info .school-btn{
	width: 100%;
}


.ranking-area{
	display: grid; 
	grid-template-columns: 1fr 1fr; 
	gap: 25px; 
	margin-bottom: 30px;
}

.favorite-area{
	text-align: center; 
	margin-bottom: 30px;
}

.favorite-area button{
	background: #f0f7ff; 
	border: 2px solid #2c5aa0; 
	padding: 10px 25px; 
	border-radius: 25px; 
	cursor: pointer; 
	font-size: 1rem; 
	color: #2c5aa0; 
	display: inline-flex; 
	align-items: center; 
	gap: 10px; 
	transition: all 0.3s;
}

.favorite-area button .fav-icon{
	font-size: 1.2rem;
}

.favorite-area button.on{
	background-color:#2c5aa0;
	color:#fff;
}

.favorite-area button.on .fav-icon{
	color: #ffd700; 
}

.favorite-area.ele button{
	background: #e8f5e8; 
	border: 2px solid #4CAF50;  
	color: #4CAF50; 
}

.favorite-area.ele button.on{
	background:#4CAF50;
	color:#fff;
}

.favorite-area.cta-buttons.ele button{
    background: white;
    color: #4CAF50;
    padding: 10px 25px;
    font-size: 1.1rem;
	border-radius: 8px;
	font-weight:600;
}

.favorite-area.cta-buttons.ele button.on{
	background:#4CAF50;
	color:#fff;
	border-color:#fff;
	padding: 10px 25px;
}

.favorite-area.cta-buttons.ele.on button{
    background: white;
    color: #003366;
    padding: 10px 25px;
    font-size: 1.1rem;
	border-radius: 8px;
	font-weight:600;
	border-color:#003366;
}

.favorite-area.cta-buttons.ele.on button.on{
	background:#003366;
	color:#fff;
	border-color:#fff;
	padding: 10px 25px;
}

.prgm-ready{
    background: #f8f9fa;
    padding: 15px;
    border-radius: 10px;	
}


.pub-sch-program-pop{
	width:90%;
	height:90%;
	background-color:#fff;
	box-sizing:border-box;
/*	padding:30px;*/
	position:fixed;
	z-index:1100;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	display:none;
	overflow:auto;
	overflow-y:auto;
	overflow-x:hidden;
	max-width:1300px;
}

.pub-sch-program-pop.on{
	display:block;
}

@media (max-width: 1280px) {
	.pub-sch-program-pop{
		height:95%;
	}	
}

.act-btn{
	background:none;
	border:none;
	text-align:left;
	display:flex;
	justify-content: space-between;
	width: 100%;
}


.lock-flag{
	font-size: 1.8rem; 
	font-weight: bold; 
	color: #4CAF50;
}

.lock-flag .lock-flag-btn{
	background: #ffc107; 
	color: #000; 
	padding: 10px 20px; 
	border-radius: 20px; 
	font-size: 0.85rem; 
	font-weight: 600;
	border:1px solid #222;
	margin-top:-10px;
}

.going-flag-btn{
	background: #17a2b8; 
	border:1px solid #222;	
	color: #fff; 
	padding: 5px 12px; 
	border-radius: 20px; 
	font-size: 0.85rem; 
	font-weight: 600;
}

.program-link{
	width: fit-content;
	margin-top:10px;
}

#ige_rank{
	display:none;
}


.info-table td{
	padding:15px 10px !important;
}

.tbl_rank span{
	font-size:14px;
	margin-left:5px;
}

#non-ell{
	display:none;
}

.info-table-area{
	width:auto;
	height:auto;
	overflow:hidden;
	box-sizing:border-box;
	padding:20px;
	border-radius:20px;
	background-color:#e3edf7;
}

.info-table-area b{
	color:#17a2b8;
}

.dem_ratio ul{
	display:flex;
	flex-direction:column;
	gap:10px;
}

.dem_ratio ul li{
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	align-items:center;
}

.dem_ratio ul li span{
	display:inline-block;
	box-sizing:border-box;
	line-height:30px;
	padding-left:40px;
	position:relative;
}

.dem_ratio ul li span:before{
	content:"";
	width:24px;
	height:24px;
	position:absolute;
	left:3px;
	top:3px;
	border-radius:50%;
	background-color:#222;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
}

.dem_ratio ul li span.chinese:before{ background-image:url(/school/img/flag_chinese.png); }
.dem_ratio ul li span.west_asian:before{ background-image:url(/school/img/flag_west_asian.png); }
.dem_ratio ul li span.south_asian:before{ background-image:url(/school/img/flag_south_asian.png); }
.dem_ratio ul li span.korean:before{ background-image:url(/school/img/flag_korean.png); }
.dem_ratio ul li span.japanese:before{ background-image:url(/school/img/flag_japanese.png); }
.dem_ratio ul li span.filipino:before{ background-image:url(/school/img/flag_filipino.png); }




.mem-action-pop{
	width:90%;
	max-width:600px;
	height:auto;
	box-sizing:border-box;
	background-color:#fff;
	position:fixed;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	z-index:1100;
	padding:30px;
	border-radius:20px;
	display:none;
	flex-direction:column;
	gap:20px;
}

.mem-action-pop.on{
	display:flex;
}

.mem-action-title{
	width:100%;
	height:auto;
	overflow:hidden;
	display:flex;
	flex-direction:row;
	justify-content:space-between;
    align-items: center;
}

.mem-action-title h3{
	font-weight: 600;
    font-size: 1.05rem;
    color: #333;
}

.mem-action-title button.cloase-pop-btn{
	background: #28a745 !important;
    color: white;
    border-color: #28a745;
	width: 35px;
    height: 35px;
    border: none;
    background: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    cursor: pointer;
    transition: all 0.3s;
}

.mem-action-body{
	width:100%;
	height:auto;
	overflow:hidden;
	box-sizing:border-box;
	display:flex;
	flex-direction:column;	
	gap:30px;
}

.mem-action-body .point-area-title{

}

.mem-action-body .point-area-title p{
	font-size:18px;
	font-weight:600;
	margin-bottom:10px;
}

.mem-action-body .point-area-title p.mem-txt{
	font-size:17px;
	box-sizing:border-box;
	padding:20px;
	background-color:#f8f8f8;
	border-radius:20px;
}

.mem-action-body .point-area-title p.mem-txt span{
	color:#28a745;
}

.mem-action-body .point-desc{
	width:100%;
	height:auto;
	overflow:hidden;
	box-sizing:border-box;
	padding:20px;
	background:#f8f8f8;
	border-radius:20px;
	display:flex;
	flex-direction:column;	
	gap:10px	
}

.mem-action-body .point-desc ul{
	display:flex;
	flex-direction:row;	
	justify-content:space-between;
	align-items:center;	
}

.mem-action-body .point-desc ul li{
	box-sizing:border-box;
/*	padding-left:15px;*/
	position:relative;
	display:flex;
	flex-direction:column;
	gap:5px;
/*	justify-content:center;*/
	align-items:baseline;
	padding:10px 15px;
	border-radius:15px;
}

.mem-action-body .point-desc ul li.paid{
	background-color:#ffc107;
}

.mem-action-body .point-desc ul li.goin{
	background-color:#17a2b8;
}

.mem-action-body .point-desc ul li.goin span,
.mem-action-body .point-desc ul li.goin p{
	color:#fff;
}


.mem-action-body .point-desc ul li span{
	font-size:14px;
	font-weight:600;
}

.mem-action-body .point-desc ul li p{
	font-size:14px;
}

/*.mem-action-body .point-desc ul li:before{*/
/*	content:"";*/
/*	width:4px;*/
/*	height:4px;*/
/*	border-radius:50%;*/
/*	background-color:#222;*/
/*	position:absolute;*/
/*	left:0px;*/
/*	top:9px;*/
/*}*/

.mem-action-btm{
	width:100%;
	height:auto;
	overflow:hidden;
	box-sizing:border-box;
	display:flex;
	flex-direction:row;
	justify-content:center;
	align-items:center;
	gap:10px;
    align-items: center;
	position:relative;
	padding:20px 0px 0px 0px;
	border-top:1px solid #eee;
}

.mem-action-btm.between{
	justify-content:space-between;
}

.mem-action-btm button{
    padding: 12px 25px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s;
    cursor: pointer;
    border: none;
    font-size: 14px;
	border:1px solid #28a745;
	color:#28a745;
	background:none;
}

.mem-action-btm .view-app-btn{
/*    position:absolute;*/
/*	top:50%;*/
/*	left:50%;*/
/*	transform:translate(-50%,-50%);*/
}

.mem-action-btm .review-app-btn{
    font-size: 0.8rem;
	background-color:#fff;
}

.mem-action-btm .review-app-btn:hover{
    color:#222;
	background-color:#fff;
	text-decoration:underline;
}

.mem-action-btm button:hover{
	background: #28a745;
    color: white;
}

.point-area{
	display:flex;
	gap:20px;
}

.go-app-btn {border: 1px solid #222 !important; background: #ffc107 !important; color:#222 !important;}

/*
background: #e8f5e8;
color: #2e7d32;
background: #4CAF50;
font-size: 0.9rem;
line-height: 1.6;


*/

.point-box{
	width:calc(50% - 10px);
	box-sizing:border-box;
	padding:0 20px;
	border-radius:20px;
	background: #fff;
	display:flex;
	flex-direction:column;
	gap:10px;
}

.point-box p{
	font-size: 0.9rem;
	line-height: 1.6;
	color: #222;
}

.point-box span{
	display:inline-block;
	box-sizing:border-box;
	padding:10px;
	border-radius:10px;
	color:#fff;
	background: #28a745;
	font-size: 0.9rem;
	line-height: 1.6;	
	text-align:center;
}

.point-box span.paid{
	color:#222;
	background: #ffc107;
	border:1px solid #222;
}

/*.point-box.right{*/
/*	background: #fff;*/
/*	padding:20px 20px 0px 20px;*/
/*}*/
/**/

.point-box.right div{
	display:flex;
	flex-direction:row;
	gap:10px;
	width:100%;
	flex-wrap:wrap;
}

.point-box.right div:first-child{
	border-bottom:1px solid #eee;
}

.point-box.right .info{
	width:100%;
	text-align:right;
	font-size:12px;
	opacity: 0.7;
    margin-top: -20px;	
}

.point-box.right span{
	color:#2e7d32;
	background: #e8f5e8;
	display: flex;
    flex: 1 0 auto;
    justify-content: end;
    align-items: center;
    gap: 5px;	
}

.point-box.right.paid span{
	background: #fff;
}

.point-box span b.token{
	font-size:24px;
}

.point-box span b{
	font-size:16px;
	display:flex;
	gap:5px;
	align-items:center;
    justify-content: center;
	line-height:20px;
	padding:13px 0;
}

.point-box span b i{
	display:inline-block;
	width:26px;
	height:26px;
/*	background-color:#fff;*/
	background-image:url('/school/img/account_circle.svg');
	background-repeat:no-repeat;
	background-position:center center;
	background-size:auto 24px;
}

.pop-container-top{
	display:flex;
	justify-content:space-between;
	align-items:baseline;
	margin-bottom:20px;
}
   
@media (max-width: 1080px) {
	.pop-container-top{
		flex-direction: column;
	}
}

.pop-container-top .pop-close-btn a{
	display:block;
	width:40px;
	height:40px;
	position:relative;
}

.pop-container-top .pop-close-btn a:before,
.pop-container-top .pop-close-btn a:after{
	content: '';
	position: absolute;
	top: 50%; 
	left: 50%; 
	width: 2px;
	height: 28px; 
	background-color: #fff;
	transform: translate(-50%, -50%) rotate(45deg); 
}

.pop-container-top .pop-close-btn a:after{
	transform: translate(-50%, -50%) rotate(-45deg);
}


.cta-pop-btm{
	display:flex;
	gap:10px;
	justify-content:center;
}

.loading-box{
	width:100%;
	height:100%;
	position:fixed;
	background-color:#fff;
	z-index:2000;
	display:flex;
	justify-content:center;
	align-items:center;
	top:0px;
	left:0px;
}

.loader {
	width: 48px;
	height: 48px;
	border: 3px solid #6666;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	animation: rotation 1s linear infinite;
} 
.loader::after {
	content: '';  
	box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 56px;
	height: 56px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-bottom-color: #17a2b8;
}

@keyframes rotation {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
} 


.viewMap{
	position:fixed;
	top:50%;
	left:50%;
	width:80%;
	height:80% !important;
	transform:translate(-50%, -50%);
	z-index:1100;
	gap:0px !important;
	transition:all 0.5s ease;
}

.viewMap iframe{
	height:100% !important;
	transition:all 0.5s ease;
}

.viewMap .map-btn-area{
	background-color:#fff;
	box-sizing:border-box;
	padding:20px;
}

.map-btn-area{
	width:100%;
	height:auto;
	overflow:hidden;
	display:flex;
	justify-content:space-between;
}

.map-btn-box{
	width:100%;
	display:flex;
	gap:10px;
	flex-wrap:wrap;
}

.map-btn-area button{
	white-space: nowrap;
	font-size:12px;
	line-height:20px;
	padding:5px 10px;
	margin:0;
	display:flex;
	align-items:center;
	gap:5px;
}

.map-btn-area button span{
	font-size:20px;
}

.map-btn-area button span.material-symbols-outlined{
	width:20px;
	height:20px;
}

.map-btn-area button.on{
	background-color:#4CAF50;
	color:#fff;
}

.viewMap .sch-btn.map-btn.zoom{ 
	background-color:#4CAF50;
	color:#fff;	
}

#review{
	display:none;
}

.rv-list{
	display:flex;
	flex-direction:column;
	gap:20px;
	padding:20px 0;
}

.rv-list .rv-box{
	display:flex;
	gap:20px;
	cursor:pointer;
	align-items:center;
	box-sizing:border-box;
	padding:20px;
	background-color:#fff;
	border-radius:15px;
	border:1px solid #eee;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
	transition:all 0.2s ease;
}

.rv-list .rv-box:not(.noauth):hover{
	background-color:rgba(207, 226, 255, 0.2);
	transition:all 0.2s ease;	
	margin-top:-3px;
}

.rv-list .rv-box.noauth{
	cursor:default;
	filter: blur(1px);opacity: 0.5;pointer-events: none;user-select: none;	
}

.rv-list .rv-box .rv-box-img{
	width:100px;
	height:100px;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center, center;
	border-radius:20px;
	position:relative;
}

.rv-list .rv-box .rv-box-img span.auth{
	display:inline-block;
	width:40px;
	height:40px;
	background-image:url('/theme/ige_2025/img/ige_confirmed_3.png');
	background-position:center, center;
	background-size:cover;
	background-repeat:no-repeat;
	position:absolute;
	left:5px;
	top:5px;
	z-index:1;
}

.rv-list .rv-box .rv-box-text{
	display:flex;
	flex-direction:column;
	gap:10px;
}

.rv-list .rv-box .rv-box-text h2{
	font-size: 1.2em !important;
    font-family: 'Noto Sans KR', dotum, sans-serif;
}

.rv-list .rv-box .rv-box-text p{

}


#ell_medianband_desc, #intl_medianband_card{
	display:none !important;
}

.back-info{
	box-sizing: border-box;
    padding: 10px;
    border-radius: 10px;
    text-align: center;
    font-size: 15px;
    margin-top: 25px;
    color: #fff;
    font-weight: 500;
    background: #28a745;
}

.point-life{
	text-align:left;
	box-sizing:border-box;
	padding:0 20px;
	width:calc(100% - 20px);
}

.point-life p{
	font-size: 0.95rem; 
	font-weight: 400; 
	margin-top:20px;
	padding-bottom:10px;
	line-height: 30px;
}

.point-life p b{
	background: #17a2b8;
    border: 1px solid #222;
    color: #fff;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;	
}

.info-table tr:last-child {
	border-bottom: none;
}

/* Segment tabs (type 파라미터 없이 접속 시 탭 표시용) */
.seg-tabs { margin: 20px 0; }
.seg-tab-buttons { display: flex; gap: 8px; margin-bottom: 16px; }
.seg-tab-btn {
    padding: 8px 20px; border: 1px solid #ccc; border-radius: 6px;
    background: #f8f8f8; cursor: pointer; font-size: 14px; transition: all .2s;
}
.seg-tab-btn.active { background: #0d7680; color: #fff; border-color: #0d7680; }
.seg-tab-btn:hover:not(.active) { background: #eee; }
.seg-tab-desc { color: #555; line-height: 1.8; margin: 10px 0; }
.seg-tab-features { padding-left: 20px; line-height: 2; }
.seg-tab-notes { margin-top: 12px; padding: 12px; background: #fff8e1; border-radius: 6px; }
.seg-tab-notes strong { color: #e57a00; }
.seg-free-content { margin-top: 20px; line-height: 1.8; }
.seg-free-content img { max-width: 100%; height: auto; }
}