.video-js .vjs-icon-placeholder{position: static;}
.video-js .vjs-big-play-button{left:50% !important;top:50% !important;margin-left: -43px;margin-top: -22px;}


img{max-width: 100%;}

.hidden-row-tr{display: none;}
.hidden-row-tr.active{display: table-row;}

.hidden-flex-row{display: none !important;}
.hidden-flex-row.active{display: flex !important;}

.univ-mark{display: inline-block;}
.univ-mark svg{vertical-align: top;}
.mark-content-wrap{display: flex;gap:10px;justify-content: center;}
.mark-content-wrap.admin-page{gap:20px;}
.mark-content-box{display: flex;gap:5px;}
.mark-content-btn{display: flex;flex-direction: column;justify-content: center;gap:5px;}

.required-overview-wrap{width:800px;margin: 0 auto;max-width:100%;}
.required-overview-table{border-collapse:collapse;width: 100%;margin-bottom: 40px;table-layout:auto;}
.required-overview-table thead th{background: #f3f7f9;padding: 10px 0;text-align: center;border: 1px solid #dee2e6;}
.required-overview-table tbody td{padding: 10px 0;text-align: center;border: 1px solid #dee2e6;}

.time-line-title-box1{font-size: 18px;font-weight: 700;color: #0c3a6d;margin-bottom: 16px;word-break:break-all;}


.time-line-empty{border: 3px solid #eaeaea;padding: 50px;text-align: center;}
.time-line-container{position:relative;margin-top: 28px;}
.time-line{position:relative;padding-left:0;}
.time-line::before{content:'';position:absolute;left:109px;top:10px;bottom:0;width:3px;background:linear-gradient(to bottom,#3498db,#2980b9);border-radius:2px;opacity:0;transform-origin:bottom;animation:lineGrow 1.5s ease-out 0.3s forwards;}
.time-line-item{position:relative;margin-bottom:40px;display:flex;align-items:flex-start;animation:fadeInUp 0.6s ease-out;}
.time-line-date{width:100px;text-align:right;padding-right:20px;flex-shrink:0;}
.time-line-date .date-main{font-size:20px;font-weight:bold;color:#2980b9;display:block;}

.time-line-item.important .time-line-date .date-main{color:#e74c3c;}
.time-line-item.gray .time-line-date .date-main{color:#999;}
.time-line-date .date-sub{color:#555;display:block;margin-top:2px;}
.time-line-marker{width:20px;height:20px;background:#3498db;border:4px solid #fff;border-radius:50%;position:relative;flex-shrink:0;box-shadow:0 0 0 3px #3498db33;transition:all 0.3s ease;top:7px}
.time-line-marker:hover{transform:scale(1.2);box-shadow:0 0 0 6px #3498db33;}
.time-line-item.important .time-line-marker{background:#e74c3c;box-shadow:0 0 0 3px #e74c3c33;}
.time-line-item.important .time-line-marker:hover{box-shadow:0 0 0 6px #e74c3c33;}

.time-line-item.gray .time-line-marker{background:#999999;box-shadow:0 0 0 3px #99999933;}
.time-line-item.gray .time-line-marker:hover{box-shadow:0 0 0 6px #99999933;}
.time-line-content{flex:1;margin-left:20px;background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,0.1);border-left:4px solid #3498db;transition:all 0.3s ease;position:relative;}
.time-line-content:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,0.2);}

.time-line-item.important .time-line-content{border-left-color:#e74c3c;}
.time-line-item.gray .time-line-content{border-left-color:#bbb;}
.time-line-content::before{content:'';position:absolute;left:-8px;top:9px;width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid #fff;}
.time-line-title{font-size:20px;font-weight:bold;color:#2c3e50;margin-bottom:10px;display:flex;align-items:center;gap:10px;}

.time-line-item .badge{background:#3498db;color:white;padding:4px 8px;border-radius:12px;font-size:13px;font-weight:normal;}

.time-line-item.important .badge{background:#e74c3c;}
.time-line-item.gray .badge{background:#999;}
.time-line-description{color:#555;line-height:1.7;display: flex;gap:10px;}
.time-line-tags{display:flex;gap:8px;flex-wrap:wrap;}
.time-line-tag{background:#ecf0f1;color:#555;padding:4px 10px;border-radius:15px;font-size:13px;transition:all 0.2s ease;}
/* .time-line-tag:hover{background:#bdc3c7;color:#2c3e50;} */


/* 연도 헤더 스타일 */
.year-header {position: relative;text-align: center;margin: 30px 0 30px;padding: 15px 0;}
.year-header h2 {padding: 0 10px;font-size: 28px;color: #3498db;background: #fff;display: inline-block;font-weight: bold;position: relative;z-index: 2;}
.year-header::before {content: '';position: absolute;left: 0%;top: 50%;/* transform: translateY(-50%); */width: 100%;height: 2px;border-top: 2px dotted #3498db;z-index: 2;}
.year-header::after {content: '';position: absolute;left: 0%;top: 50%;transform: translateY(-50%);width: 100%;height: 11px;background: #fff;z-index: 1;}

/* 반응형 디자인 */
@media (max-width: 768px) {
	.time-line-container {padding: 0 10px;}
	.time-line-item{flex-direction: column;padding-left: 15px;}
	.time-line::before {left: 9px;}
	.time-line-marker{position: absolute;left:0;top:4px;}
	.time-line-date {width: auto;text-align: left;display: flex;align-items: center;gap:10px;padding-left: 20px;margin-bottom: 10px;}
	.time-line-date .date-main {order:2;}
	.time-line-date .date-sub{margin-top: 0;order:1;}
	.time-line-content {margin-left: 15px;padding: 15px;flex: 1;width: calc(100% - 20px);font-size: 13px;}
	.time-line-title {font-size: 16px;}
	
	.required-overview-table{font-size: 14px;}
	.time-line-date .date-main{font-size: 18px;}
	.year-header h2{font-size: 22px;}
	.time-line-description{flex-direction: column;gap:5px;}
}

@keyframes fadeInUp {
	from {
		opacity: 0;transform: translateY(20px);
	}
	to {
		opacity: 1;transform: translateY(0);
	}
}

@keyframes lineGrow {
	from {
	opacity: 0;
		/* transform: scaleY(0); */
	}
	to {
	opacity: 1;
		/* transform: scaleY(1); */
	}
}
