/*--------------------------------------------------------------
 네이버 API 검색 블록 (링크 상세 m=vd 등) — head에서 마지막에 로드
--------------------------------------------------------------*/
.sch-api-feed {
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid #e2e8f0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.sch-api-feed .sch-api-section {
	background: #fff;
	border: 1px solid #e2e8f0;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
	box-sizing: border-box;
	margin: 0;
	overflow: hidden;
}

.sch-api-feed .tit-srBox {
	margin: 0;
	padding: 11px 14px 10px;
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #0f172a;
	background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
	border-bottom: 1px solid #e2e8f0;
}

.sch-api-feed .elem-svb {
	display: flex;
	margin: 0;
	padding: 13px 14px;
	gap: 14px;
	align-items: flex-start;
	border-bottom: 1px solid #f1f5f9;
	transition: background-color 0.15s ease;
}

.sch-api-feed .elem-svb:last-child {
	border-bottom: 0;
}

.sch-api-feed .elem-svb:hover {
	background-color: #fafbfc;
}

.sch-api-feed .thum-svc {
	flex-shrink: 0;
}

.sch-api-feed .thum-svc img {
	display: block;
	width: 88px;
	height: 88px;
	min-height: 88px;
	margin-right: 0;
	object-fit: cover;
	border: 1px solid #e2e8f0;
	box-sizing: border-box;
}

.sch-api-feed .cont-svc {
	min-width: 0;
	flex: 1;
}

.sch-api-feed .cont-svc .tit-sve,
.sch-api-feed .cont-svc .desc-sve {
	-webkit-line-clamp: 3;
	line-clamp: 3;
	max-height: none;
	line-height: 1.45;
}

.sch-api-feed .cont-svc .tit-sve {
	margin: 0 0 6px;
	font-size: 1.02em;
	font-weight: 600;
}

.sch-api-feed .cont-svc .tit-sve a {
	color: #1d4ed8;
	text-decoration: none;
}

.sch-api-feed .cont-svc .tit-sve a:hover {
	text-decoration: underline;
}

.sch-api-feed .cont-svc .desc-sve {
	margin: 0 0 8px;
	font-size: 0.9rem;
	color: #475569;
}

.sch-api-feed .cont-svc .addin-sve {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	margin: 0;
	font-size: 0.8125rem;
	color: #64748b;
}

.sch-api-feed .addin-sve .bsve1 {
	color: #64748b;
}

.sch-api-feed .addin-sve .bsve3 {
	position: static;
	margin-left: 0;
	padding-left: 10px;
	border-left: 1px solid #e2e8f0;
}

@media screen and (max-width: 768px) {
	.sch-api-feed {
		margin-top: 18px;
		padding-top: 16px;
		gap: 12px;
	}

	.sch-api-feed .tit-srBox {
		padding: 10px 12px 9px;
		font-size: 0.9rem;
	}

	.sch-api-feed .elem-svb {
		padding: 12px 12px;
		gap: 10px;
	}

	.sch-api-feed .thum-svc img {
		width: 76px;
		height: 76px;
		min-height: 76px;
	}

	.sch-api-feed .cont-svc .tit-sve {
		font-size: 1em;
	}

	.sch-api-feed .cont-svc .desc-sve {
		font-size: 0.88rem;
	}
}

/*--------------------------------------------------------------
 Google CSE (상단) — 실제 DOM: #___gcse_0 / .gsc-webResult / .gs-webResult
--------------------------------------------------------------*/
.sch-gcse-wrap {
	margin: 12px 0 20px;
	padding: 14px 14px 16px;
	background: #fff;
	border: 1px solid #e2e8f0;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
	box-sizing: border-box;
}

.sch-gcse-wrap .gsc-wrapper,
.sch-gcse-wrap .gsc-wrapper-iframe {
	max-width: 100% !important;
}

.sch-gcse-wrap .gsc-control-cse,
.sch-gcse-wrap .gsc-control-cse.gsc-control-cse-ko {
	font-family: inherit !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

.sch-gcse-wrap .gsc-control-wrapper-cse {
	font-size: 0.9rem !important;
}

/* 탭 라벨 (맞춤검색) */
.sch-gcse-wrap .gsc-tabsAreaInvisible {
	margin-bottom: 8px !important;
}

.sch-gcse-wrap .gsc-tabHeader.gsc-tabhActive {
	display: inline-block !important;
	padding: 6px 12px !important;
	margin: 0 0 4px !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	background: #f1f5f9 !important;
	border: 1px solid #e2e8f0 !important;
}

.sch-gcse-wrap .gsc-above-wrapper-area-container {
	width: 100% !important;
}

.sch-gcse-wrap .gsc-result-info {
	color: #64748b !important;
	font-size: 0.85rem !important;
	padding: 0 0 12px !important;
	margin: 0 !important;
	border-bottom: 1px solid #e2e8f0 !important;
	line-height: 1.45 !important;
}

/* 결과 한 줄: 구분선만 유지 */
.sch-gcse-wrap .gsc-webResult-divider {
	display: none !important;
	height: 0 !important;
	margin: 0 !important;
	border: 0 !important;
}

.sch-gcse-wrap .gsc-webResult.gsc-result {
	padding: 14px 0 !important;
	margin: 0 !important;
	border-bottom: 1px solid #f1f5f9 !important;
}

/* 본문 행: 썸네일 | 제목·URL·스니펫 (그리드) */
.sch-gcse-wrap .gs-webResult.gs-result {
	display: grid !important;
	grid-template-columns: 88px 1fr !important;
	column-gap: 14px !important;
	row-gap: 6px !important;
	align-items: start !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.sch-gcse-wrap .gsc-table-cell-thumbnail.gsc-thumbnail {
	grid-column: 1 !important;
	grid-row: 1 / span 3 !important;
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: top !important;
}

.sch-gcse-wrap .gsc-thumbnail-inside {
	grid-column: 2 !important;
	grid-row: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.sch-gcse-wrap .gsc-url-top {
	grid-column: 2 !important;
	grid-row: 2 !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.4 !important;
}

.sch-gcse-wrap .gsc-table-result {
	grid-column: 2 !important;
	grid-row: 3 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

/* 썸네일 없는 결과: 한 열 */
.sch-gcse-wrap .gs-webResult.gs-result:not(:has(.gsc-table-cell-thumbnail.gsc-thumbnail)) {
	grid-template-columns: 1fr !important;
}

.sch-gcse-wrap .gs-webResult.gs-result:not(:has(.gsc-table-cell-thumbnail.gsc-thumbnail)) .gsc-thumbnail-inside,
.sch-gcse-wrap .gs-webResult.gs-result:not(:has(.gsc-table-cell-thumbnail.gsc-thumbnail)) .gsc-url-top,
.sch-gcse-wrap .gs-webResult.gs-result:not(:has(.gsc-table-cell-thumbnail.gsc-thumbnail)) .gsc-table-result {
	grid-column: 1 !important;
	grid-row: auto !important;
}

.sch-gcse-wrap .gs-image-box,
.sch-gcse-wrap .gs-web-image-box {
	margin: 0 !important;
	padding: 0 !important;
}

.sch-gcse-wrap .gs-image-box img,
.sch-gcse-wrap img.gs-image {
	width: 88px !important;
	height: 88px !important;
	max-width: 88px !important;
	object-fit: cover !important;
	border: 1px solid #e2e8f0 !important;
	box-sizing: border-box !important;
	display: block !important;
}

/* 스니펫 블록 안 중복 제목·하단 URL 숨김 (상단 gsc-url-top 유지) */
.sch-gcse-wrap .gsc-table-cell-snippet-close > .gs-title.gsc-table-cell-thumbnail {
	display: none !important;
}

.sch-gcse-wrap .gsc-url-bottom {
	display: none !important;
}

/* 긴 URL 한 줄 숨김 — 짧은 도메인 + breadcrumb만 */
.sch-gcse-wrap .gs-visibleUrl-long {
	display: none !important;
}

.sch-gcse-wrap .gs-title,
.sch-gcse-wrap .gs-title b {
	font-size: 1.02em !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	margin: 0 !important;
}

.sch-gcse-wrap a.gs-title {
	color: #1d4ed8 !important;
	text-decoration: none !important;
}

.sch-gcse-wrap a.gs-title:hover {
	text-decoration: underline !important;
}

.sch-gcse-wrap .gs-snippet,
.sch-gcse-wrap .gs-snippet b {
	color: #475569 !important;
	font-size: 0.9rem !important;
	line-height: 1.55 !important;
	font-weight: 400 !important;
	margin: 4px 0 0 !important;
}

.sch-gcse-wrap .gs-visibleUrl-short {
	color: #059669 !important;
	font-size: 0.78rem !important;
	font-weight: 600 !important;
}

.sch-gcse-wrap .gs-visibleUrl-breadcrumb {
	color: #64748b !important;
	font-size: 0.75rem !important;
	margin-top: 2px !important;
}

.sch-gcse-wrap .gsc-table-cell-snippet-close {
	padding: 0 !important;
}

.sch-gcse-wrap .gcsc-branding,
.sch-gcse-wrap .gcsc-branding-text {
	font-size: 0.72rem !important;
	color: #94a3b8 !important;
}

/* 페이지 번호 */
.sch-gcse-wrap .gsc-cursor-box {
	margin: 16px 0 10px !important;
	padding-top: 12px !important;
	border-top: 1px solid #e2e8f0 !important;
}

.sch-gcse-wrap .gsc-cursor {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
}

.sch-gcse-wrap .gsc-cursor-page,
.sch-gcse-wrap .gsc-cursor-current-page {
	font-size: 0.88rem !important;
	min-width: 2.25em !important;
	text-align: center !important;
	padding: 6px 10px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	cursor: pointer !important;
}

.sch-gcse-wrap .gsc-cursor-page {
	color: #1d4ed8 !important;
	border: 1px solid #e2e8f0 !important;
	background: #fff !important;
}

.sch-gcse-wrap .gsc-cursor-current-page {
	color: #fff !important;
	background: #1d4ed8 !important;
	border: 1px solid #1d4ed8 !important;
	font-weight: 600 !important;
}

/* Google에서 … 검색 */
.sch-gcse-wrap .gcsc-more-maybe-branding-root {
	margin-top: 12px !important;
}

.sch-gcse-wrap .gcsc-more-maybe-branding-root a {
	text-decoration: none !important;
}

.sch-gcse-wrap .gcsc-find-more-on-google {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 14px !important;
	font-size: 0.88rem !important;
	color: #1d4ed8 !important;
	background: #f8fafc !important;
	border: 1px solid #e2e8f0 !important;
	box-sizing: border-box !important;
}

.sch-gcse-wrap .gcsc-find-more-on-google:hover {
	background: #eff6ff !important;
	border-color: #bfdbfe !important;
}

.sch-gcse-wrap .gcsc-find-more-on-google-query {
	font-weight: 700 !important;
}

.sch-gcse-wrap .gsc-adBlockNoHeight {
	margin: 0 !important;
}

@media screen and (max-width: 768px) {
	.sch-gcse-wrap {
		margin: 10px 0 16px;
		padding: 12px 10px 14px;
	}

	.sch-gcse-wrap .gs-webResult.gs-result {
		grid-template-columns: 72px 1fr !important;
		column-gap: 10px !important;
	}

	.sch-gcse-wrap .gs-image-box img,
	.sch-gcse-wrap img.gs-image {
		width: 72px !important;
		height: 72px !important;
		max-width: 72px !important;
	}
}
