
/* 메인 슬라이드 */
	.banner-container-custom { width: 100%; max-width: 1100px; height: 200px; margin-top: 20px; position: relative; overflow: hidden; border-radius: 12px; box-sizing: border-box; border:solid 1px gray; }
	@media screen and (max-width: 800px) { .banner-container-custom { border-radius: 0px; } }
	.banner-slide-custom { width: calc(1100px * 2); height: 200px; display: flex; transition: transform 0.5s ease-in-out; }
	.banner-custom { width: 100%; max-width: 1100px; height: 200px; border-radius: 12px; background-repeat: no-repeat; background-position: center; background-size: 100%; position: relative; overflow: hidden; box-sizing: border-box; }
	@media screen and (max-width: 800px) { .banner-custom { border-radius: 0px; } }
	.banner-custom.active {}
	.banner-content-custom { opacity: 1; position: absolute; top: 15px; left: 20px; list-style-type: none; padding: 0 20px; margin: 0; }
	.banner-content-custom2 { opacity: 1; position: absolute; top: 15px; right: 20px; list-style-type: none; padding: 0; margin: 0; }
	@media screen and (max-width: 1100px) { .banner-content-custom2 { right: auto; left: 200px; } }
	@media screen and (max-width: 900px) { .banner-content-custom2 { right: auto; left: 100px; } }
	@media screen and (max-width: 800px) { .banner-content-custom2 { right: auto; left: 20px; } }

	.banner-title-custom { opacity: 1; padding: 10px; border-radiusx: 12px; colorx: #438AA6; 
		font-size: 30px; font-weightx: bold; margin-top: 10px; margin-bottom: 10px; 
		font-family:GongGothicMedium; text-shadowx: 1px 1px 1px #cdcdcd; }

	.banner-text-custom { clear: both; opacity: 0.7; display: inline-block; padding: 5px 10px; border-radius: 12px; margin: 0 10px; background: #f0f0fa; color: gray; font-size: 1.3em; line-height: 1.5; text-shadowx: 1px 1px 1px #cdcdcd; }
	.banner-buttons-custom { display: flex; margin-top: 15px; }
	.banner-buttons-custom A { margin: 10px 10px; text-decoration: none !important; }

	.banner-nav-custom { display: flex; position: absolute; right: 20px; bottom: 10px; }
	.banner-nav-custom2 { display: flex; position: absolute; right: 20px; top: 20px; }
	.banner-nav-custom2 A { margin: 0 10px; text-decoration: none !important; }
	.banner-nav-custom3 { display: flex; position: absolute; right: 300px; top: 80px; }

	.nav-dot-custom { width: 20px; height: 20px; border-radius: 50%; margin: 0 3px; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 14px; color: gray; background-color: #8CBE28; }
	.nav-dot-custom.active { color: black; }
	.highlighted-text { color: #fff; font-size: 1.4em; font-weight: bold; vertical-align: -3px; }



/* 신규 업로드,역주행,핫이슈,흔치않은 + 로그인 */
	.tag-container { display:flex; gap:20px; width:100%; max-width:1100px; margin-top:40px; position:relative; }
	.tagTitleMain { padding:10; width:140px; height:30px; text-align:left; border-bottom:0px; font-weight:bold; background:#efefef;
			display: flex; align-items: center; justify-content: center;
			border:solid 1px #B9B9B9; border-top-left-radius: 10px; border-top-right-radius: 10px;
			margin:0; font-size:inherit;
			}
	.tagTitleMain A { font-size:18px !important; text-decoration:none !important; color:gray !important; }
	.tagTitleMain A:hover { color:red  !important; }
	.tagBoxMain { width:140px; height:113; text-align:left; padding:10; clear:both; background:#F9FBF9; line-height:1.8;
			border:solid 1px #B9B9B9; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px;
			white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
			}
	.tagBoxMain a { font-size:16px !important; font-family:맑은 고딕; }
	.tagBoxMain img { padding:5 5 5 0; vertical-align:-7px }
	.tagBoxMain ul { list-style: none; padding:0; margin:0; }

	/* 순위 리스트 (이미지 없이 CSS 숫자) */
	.tagBoxMain .rank-list { list-style:none; padding:0; margin:0; counter-reset:rank; text-align:left; }
	.tagBoxMain .rank-list li { counter-increment:rank; padding:0; }
	.tagBoxMain .rank-list li::before {
		content: counter(rank);
		display:inline-block;
		width:18px; height:18px;
		margin-right:6px;
		background:#7FAC24; color:#fff;
		border-radius:3px;
		text-align:center;
		font-size:12px; line-height:18px;
		vertical-align:middle;
	}

	@media screen and (max-width: 1100px) {	/* 가운데정렬하기위해*/
		.tag-container {
		    max-width: none !important;
		    margin: 0 auto;
		    float: none !important;
		    xdisplay: block;
		    background: none !important;
		    display: flex; align-items: center; justify-content: center;
		    margin-top:40px;
		}
		}


/* 구글광고 + 인기독후감 */
	.inkiDocList .rank-list { list-style:none; padding:0; margin:0; counter-reset:rank; }
	.inkiDocList .rank-list li { counter-increment:rank; padding:0px 0; }
	.inkiDocList .rank-list li::before {
		content: counter(rank);
		display:inline-block; width:20px; height:20px; margin-right:8px;
		background:#7FAC24; color:#fff; border-radius:3px;
		text-align:center; font-size:13px; line-height:20px; vertical-align:middle;
	}
	.inkiDocTitle { margin:0; font-size:inherit; }


/* 공지/헬프 텍스트 크기 확대 */

	.textColorChange {
		animation: colorChange 2s infinite alternate;
		}
	@keyframes colorChange {
		from { color:black; } to { color: red; }
		}

	.notice { font-size:16px !important; line-height:26px !important; }
	.notice font { font-size:14px !important; }



/* PPT */
	.ppt-wrap { max-width:1100px; margin:0 auto; background:#efefef; padding:15px 10px; border:solid 1px gray; border-radius:12px; box-sizing:border-box; }
	.ppt-grid { display:grid; grid-template-columns:repeat(6, 1fr); gap:10px; }
	.ppt-card { position:relative; border:solid 1px gray; border-radius:4px; overflow:hidden; cursor:pointer; text-decoration:none; aspect-ratio:130/160; }
	.ppt-card img { width:100%; height:100%; object-fit:cover; }

	/* 제목 영역 높이 고정 + 2줄 말줄임 */
	.ppt-card .ppt-title {
		position:absolute; bottom:0; left:0; right:0;
		height:50px;
		background:#2D3E0D; opacity:0.8; color:#fff;
		font-size:16px; line-height:27px; padding:10 10px;
		display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
		overflow:hidden; text-align:left;
	}
	.ppt-card:hover .ppt-title { opacity:0.95; }

	/* 인트로 카드 - 글씨 잘보이게 */
	.ppt-intro {
		display:flex; flex-direction:column; align-items:center; justify-content:center;
		background:white; color:#fff; text-align:center; padding:10px;
		transition: background 0.3s;
		text-decoration:none;
	}
	.ppt-intro .intro-big { font-size:20px; color:#2D3E0D; font-weight:bold; font-family:Arial; line-height:1.3; margin-bottom:10px; transition:color 0.3s; }
	.ppt-intro .intro-sub { font-size:18px; color:#2D3E0D; line-height:1.6; transition:color 0.3s; }

	/* hover 시 역광(색반전) */
	.ppt-intro:hover { background:#2D3E0D; }
	.ppt-intro:hover .intro-big,
	.ppt-intro:hover .intro-sub { color:white; }
	.ppt-intro, .ppt-intro * { text-decoration:none !important; }

	/* 반응형: 열 수 줄이고 뒤 카드 숨김 */
	@media screen and (max-width:900px){
		.ppt-grid { grid-template-columns:repeat(4,1fr); }
		.ppt-card:nth-child(n+9) { display:none; }   /* 8개까지만 */
	}
	@media screen and (max-width:600px){
		.ppt-grid { grid-template-columns:repeat(3,1fr); }
		.ppt-card:nth-child(n+7) { display:none; }   /* 6개까지만 */
	}
	@media screen and (max-width:400px){
		.ppt-grid { grid-template-columns:repeat(2,1fr); }
		.ppt-card:nth-child(n+5) { display:none; }   /* 4개까지만 */
	}