:root {
	--width: 1180px;
	--accent: #1a5bd6;
	--muted: #777
}


/* slider */
.slider {
	position: relative;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
	padding: 18px 0;
	margin-bottom: 26px
}

.thumbs {
	display: flex;
	gap: 12px;
	overflow: hidden;
	margin: 0 60px
}

.thumbs img {
	width: 150px;
	/* height: 80px; */
	object-fit: cover;
	border-radius: 4px
}

.slider .nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	border: 1px solid #ddd;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer
}

.slider .nav.prev {
	left: 6px
}

.slider .nav.next {
	right: 6px
}

/*제미나이 추천 슬리이더 안멈추게*/
/* 반드시 이 설정이 되어 있어야 Swiper가 정상 계산됩니다 */
.thumbs.swiper {
    display: block !important; /* 기존 flex 해제 및 강제 적용 */
    overflow: hidden;         /* 영역 밖 이미지는 숨김 */
    width: 100%;              /* 슬라이더 전체 폭 */
}

.thumbs .swiper-wrapper {
    display: flex !important;  /* Swiper 내부 정렬 */
    /* 가다 서다 하는 느낌을 없애는 핵심 코드 (전광판 효과) */
    transition-timing-function: linear !important;
}

.thumbs .swiper-slide {
    width: auto;              /* 내용물(이미지) 크기에 맞춤 */
}






/* 이미지 크기 유지 */
.thumbs .swiper-slide img {
    width: 150px;
    object-fit: cover;
    border-radius: 4px;
}

/* 버튼이 슬라이드 위로 올라오도록 */
.slider .nav {
    z-index: 20;
}

/* content area */
.content {
	display: flex;
	gap: 30px;
	margin-top: 22px
}

.left-col {
	width: calc(100% - 280px);
	margin-bottom: 20px;
}

.center {
	flex: 1
}

.right-col {
	width: 260px
}

/* 인기글 (left) */
.section-title {
	color: var(--accent);
	font-weight: 800;
	font-size: 22px;
	margin-bottom: 12px
}

.popular {
	/* background: #fafafa; */
	padding: 12px;
	border-radius: 4px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.popular .popular-col {
	border-right: 1px solid #f0f0f0;
}

.popular .popular-col:last-child {
	border-right: 0;
}
.popular .popular-col p {
	margin-bottom: 5px;
}
.popular .popular-col p a {
	font-size: 14px;
}

.popular-item {
	display: flex;
	gap: 10px;
	border-bottom: 1px dashed #eee;
	padding: 10px 6px
}

.popular-item:last-child {
	border-bottom: none
}

.popular .meta {
	font-size: 13px;
	color: var(--muted)
}

/* 베스트글 (center top) */
.best-wrap {
	background: #fff;
	padding: 18px 0 0;
	border-bottom: 1px solid #f0f0f0;
}

.best-title {
	color: var(--accent);
	font-weight: 800;
	font-size: 20px;
	margin-bottom: 8px
}

.best-note {
	font-size: 13px;
	color: #333;
	margin-bottom: 10px
}

/* list (center) */
.post-list {
	list-style: none;
	margin: 0;
	padding: 0
}

.post-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 5px 0;
	border-bottom: 1px solid #f0f0f0;
}

.post-item a.title {
	flex: 1;
	color: #111;
	text-decoration: none;
	font-size: 18px
}

.post-count {
	color: #e74c3c;
	margin-left: 8px;
	font-weight: 700
}

.post-thumb {
	width: 80px;
	height: 60px;
	margin-left: 18px;
	flex-shrink: 0
}

.post-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 6px
}

/* right sidebar */
.side-box {
	padding: 0 12px;
	margin-bottom: 20px;
}

.side-box h4 {

	color: var(--accent);
	font-weight: 800;
	font-size: 20px;
	margin-bottom: 8px;
	border-bottom: 1px solid #f0f0f0;
}

.side-list {
	font-size: 14px;
	color: var(--muted);
	line-height: 1.6;
}


/* pagination */
.pagination {
	display: flex;
	gap: 6px;
	justify-content: center;
	padding: 26px 0
}

.pagination button {
	border: 1px solid #ddd;
	background: #fff;
	padding: 8px 12px;
	border-radius: 4px;
	cursor: pointer
}

.pagination .active {
	background: var(--accent);
	color: #fff;
	border-color: var(--accent)
}

/* small screens (not required but safe) */
@media(max-width:1280px) {
	.wrap {
		width: 100%;
		padding: 0 10px
	}
}
