/*
 * SuperKorean 베이직 — 네이비 디자인 (더 읽어보기 및 카드 전체 링크 적용 버전)
 * 색상은 모두 --kp-* 변수에서 옵니다. 설정 → SuperKorean 베이직에서 바꿀 수 있습니다.
 */

body {
	--accent: var(--kp-accent);
	--accent-hover: var(--kp-navy-dark);
	--contrast: var(--kp-text);
	--contrast-2: var(--kp-muted);
	--base: var(--kp-base);
	--base-2: var(--kp-bg);
	--base-3: #ffffff;
	background-color: var(--kp-bg);
	color: var(--kp-text);
}

/* 0. 사이트 맨 위: 이름·소개·로고 */
.site-header .header-image,
.site-logo img { width: var(--kp-logo-w, 180px); max-width: 100%; height: var(--kp-logo-h, auto); object-fit: contain; }
.main-title a,
.main-title { color: var(--kp-navy-dark); text-decoration: none; }
.site-description { color: var(--kp-muted); }

/* 로고를 고르면 이름 글자만 화면에서 숨깁니다 (검색엔진·화면낭독기에는 남음). 소개글은 따로 켜고 끕니다. */
body.skb-h-logo .main-title { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* 이름(글자)을 고르면 로고는 숨깁니다 */
body.skb-h-text .site-logo { display: none !important; }
body.skb-no-tagline .site-description { display: none !important; }
/* 사이트 이름 숨기기 (검색엔진·화면낭독기에는 남음) */
body.skb-no-title .main-title { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* 맨 위 영역 숨기기 */
body.skb-h-hide .site-header { display: none !important; }

/* 1. 메뉴바와 카테고리 가운데 정렬 */
#site-navigation {
	background: linear-gradient(120deg, var(--kp-navy-dark), var(--kp-grad-end));
	border: 1px solid var(--kp-nav-border);
	border-radius: 12px;
	box-shadow: 0 5px 16px rgb(var(--kp-dark-rgb) / 12%);
}

#site-navigation .inside-navigation {
	justify-content: center !important;
	padding: 6px 10px;
	background: transparent;
}

#site-navigation .main-nav {
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: center !important;
}

#site-navigation .main-nav > ul {
	justify-content: center !important;
	flex-wrap: wrap;
	gap: 4px;
}

#site-navigation .main-nav > ul > li > a {
	padding: 14px 18px;
	border-radius: 8px;
	background: transparent;
	color: #ffffff;
	font-weight: 600;
	line-height: 1.5;
	text-decoration: none;
	transition: background-color 0.2s ease;
}
#site-navigation .main-nav > ul > li:hover > a,
#site-navigation .main-nav > ul > li.sfHover > a,
#site-navigation .main-nav > ul > li > a:focus-visible,
#site-navigation .main-nav > ul > li.current-menu-item > a,
#site-navigation .main-nav > ul > li.current-menu-ancestor > a,
#site-navigation .main-nav > ul > li.current_page_item > a,
#site-navigation .main-nav > ul > li.current_page_ancestor > a {
	background: var(--kp-active);
	color: #ffffff;
}

#site-navigation .main-nav ul ul {
	padding: 6px;
	border: 1px solid var(--kp-border);
	border-radius: 10px;
	background: #ffffff;
	box-shadow: 0 8px 22px rgb(var(--kp-dark-rgb) / 14%);
	text-align: left;
}

#site-navigation .main-nav ul ul li a {
	padding: 12px 14px;
	border-radius: 6px;
	background: transparent;
	color: var(--kp-ink);
	line-height: 1.5;
}
#site-navigation .main-nav ul ul li:hover > a,
#site-navigation .main-nav ul ul li.sfHover > a,
#site-navigation .main-nav ul ul li > a:focus-visible,
#site-navigation .main-nav ul ul li.current-menu-item > a,
#site-navigation .main-nav ul ul li.current-menu-ancestor > a {
	background: var(--kp-soft);
	color: var(--kp-navy-dark);
}

#site-navigation .menu-toggle {
	background: transparent;
	color: #ffffff;
	border-radius: 8px;
}

#site-navigation .menu-toggle:hover,
#site-navigation .menu-toggle:focus-visible {
	background: var(--kp-active);
	color: #ffffff;
}
#site-navigation a:focus-visible,
#site-navigation button:focus-visible {
	outline: 3px solid var(--kp-focus);
	outline-offset: -3px;
}

/* 2. 카테고리 소개 박스 */
.category #main .page-header,
.category #main > .taxonomy-description,
.category .kp-category-intro {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 24px;
	padding: 28px 30px;
	border: 1px solid var(--kp-border);
	border-left: 5px solid var(--kp-navy);
	border-radius: 14px;
	background: radial-gradient(circle at 100% 0, var(--kp-intro) 0, transparent 65%), linear-gradient(120deg, #ffffff, var(--kp-soft));
	box-shadow: 0 5px 18px rgb(var(--kp-main-rgb) / 6%);
	color: var(--kp-text);
}
.category #main .page-header .page-title,
.category .kp-category-intro h1,
.category .kp-category-intro h2,
.category .kp-category-intro .page-title {
	margin: 0 0 12px;
	padding: 0 !important;
	background: transparent !important;
	color: var(--kp-navy-dark) !important;
	font-size: clamp(1.45rem, 2.5vw, 2rem);
	font-weight: 800;
	line-height: 1.45;
	letter-spacing: -0.03em;
}
.category #main .taxonomy-description,
.category .kp-category-intro p,
.category .kp-category-intro .archive-description {
	color: var(--kp-muted);
	font-size: 16px;
	line-height: 1.85;
}

/* 3. 블로그 목록 글 박스
 * GeneratePress 무료·유료(Premium) 어느 쪽이든 같은 모양이 나오도록
 * 글 구조(제목 묶음·아래 메타·열 배치)에 상관없이 적용합니다. */

/* GP Premium 블로그 "열(columns)·벽돌(masonry)" 배치를 끄고 한 줄 카드로 */
.skb-list .generate-columns-container, .skb-list .masonry-container {
	display: block !important;
	height: auto !important;
	margin: 0 !important;
}
.skb-list .grid-sizer { display: none !important; }
article.skb-card {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	float: none !important;
	width: 100% !important;
	box-sizing: border-box;
	margin: 0 0 24px !important;
	padding: 0 !important;
	overflow: hidden;
	border: 1px solid var(--kp-border);
	border-radius: 14px;
	background-color: #ffffff;
	box-shadow: 0 4px 14px rgb(var(--kp-main-rgb) / 5%);
	transform: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

article.skb-card > .inside-article {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 0;
	box-sizing: border-box;
	margin: 0 !important;
	padding: 24px !important;
	border: 0 !important;
	border-radius: inherit;
	background: transparent !important;
	box-shadow: none !important;
}
/* 제목 묶음·아래 메타 상자는 풀어서 카드 안에서 자유롭게 배치 */
article.skb-card .entry-header,
/* 제목 묶음·아래 메타 상자는 풀어서 카드 안에서 자유롭게 배치 */
article.skb-card footer.entry-meta { display: contents; }

/* 순서: 사진 → 제목 → 날짜 → 카테고리 → 요약 → 더 읽어보기 */
article.skb-card .post-image { order: 0; }
article.skb-card .entry-title { order: 1; }
article.skb-card div.entry-meta { order: 2; }
article.skb-card .cat-links { order: 3; }
article.skb-card .entry-summary { order: 4; }

/* [A] 사진이 있는 글: 사진 왼쪽, 글 오른쪽, 아래에 꽉 찬 버튼 */
article.skb-card.skb-img > .inside-article {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	grid-auto-rows: auto;
	column-gap: 24px;
	align-items: start;
}
article.skb-card.skb-img .post-image {
	grid-column: 1;
	grid-row: 1 / span 5;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}
article.skb-card.skb-img .entry-title,
article.skb-card.skb-img div.entry-meta,
article.skb-card.skb-img .cat-links,
article.skb-card.skb-img .entry-summary,
article.skb-card.skb-img .mdk-views-mini { grid-column: 2; }
article.skb-card .post-image img {
	display: block;
	width: 100% !important;
	height: 230px !important;
	object-fit: cover;
	border-radius: 10px;
}

/* [B] 사진이 없는 글 */
article.skb-card.skb-noimg > .inside-article { min-height: 310px; }
article.skb-card.skb-noimg .entry-title {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* [공통] 제목·날짜·카테고리·요약 */
article.skb-card .entry-title {
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
}
article.skb-card .entry-title a {
	color: var(--kp-ink) !important;
	font-size: 1.05rem !important;
	text-decoration: none !important;
}
article.skb-card .entry-title a:hover { color: var(--kp-accent-ink) !important; }
/* 카드 전체를 누를 수 있게 */
article.skb-card .entry-title a::after {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 10 !important;
}

article.skb-card div.entry-meta {
	position: relative;
	z-index: 11;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 6px !important;
	color: var(--kp-muted) !important;
	font-size: 13px !important;
}
article.skb-card div.entry-meta a { color: var(--kp-muted) !important; text-decoration: none; }

article.skb-card .cat-links {
	position: relative;
	z-index: 11;
	display: block !important;
	margin: 0 0 10px !important;
	font-size: 0;
}
article.skb-card .cat-links .gp-icon,
article.skb-card .cat-links .screen-reader-text { display: none; }
article.skb-card .cat-links a {
	display: inline-block !important;
	margin: 0 4px 4px 0;
	padding: 2px 8px !important;
	border-radius: 6px !important;
	background-color: var(--kp-soft) !important;
	color: var(--kp-ink) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

article.skb-card .entry-summary {
	display: -webkit-box !important;
	overflow: hidden !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: var(--kp-muted) !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	text-overflow: ellipsis !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
}
article.skb-card .entry-summary p { margin: 0 !important; }
/* 테마의 태그·댓글·"Read more" 버튼은 숨기고 아래 버튼 하나로 */
article.skb-card .tags-links,
/* 테마의 태그·댓글·"Read more" 버튼은 숨기고 아래 버튼 하나로 */
article.skb-card .comments-link,
/* 테마의 태그·댓글·"Read more" 버튼은 숨기고 아래 버튼 하나로 */
article.skb-card .read-more-container,
/* 테마의 태그·댓글·"Read more" 버튼은 숨기고 아래 버튼 하나로 */
article.skb-card a.read-more,
/* 테마의 태그·댓글·"Read more" 버튼은 숨기고 아래 버튼 하나로 */
article.skb-card .more-link,
/* 테마의 태그·댓글·"Read more" 버튼은 숨기고 아래 버튼 하나로 */
article.skb-card .read-more-button { display: none !important; }

article.skb-card > .inside-article::after {
	content: "더 읽어보기 →";
	order: 9;
	grid-column: 1 / -1;
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	margin-top: auto;
	padding: 10px 24px;
	border: 1px solid var(--kp-navy);
	border-radius: 8px;
	background: var(--kp-navy);
	color: var(--kp-on-main);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
article.skb-card.skb-img > .inside-article::after { margin-top: 16px; }
article.skb-card > .inside-article:hover::after {
	border-color: var(--kp-navy-hover);
	background: var(--kp-navy-hover);
	color: var(--kp-on-hover);
	box-shadow: 0 4px 12px rgb(var(--kp-main-rgb) / 20%);
}

@media (hover: hover) {
	article.skb-card:hover {
		border-color: var(--kp-hover-border);
		box-shadow: 0 8px 22px rgb(var(--kp-main-rgb) / 10%);
	}
}
/* 4. 위젯·사이드바 */
#right-sidebar .widget-title,
/* 4. 위젯·사이드바 */
#right-sidebar h2 { color: var(--kp-ink); }
#right-sidebar .widget a:not(.button):not(.wp-block-button__link),
#right-sidebar .container-widget a:not(.button):not(.wp-block-button__link),
.kp-latest-title,
.kp-latest-more { color: var(--kp-accent-ink); }
/* 5. 사이드바 검색: 사이드바 폭 안에 맞추기 (밖으로 튀어나가지 않게) */
#right-sidebar .wp-block-search,
/* 5. 사이드바 검색: 사이드바 폭 안에 맞추기 (밖으로 튀어나가지 않게) */
#right-sidebar .search-form,
/* 5. 사이드바 검색: 사이드바 폭 안에 맞추기 (밖으로 튀어나가지 않게) */
#right-sidebar .widget_search {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}
#right-sidebar .wp-block-search__inside-wrapper,
#right-sidebar .search-form {
	display: flex !important;
	align-items: stretch;
	gap: 6px;
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	margin: 0;
}
#right-sidebar .wp-block-search__input,
#right-sidebar .search-field,
#right-sidebar input[type="search"] {
	flex: 1 1 auto;
	box-sizing: border-box;
	width: auto !important;
	min-width: 0 !important;
	max-width: 100%;
	margin: 0;
}
#right-sidebar .wp-block-search__button,
#right-sidebar .search-submit,
#right-sidebar .search-form button,
#right-sidebar .search-form input[type="submit"] {
	flex: 0 0 auto;
	box-sizing: border-box;
	max-width: 40%;
	margin: 0 !important;
	padding-right: 14px;
	padding-left: 14px;
	white-space: nowrap;
}
/* 버튼이 아이콘만 있는 검색(블록 설정)도 같은 폭 안에 */
#right-sidebar .wp-block-search__button.has-icon { padding-right: 10px; padding-left: 10px; }

/* 검색 버튼 색 */
.policy-search button[type="submit"],
#right-sidebar .wp-block-search__button {
	border: 1px solid var(--kp-navy);
	border-radius: 8px;
	background: var(--kp-navy);
	color: var(--kp-on-main);
	text-decoration: none;
}

.policy-search button[type="submit"]:hover,
#right-sidebar .wp-block-search__button:hover {
	border-color: var(--kp-navy-hover);
	background: var(--kp-navy-hover);
	color: var(--kp-on-hover);
}

/* 6. 페이지 번호 */
#main .paging-navigation,
#main .gb-query-loop-pagination {
	box-sizing: border-box;
	padding: 16px;
	border: 1px solid var(--kp-border);
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 4px 14px rgb(var(--kp-main-rgb) / 5%);
}

#main .paging-navigation .nav-links,
#main .gb-query-loop-pagination,
#main .gb-query-page-numbers-cd6e903c {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}
#main .paging-navigation .page-numbers,
#main .gb-query-loop-pagination .page-numbers,
#main .gb-query-loop-pagination a.gb-text {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	min-width: 40px;
	min-height: 40px;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid var(--kp-border);
	border-radius: 8px;
	background: var(--kp-soft);
	color: var(--kp-ink);
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
	box-shadow: none;
}

#main .paging-navigation a.page-numbers:hover,
#main .paging-navigation .page-numbers.current,
#main .gb-query-loop-pagination a:hover,
#main .gb-query-loop-pagination .page-numbers.current {
	border-color: var(--kp-navy);
	background: var(--kp-navy);
	color: var(--kp-on-main);
}

#main .paging-navigation .page-numbers.dots,
#main .gb-query-loop-pagination .page-numbers.dots {
	border-color: transparent;
	background: transparent;
	color: var(--kp-muted);
}

/* 7. 하단 푸터 (화면 전체 폭) */
.site-footer,
.site-info,
.inside-site-info {
	background-color: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
}

.skb-footer {
	box-sizing: border-box;
	width: 100%;
	padding: 50px 20px;
	background-color: var(--kp-f-bg);
}

.skb-footer-wrap {
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 100%;
	max-width: 790px;
	margin: 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	color: var(--kp-f-text);
	text-align: left;
}

.skb-footer-top { display: flex; flex-direction: column; gap: 6px; }
.skb-footer-title { font-size: 18px; font-weight: 700; color: var(--kp-f-title); }
.skb-footer-desc { font-size: 14px; color: var(--kp-f-desc); line-height: 1.5; }

.skb-footer-links { display: flex; flex-wrap: wrap; gap: 20px; margin: 4px 0; font-size: 15px; font-weight: 600; }
.skb-footer-links a { color: var(--kp-f-link); text-decoration: none; transition: color 0.2s; }
.skb-footer-links a:hover { color: var(--kp-f-accent); }

.skb-footer-meta { display: flex; flex-direction: column; gap: 4px; font-size: 14px; }
.skb-footer-email,
.skb-footer-email a { color: var(--kp-f-accent); text-decoration: none; }

.skb-footer-box {
	padding: 16px 18px;
	border: 1px solid var(--kp-f-border);
	border-radius: 8px;
	background-color: var(--kp-f-box);
	color: var(--kp-f-text);
	font-size: 13px;
	line-height: 1.6;
}

.skb-footer-copy { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin-top: 4px; color: var(--kp-f-copy); font-size: 13px; }

/* 제작자 배지: 푸터 배경 밝기에 맞춰 색이 자동으로 바뀝니다 */
html body a.skb-credit {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	gap: 7px;
	overflow: hidden;
	padding: 4px 12px 4px 4px;
	border: 1px solid var(--kp-f-badge-border);
	border-radius: 99px;
	background: var(--kp-f-badge-bg);
	box-shadow: inset 0 1px 0 var(--kp-f-badge-shine);
	color: var(--kp-f-badge-text) !important;
	font-size: 12px;
	line-height: 1.4;
	letter-spacing: 0.01em;
	text-decoration: none !important;
	white-space: nowrap;
	visibility: visible !important;
	opacity: 1 !important;
	transition: border-color 0.25s, box-shadow 0.25s;
}
html body a.skb-credit::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -60%;
	width: 50%;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.35), transparent);
	pointer-events: none;
	transform: skewX(-20deg);
	transition: left 0.6s ease;
}
html body a.skb-credit:hover,
html body a.skb-credit:focus-visible {
	border-color: var(--kp-f-accent);
	box-shadow: inset 0 1px 0 var(--kp-f-badge-shine), 0 0 0 3px var(--kp-f-badge-border), 0 6px 18px rgba(0, 0, 0, 0.18);
	outline: none;
}
html body a.skb-credit:hover::after { left: 120%; }
.skb-credit-logo { display: block; width: 20px; height: 20px; border-radius: 50%; object-fit: cover; transition: transform 0.35s ease; }
a.skb-credit:hover .skb-credit-logo { transform: rotate(-12deg) scale(1.15); }
.skb-credit-by { opacity: 0.75; }
.skb-credit strong { color: inherit; font-weight: 700; }
.skb-credit-go { display: inline-block; width: 0; overflow: hidden; opacity: 0; font-weight: 700; transition: width 0.25s ease, opacity 0.25s ease; }
a.skb-credit:hover .skb-credit-go,
a.skb-credit:focus-visible .skb-credit-go { width: 0.9em; opacity: 1; }
@media (prefers-reduced-motion: reduce) {
	html body a.skb-credit::after,
	.skb-credit-logo,
	.skb-credit-go { transition: none; }
}

/* 8. 모바일 (768px 이하) */
@media (max-width: 768px) {
	#site-navigation .main-nav { width: 100%; }

	#site-navigation.toggled .main-nav > ul > li > a {
		padding: 12px 16px;
		line-height: 1.5;
		text-align: center;
	}

	.category #main .page-header,
	.category #main > .taxonomy-description,
	.category .kp-category-intro { padding: 20px 18px; }

	/* 모바일: 모든 글을 세로로 (사진 → 제목 → … → 버튼) */
	article.skb-card > .inside-article,
	article.skb-card.skb-img > .inside-article { display: flex; flex-direction: column; min-height: auto; padding: 18px !important; }
	article.skb-card.skb-img .post-image { width: 100% !important; margin: 0 0 14px !important; }
	article.skb-card .post-image img { height: 200px !important; }
	article.skb-card.skb-noimg .entry-title { white-space: normal; }

	.skb-footer { padding: 40px 20px; }
}
/* 제작자 배지: PC는 저작권 줄 오른쪽 끝, 태블릿·모바일은 가운데 */
@media (max-width: 1024px) {
	.skb-footer-copy { flex-direction: column; align-items: center; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
	article.skb-card { transition: none; }
}

/* 9. 조회수 (운영자만 보임) */
.mdk-views,
.mdk-views-mini { display: inline-flex; align-items: center; gap: 5px; margin: 4px 0 8px; padding: 3px 10px; border: 1px dashed var(--kp-border); border-radius: 99px; color: var(--kp-muted); font-size: 12.5px; font-variant-numeric: tabular-nums; white-space: nowrap; position: relative; z-index: 11; }
.mdk-views b { color: var(--kp-text); }
.mdk-views em { padding-left: 6px; border-left: 1px solid var(--kp-border); font-size: 11px; font-style: normal; opacity: .8; }
.mdk-views-sep { opacity: .5; }
.mdk-views-mini { margin: 0 0 6px; padding: 1px 8px; font-size: 11.5px; }
article.skb-card .mdk-views-mini { order: 3; align-self: flex-start; justify-self: start; width: max-content; }

/* 10. 베이직 사이드바 (최신 글) */
.skb-sb-on .site-content { display: flex !important; flex-wrap: nowrap; align-items: flex-start; gap: 30px; }
.skb-sb-on .site-content > .content-area { flex: 1 1 auto; width: auto !important; min-width: 0; }
.skb-sb-on #right-sidebar.skb-sidebar { flex: 0 0 300px; width: 300px !important; max-width: 300px; }
.skb-sidebar .inside-right-sidebar { position: sticky; top: 90px; padding: 0 !important; background: transparent !important; }
#right-sidebar.skb-sidebar .widget { margin: 0 0 20px; }
.skb-rp { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.skb-rp li { margin: 0 !important; padding: 0 !important; }
.skb-rp a { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--kp-border); color: var(--kp-ink) !important; text-decoration: none !important; }
.skb-rp li:last-child a { border-bottom: 0; }
.skb-rp a:hover b { color: var(--kp-accent-ink, var(--kp-navy)); text-decoration: underline; }
.skb-rp-thumb { flex: none; width: 64px; height: 64px; overflow: hidden; border-radius: 10px; background: var(--kp-soft); }
.skb-rp-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.skb-rp-ph { display: grid; place-items: center; width: 100%; height: 100%; color: var(--kp-navy); font-size: 22px; font-weight: 800; }
.skb-rp-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.skb-rp-txt b { display: -webkit-box; overflow: hidden; font-size: 14px; font-weight: 600; line-height: 1.45; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.skb-rp-txt small { color: var(--kp-muted); font-size: 12px; }
.skb-rp-empty { color: var(--kp-muted); font-size: 13px; }
.skb-sidebar .widget-title { margin: 0 0 6px !important; font-size: 16px !important; font-weight: 800 !important; }
/* 디자인: 카드 (흰 상자) */
.skb-sbs-card #right-sidebar.skb-sidebar .widget { padding: 18px 18px 8px; border: 1px solid var(--kp-border); border-radius: 14px; background: #fff; box-shadow: 0 4px 14px rgb(var(--kp-main-rgb) / 5%); }
/* 디자인: 선으로 구분 */
.skb-sbs-line #right-sidebar.skb-sidebar .widget { padding: 0; border: 0; border-top: 3px solid var(--kp-navy); border-radius: 0; background: transparent; box-shadow: none; }
.skb-sbs-line #right-sidebar.skb-sidebar .widget-title { padding-top: 12px; }
/* 디자인: 연한 대표 색 배경 */
.skb-sbs-soft #right-sidebar.skb-sidebar .widget { padding: 18px 18px 8px; border: 0; border-radius: 16px; background: var(--kp-soft); box-shadow: none; }
.skb-sbs-soft .skb-rp a { border-bottom-color: rgb(var(--kp-main-rgb) / 12%); }
/* 디자인: 미니멀 */
.skb-sbs-minimal #right-sidebar.skb-sidebar .widget { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.skb-sbs-minimal .skb-rp a { border-bottom: 0; padding: 7px 0; }
.skb-sbs-minimal .skb-rp-thumb { width: 52px; height: 52px; border-radius: 50%; }
/* 사이드바 끔: 본문 가운데 한 줄 */
.skb-sb-off .site-content > .content-area { width: 100% !important; }
@media (max-width: 768px) {
	.skb-sb-on .site-content { display: block !important; }
	.skb-sb-on #right-sidebar.skb-sidebar { width: auto !important; max-width: none; margin-top: 24px; }
	.skb-sidebar .inside-right-sidebar { position: static; }
}

/* 11. 메뉴바 안에 들어간 사이트 이름 (GP Premium 메뉴에 로고/이름 넣기): 어두운 바 위에서도 보이게 */
#site-navigation .navigation-branding .main-title a,
#site-navigation .main-title a,
#site-navigation .site-branding .main-title a { color: var(--kp-on-main, #fff) !important; }

/* ===== 메뉴 아래 검색창 (안내 영역) ===== */
.skb-guide { position: relative; overflow: hidden; border-bottom: 1px solid var(--kp-border, #dbe3ee); background: radial-gradient(700px 240px at 100% 0%, rgb(var(--kp-main-rgb, 27 53 88) / .10), transparent 70%), linear-gradient(180deg, var(--kp-soft, #f2f6fb), var(--kp-bg, #fff)); }
.skb-guide-in { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 18px 32px; align-items: center; max-width: var(--skb-cw, 1200px); margin: 0 auto; padding: 26px 20px; box-sizing: border-box; }
.skb-guide-label { display: inline-flex; margin: 0 0 10px; padding: 4px 11px; border-radius: 99px; background: rgb(var(--kp-main-rgb, 27 53 88) / .10); color: var(--kp-navy, #1b3558); font-size: 12px; font-weight: 800; }
.skb-guide .skb-guide-title { margin: 0 0 8px; padding: 0; border: 0; background: none; color: var(--kp-ink, #1b3558); font-size: 26px; font-weight: 800; line-height: 1.35; letter-spacing: -.03em; }
.skb-guide-title em { color: var(--kp-navy, #1b3558); font-style: normal; background: linear-gradient(transparent 62%, rgb(var(--kp-main-rgb, 27 53 88) / .14) 62%); }
.skb-guide-desc { margin: 0; color: var(--kp-muted, #64748b); font-size: 14px; }
.skb-guide-card { padding: 15px; border: 1px solid var(--kp-border, #dbe3ee); border-radius: 16px; background: #fff; box-shadow: 0 12px 28px rgb(var(--kp-main-rgb, 27 53 88) / .10); }
.skb-guide-box { display: flex; align-items: center; gap: 6px; margin: 0; padding: 5px 5px 5px 12px; border: 1.5px solid var(--kp-border, #dbe3ee); border-radius: 11px; transition: border-color .2s, box-shadow .2s; }
.skb-guide-box:focus-within { border-color: var(--kp-navy, #1b3558); box-shadow: 0 0 0 4px rgb(var(--kp-main-rgb, 27 53 88) / .12); }
.skb-guide-ico { flex: none; width: 18px; height: 18px; color: #9aa3af; }
.skb-guide .skb-guide-q { flex: 1; min-width: 0; padding: 9px 2px; border: 0 !important; background: transparent !important; box-shadow: none !important; color: #1f2937; font: inherit; font-size: 15px; }
.skb-guide .skb-guide-q:focus { outline: none; }
.skb-guide .skb-guide-btn { flex: none; padding: 9px 17px; border: 0; border-radius: 8px; background: var(--kp-navy, #1b3558); color: var(--kp-on-main, #fff); font: inherit; font-size: 14px; font-weight: 800; cursor: pointer; }
.skb-guide .skb-guide-btn:hover { background: var(--kp-navy-hover, #2b4c78); }
.skb-guide-eng { display: grid; grid-template-columns: repeat(auto-fit, minmax(54px, 1fr)); gap: 6px; margin-top: 10px; }
.skb-guide-eng-label { grid-column: 1 / -1; color: var(--kp-muted, #64748b); font-size: 12px; font-weight: 700; }
.skb-geng { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-width: 0; padding: 8px 2px 7px; border: 1px solid var(--kp-border, #dbe3ee); border-radius: 11px; background: #fff; color: #1f2937; font: inherit; font-size: 11.5px; font-weight: 700; letter-spacing: -.03em; text-decoration: none; cursor: pointer; transition: border-color .15s, transform .15s, box-shadow .15s; }
.skb-geng:hover { border-color: var(--kp-hover-border, #94a3b8); transform: translateY(-1px); box-shadow: 0 4px 10px rgba(15, 23, 42, .08); color: #1f2937; }
.skb-geng span { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.skb-geng svg, .skb-geng b, .skb-geng img { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; }
.skb-geng--google svg { padding: 4px; background: #fff; box-shadow: inset 0 0 0 1px #e5e7eb; }
.skb-geng--naver b { background: #03c75a; color: #fff; font-size: 13px; font-weight: 900; }
.skb-geng--daum b { background: linear-gradient(135deg, #1e7cf2, #f04a3e); color: #fff; font-size: 13px; font-weight: 900; }
.skb-geng--blog svg { padding: 5px; background: var(--kp-navy, #1b3558); color: var(--kp-on-main, #fff); }
.skb-geng--sk img { object-fit: cover; box-shadow: 0 0 0 1px var(--kp-border, #dbe3ee); }
.skb-geng--sk span { letter-spacing: -.07em; }
.skb-guide-hint { margin: 9px 0 0; color: var(--kp-muted, #64748b); font-size: 12px; }
@media (max-width: 600px) {
	.skb-guide-in { padding: 18px 14px; }
	.skb-guide .skb-guide-title { font-size: 21px; }
	.skb-guide-card { padding: 11px; }
	.skb-geng { font-size: 10.5px; }
}
.skb-guide-eng { display: flex; flex-wrap: wrap; gap: 6px; }
.skb-guide-eng-label { flex: 0 0 100%; }
.skb-geng { flex: 1 1 0; }

/* ===== 메뉴 아래 검색창: 컨테이너가 줄면 왼쪽 큰 글씨만 줄고, 검색 상자는 그대로 (바로가기 글자 안 잘리게) ===== */
.skb-guide-in { container-type: inline-size; grid-template-columns: minmax(0, 1fr) auto; }
.skb-guide-card { width: 372px; max-width: 100%; box-sizing: border-box; }
.skb-guide .skb-guide-title { font-size: clamp(16px, calc((100cqi - 400px) * 0.065), 26px); overflow-wrap: anywhere; }
.skb-guide-desc { font-size: clamp(12.5px, calc((100cqi - 400px) * 0.036), 14px); }
.skb-geng span { overflow: visible; text-overflow: clip; }
.skb-guide { container: skbgo / inline-size; }
@container skbgo (max-width: 600px) {
	.skb-guide-in { grid-template-columns: minmax(0, 1fr); }
	.skb-guide-card { width: 100%; }
	.skb-guide .skb-guide-title { font-size: clamp(19px, 5.4cqi, 24px); }
	.skb-guide-desc { font-size: 13px; }
	.skb-geng { font-size: 10.5px; letter-spacing: -.05em; }
	.skb-geng--sk span { letter-spacing: -.08em; }
}
@supports not (container-type: inline-size) {
	.skb-guide-in { grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); }
	.skb-guide-card { width: auto; }
}
.skb-guide .skb-guide-title, .skb-guide-desc, .skb-guide-hint { word-break: keep-all; overflow-wrap: normal; }
