/* 팀쿡 갤러리 / 카드 목록 — 레이아웃 색상과 맞춤 (rx-flex-layout-main) */
.tc-board { margin: 0 0 1.5rem; }
.tc-board__empty { padding: 4rem 0; color: #646f7c; text-align: center; }

.tc-board__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}
.tc-board--col2 .tc-board__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tc-board--col4 .tc-board__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1024px) {
	.tc-board__grid, .tc-board--col4 .tc-board__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
}
@media (max-width: 480px) {
	.tc-board--card .tc-board__grid { grid-template-columns: 1fr; }
}

.tc-board__item { position: relative; display: block; min-width: 0; margin: 0; padding: 0; }

.tc-board__card { display: block; color: inherit; text-decoration: none; }
.tc-board__card:hover { text-decoration: none; }

.tc-board__thumb {
	position: relative;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background-color: #e9ebee;
	border-radius: 8px;
}
.tc-board--card .tc-board__thumb { aspect-ratio: 16 / 10; }
.tc-board__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s ease;
}
.tc-board__card:hover .tc-board__thumb img { transform: scale(1.05); }
.tc-board__noimg {
	display: block;
	width: 100%;
	height: 100%;
	background: repeating-linear-gradient(45deg, #e9ebee, #e9ebee 12px, #f7f8f9 12px, #f7f8f9 24px);
}
.tc-board__badge {
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 3px 8px;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1px;
	background-color: #247bff;
	border-radius: 4px;
}
.tc-board__badge--secret { background-color: #646f7c; }

.tc-board__body { padding: 0.75rem 0 0; }
.tc-board--card .tc-board__body {
	padding: 1rem 1.25rem 1.25rem;
	background-color: #fff;
	border: 1px solid #e9ebee;
	border-top: 0;
	border-radius: 0 0 8px 8px;
}
.tc-board--card .tc-board__thumb { border-radius: 8px 8px 0 0; }

.tc-board__title {
	margin: 0 0 0.25rem;
	overflow: hidden;
	color: #161d24;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.4;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.tc-board--card .tc-board__title { white-space: normal; font-size: 1.0625rem; }
.tc-board__count {
	margin-left: 4px;
	color: #247bff;
	font-size: 0.8125rem;
	font-style: normal;
	font-weight: 700;
}
.tc-board__summary {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0 0 0.75rem;
	color: #646f7c;
	font-size: 0.9375rem;
	line-height: 1.6;
}
.tc-board__meta { display: flex; gap: 0.75rem; color: #646f7c; font-size: 0.8125rem; }
.tc-board__author { color: #374553; font-weight: 500; }

.tc-board__item--active .tc-board__thumb { outline: 3px solid #247bff; outline-offset: -3px; }

.tc-board__check { position: absolute; top: 10px; right: 10px; z-index: 2; }

/* 읽기 화면이 목록 위에 붙을 때 간격 */
.tc-board { margin-top: 1rem; }
.board .read_header { padding-top: 0; }

/* ---------- 글 읽기 화면: XE 기본(그라데이션 바) 대신 레이아웃 톤 ---------- */
.board_read, .read_header { background: none; }
.read_header {
	padding: 0 0 1rem;
	margin: 0 0 1.5rem;
	border-bottom: 1px solid #e9ebee;
}
.read_header h1 {
	width: auto;
	margin: 0 0 0.5rem;
	overflow: visible;
	white-space: normal;
	color: #161d24;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.3;
}
.read_header h1 a { color: #161d24; }
.read_header h1 .category {
	display: inline-block;
	margin: 0 8px 0 0;
	padding: 2px 10px;
	color: #247bff;
	font-size: 0.8125rem;
	font-weight: 700;
	background-color: rgba(36, 123, 255, 0.1);
	border: 0;
	border-radius: 999px;
	vertical-align: middle;
}
.read_header .time {
	position: static;
	display: inline;
	color: #646f7c;
	font-size: 0.875rem;
}
.read_header .meta {
	display: inline;
	padding: 0;
	background: none;
	border: 0;
	color: #646f7c;
	font-size: 0.875rem;
	white-space: normal;
}
.read_header .meta:after { display: none; }
.read_header .meta .author {
	float: none;
	margin-right: 0.75rem;
	color: #374553;
	font-weight: 600;
}
.read_header .meta .sum { float: none; color: #646f7c; font-size: 0.8125rem; }
.read_header .meta .sum:before { content: "· "; }
.read_header .meta .sum .vote { border: 0; padding-left: 0; }
.read_body { padding: 0 0 1.5rem; }
.read_body .xe_content { color: #28323c; font-size: 1rem; line-height: 1.8; }
.read_body .xe_content img { max-width: 100%; height: auto; border-radius: 8px; }
.read_footer { padding: 0.75rem 0; border-top: 1px solid #e9ebee; }

/* 댓글 · 버튼 영역 */
.board .read_footer .btnArea .btn,
.board .list_footer .btnArea .btn,
.board .cmt_footer .btn,
.board .board_search .btn {
	padding: 6px 14px;
	color: #374553;
	font-size: 0.875rem;
	background: #f7f8f9;
	border: 1px solid #e9ebee;
	border-radius: 6px;
}
.board .fbSet, .board .comment { border-color: #e9ebee; }

/* 모바일: 제목 크기 */
@media (max-width: 1024px) {
	.read_header h1 { font-size: 1.375rem; }
}
