/* scbbc.ui.css
 * - Tailwind 미사용(제거) 전제
 * - 헤더(PC dropdown / Mobile offcanvas)
 * - 성경검색기(좌측 약어/장 선택 + 우측 검색/모드/결과/복사)
 */

:root {
	--scbbc-bg: #ffffff;
	--scbbc-fg: #0f172a;
	--scbbc-muted: #475569;
	--scbbc-border: #e2e8f0;
	--scbbc-card: #ffffff;
	--scbbc-shadow: 0 10px 25px rgba(15, 23, 42, 0.08);
	/* Identity (네이비) */
	--scbbc-primary: #0b2a5b;
	--scbbc-primary-2: #0f3b84;
	--scbbc-accent: #2563eb;
	--scbbc-mark: #fde68a;
	--scbbc-radius: 12px;
	--scbbc-radius-sm: 10px;
	--scbbc-font: system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans KR', 'Apple SD Gothic Neo', 'Malgun Gothic', Arial, sans-serif;

	/* Modern layout tokens */
	--scbbc-container: 1280px;
	--scbbc-gutter: clamp(16px, 3.2vw, 28px);
	--scbbc-section-y: clamp(28px, 4.5vw, 56px);
	--scbbc-surface: #f7f9fc;

	/* header height token (head.php에서 contents_wrap padding 계산에 사용되는 값과 맞춤) */
	--scbbc-header-h: 64px;
}

/* Reset-ish */
.scbbc * {
	box-sizing: border-box;
}
.scbbc {
	font-family: var(--scbbc-font);
	color: var(--scbbc-fg);
}
.scbbc a {
	color: inherit;
	text-decoration: none;
}
.scbbc a.scbbc-nav__link--primary {
	color: #fff;
}
.scbbc button {
	font-family: inherit;
}

/* Intro (closed site landing) */
.scbbc-intro {
	min-height: calc(100vh - 1px);
	display: flex;
	align-items: center;
	background: radial-gradient(1200px 600px at 20% 20%, rgba(99, 102, 241, 0.12), transparent 60%), radial-gradient(900px 500px at 80% 10%, rgba(56, 189, 248, 0.1), transparent 55%),
		radial-gradient(900px 500px at 70% 80%, rgba(34, 197, 94, 0.1), transparent 55%), var(--scbbc-bg);
}
.scbbc-intro__card {
	width: min(860px, 100%);
	margin: 0 auto;
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 18px;
	box-shadow: 0 24px 70px rgba(2, 6, 23, 0.14);
	padding: 22px 20px;
}
.scbbc-intro__title {
	font-size: 22px;
	font-weight: 950;
	letter-spacing: -0.03em;
}
.scbbc-intro__desc {
	margin-top: 10px;
	color: var(--scbbc-muted);
	line-height: 1.75;
	font-size: 14px;
}
.scbbc-intro__ref {
	font-weight: 900;
	color: #0f172a;
}
.scbbc-intro__notice {
	margin-top: 18px;
	background: rgba(2, 6, 23, 0.03);
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 14px;
	padding: 14px 14px;
}
.scbbc-intro__notice.is-pending {
	background: rgba(245, 158, 11, 0.08);
	border-color: rgba(245, 158, 11, 0.25);
}
.scbbc-intro__noticeText {
	margin-top: 8px;
	color: #475569;
	line-height: 1.7;
	font-size: 14px;
}
.scbbc-intro__actions {
	margin-top: 16px;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}
.scbbc-intro__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 16px;
	border-radius: 14px;
	border: 1px solid rgba(148, 163, 184, 0.55);
	background: rgba(255, 255, 255, 0.9);
	color: #0f172a;
	font-weight: 950;
	text-decoration: none;
}
.scbbc-intro__btn.is-primary {
	border-color: rgba(99, 102, 241, 0.55);
	background: rgba(99, 102, 241, 0.14);
	color: #312e81;
}
.scbbc-intro__btn.is-ghost {
	background: rgba(2, 6, 23, 0.04);
}
.scbbc-intro__footer {
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px dashed rgba(148, 163, 184, 0.45);
}
.scbbc-intro__meta {
	color: #475569;
	line-height: 1.75;
	font-size: 13px;
}

/* ---------------------------------
 * Scrollbar (site-wide, visible thumb)
 * - 요청: 스크롤 thumb가 흰색/투명처럼 안 보이는 문제 해결
 * - 과도한 커스텀(패널별)은 제거하고 전역으로 통일
 * --------------------------------- */
html {
	scrollbar-width: auto; /* Firefox */
	scrollbar-color: rgba(15, 23, 42, 0.45) rgba(15, 23, 42, 0.06);
}
/* Chromium/WebKit */
html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
	width: 12px;
	height: 12px;
}
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
*::-webkit-scrollbar-track {
	background: rgba(15, 23, 42, 0.06);
}
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb {
	background-color: rgba(15, 23, 42, 0.4);
	border-radius: 999px;
	border: 3px solid rgba(15, 23, 42, 0.06);
	background-clip: padding-box;
}
html:hover::-webkit-scrollbar-thumb,
body:hover::-webkit-scrollbar-thumb,
*:hover::-webkit-scrollbar-thumb {
	background-color: rgba(15, 23, 42, 0.55);
}

/* Container */
.scbbc-container {
	max-width: var(--scbbc-container);
	margin: 0 auto;
	padding: 0;
}
.scbbc-pad {
	padding-left: var(--scbbc-gutter);
	padding-right: var(--scbbc-gutter);
}
.scbbc-section {
	/* 요청: scbbc-section 상/하 패딩 제거(전역 section.sub padding을 사용) */
	padding-top: 0;
	padding-bottom: 0;
}

/* Page title (container_title) */
.scbbc-pageTitle {
	margin: 0 0 14px;
}
#container_title.scbbc-pageTitle__title {
	margin: 0;
	/* 요청: padding-top 제거 */
	padding: 0;
	font-weight: 950;
	letter-spacing: -0.03em;
	font-size: clamp(18px, 2.2vw, 26px);
}
.scbbc-pageTitle__sub {
	margin-top: 6px;
	color: var(--scbbc-muted);
	font-size: 13px;
	line-height: 1.55;
}

/* 레거시 고정폭(1400px) → 현대형 컨테이너로 오버라이드 */
.inner {
	width: 100% !important;
	max-width: var(--scbbc-container) !important;
	margin: 0 auto !important;
	padding-left: var(--scbbc-gutter) !important;
	padding-right: var(--scbbc-gutter) !important;
	box-sizing: border-box;
}
.contents_wrap > .index,
.contents_wrap > .sub {
	width: 100% !important;
	max-width: var(--scbbc-container) !important;
	margin: 0 auto !important;
	/* 중요:
   * - section.sub(테마 레이아웃) + 페이지 내부 .scbbc-container/.inner 패딩이 중복되기 쉬움
   * - 여기서는 “폭/중앙정렬”만 담당하고, 좌우 패딩은 내부 컨테이너가 담당하도록 0 처리
   */
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box;
}
.contents_wrap {
	background: var(--scbbc-surface);
}

/* head.php에서 contents_wrap padding-top이 이미 header 높이만큼 적용되므로, sub/page 상단 여백은 과감히 정리 */
.contents_wrap > .sub {
	padding-top: 0 !important;
	padding-bottom: var(--scbbc-section-y) !important;
}
.contents_wrap > .index {
	padding-top: 0 !important;
	padding-bottom: var(--scbbc-section-y) !important;
}

/* section.index / section.sub (기존 style.css 고정폭 + padding 중복 제거) */
section.index,
section.sub {
	width: 100% !important;
	max-width: var(--scbbc-container) !important;
	margin: 0 auto !important;
	padding-top: var(--scbbc-section-y) !important;
	padding-bottom: var(--scbbc-section-y) !important;
	box-sizing: border-box;
}
/* 요청: 메인페이지는 상단 여백 없이 풀배너가 바로 붙도록 */
section.index {
	padding-top: 0 !important;
}

/* Header */
#header.scbbc-header {
	position: sticky;
	top: 0;
	z-index: 200;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--scbbc-border);
	/* 기존 테마의 #header 스타일(고정/패딩/그림자) 무력화 */
	padding: 0;
	box-shadow: none;
}
.scbbc-header .scbbc-pad {
	/* 헤더는 풀폭(갇힘 방지), 대신 좌우 거터만 유지 */
	width: 100%;
}

/* 레거시 #header(fixed/padding 등) 무력화(중복 방지) */
#header {
	position: sticky !important;
	top: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: 1px solid var(--scbbc-border) !important;
	box-shadow: none !important;
	background: rgba(255, 255, 255, 0.92) !important;
	backdrop-filter: blur(10px);
	z-index: 200 !important;
}
.scbbc-header__inner {
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.scbbc-header__right {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}
.scbbc-brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}
.scbbc-brand__title {
	/* 요청: 심볼 제거, 텍스트를 로고처럼 보이게 */
	font-weight: 950;
	letter-spacing: -0.02em;
	font-size: 18px;
	line-height: 1.1;
	padding: 2px 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
@media (min-width: 980px) {
	.scbbc-brand__title {
		font-size: 20px;
	}
}

.scbbc-nav {
	display: none;
	align-items: center;
	gap: 18px;
}
.scbbc-nav__item {
	position: relative;
}
.scbbc-nav__item.has-dropdown::after {
	/* 링크와 드롭다운 사이의 '빈 공간' 때문에 hover가 끊기는 문제 방지 */
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	height: 10px;
	background: transparent;
}
.scbbc-nav__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 10px;
	border-radius: 10px;
	color: #0f172a;
	font-weight: 650;
	font-size: 14px;
}
.scbbc-nav__link:hover {
	background: rgba(2, 6, 23, 0.04);
}
.scbbc-nav__link--primary {
	background: var(--scbbc-primary);
	color: #fff;
	font-weight: 850;
}
.scbbc-nav__link--primary:hover {
	background: var(--scbbc-primary-2);
	color: #fff;
}
.scbbc-nav__caret {
	width: 14px;
	height: 14px;
	opacity: 0.65;
}
.scbbc-dropdown {
	position: absolute;
	top: 100%;
	right: 0;
	min-width: 220px;
	background: var(--scbbc-card);
	border: 1px solid var(--scbbc-border);
	border-radius: var(--scbbc-radius);
	box-shadow: var(--scbbc-shadow);
	padding: 8px;
	display: none;
}
.scbbc-nav__item[aria-expanded='true'] .scbbc-dropdown {
	display: block;
}
.scbbc-dropdown__link {
	display: block;
	padding: 10px 12px;
	border-radius: 10px;
	font-size: 14px;
	color: #0f172a;
}
.scbbc-dropdown__link:hover {
	background: rgba(2, 6, 23, 0.04);
}

/* User menu */
.scbbc-nav__item--user {
	display: none;
}
@media (min-width: 900px) {
	.scbbc-nav__item--user {
		display: inline-block;
	}
}
.scbbc-nav__item--user .scbbc-nav__link--user {
	font-weight: 800;
}
.scbbc-userico {
	width: 18px;
	height: 18px;
	opacity: 0.9;
}
.scbbc-ddico {
	width: 18px;
	height: 18px;
	margin-right: 8px;
	opacity: 0.85;
	flex: 0 0 auto;
}
.scbbc-dropdown--user .scbbc-dropdown__link {
	display: flex;
	align-items: center;
	gap: 2px;
}

/* Mobile toggle */
.scbbc-mobile-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 12px;
	/* 요청: 테두리 제거 */
	border: 0;
	background: transparent;
}
.scbbc-mobile-toggle:hover {
	background: rgba(2, 6, 23, 0.03);
}
.scbbc-mobile-toggle svg {
	width: 20px;
	height: 20px;
}

/* Offcanvas */
.scbbc-offcanvas {
	position: fixed;
	inset: 0;
	z-index: 500;
	/* 애니메이션을 위해 display 토글 대신 opacity/visibility로 제어 */
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.18s ease;
}
.scbbc-offcanvas.is-open {
	opacity: 1;
	pointer-events: auto;
}
.scbbc-offcanvas__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(2, 6, 23, 0.55);
	opacity: 0;
	transition: opacity 0.22s ease;
}
.scbbc-offcanvas.is-open .scbbc-offcanvas__backdrop {
	opacity: 1;
}
.scbbc-offcanvas__panel {
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: min(86vw, 360px);
	background: #fff;
	border-left: 1px solid var(--scbbc-border);
	transform: translateX(100%);
	opacity: 0;
	will-change: transform, opacity;
	transition: transform 0.32s cubic-bezier(0.2, 0.9, 0.2, 1), opacity 0.32s cubic-bezier(0.2, 0.9, 0.2, 1);
	display: flex;
	flex-direction: column;
	box-shadow: 0 18px 60px rgba(2, 6, 23, 0.32);
}
.scbbc-offcanvas.is-open .scbbc-offcanvas__panel {
	transform: translateX(0);
	opacity: 1;
}
.scbbc-offcanvas__head {
	height: 64px;
	padding: 0 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid var(--scbbc-border);
}
.scbbc-offcanvas__title {
	font-weight: 800;
}
.scbbc-offcanvas__close {
	width: 44px;
	height: 44px;
	border-radius: 14px;
	border: 1px solid rgba(2, 6, 23, 0.1);
	background: rgba(2, 6, 23, 0.02);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgba(15, 23, 42, 0.92);
}
.scbbc-offcanvas__close:hover {
	background: rgba(2, 6, 23, 0.04);
}
.scbbc-offcanvas__close svg {
	width: 22px;
	height: 22px;
	display: block;
}
.scbbc-offcanvas__body {
	padding: 10px;
	overflow: auto;
}

/* -----------------------------
 * Mobile typography/accessibility (어르신 가독성)
 * ----------------------------- */
@media (max-width: 480px) {
	.scbbc {
		font-size: 16.5px;
		line-height: 1.75;
	}
	/* Mobile offcanvas menu */
	.scbbc-offcanvas__title {
		font-size: 18px;
		font-weight: 950;
		letter-spacing: -0.02em;
	}
	.scbbc-offcanvas__body {
		padding: 12px;
	}
	.scbbc-mnav__toggle {
		font-size: 20px;
		padding: 16px 14px;
	}
	.scbbc-mnav__link {
		font-size: 18px;
		padding: 14px 14px;
	}
	.scbbc-mnav__sublink {
		font-size: 17px;
		padding: 12px 14px;
	}

	/* Bible search readability */
	.bible-input {
		font-size: 16px;
	}
	.bible-action {
		font-size: 15px;
	}
	.bible-verse__text {
		font-size: 16px;
		line-height: 1.8;
	}
	.bible-verse__ref {
		font-size: 14px;
	}
}

/* Mobile nav (accordion) */
.scbbc-mnav {
	display: grid;
	gap: 10px;
}
.scbbc-mnav__link {
	display: block;
	padding: 12px 12px;
	border-radius: 12px;
	font-weight: 700;
	color: #0f172a;
	font-size: 17px; /* 요청: 모바일 메뉴 폰트 키움 */
}
.scbbc-mnav__link:hover {
	background: rgba(2, 6, 23, 0.04);
}
.scbbc-mnav__group {
	border: 1px solid var(--scbbc-border);
	border-radius: 14px;
	background: #fff;
	overflow: hidden;
}
.scbbc-mnav__toggle {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 14px 12px;
	border: 0;
	background: transparent;
	cursor: pointer;
	font-weight: 850;
	font-size: 18px; /* 대분류 */
	color: #0f172a;
}
.scbbc-mnav__toggle:hover {
	background: rgba(2, 6, 23, 0.03);
}
.scbbc-mnav__caret {
	width: 18px;
	height: 18px;
	opacity: 0.65;
	transition: transform 0.22s ease;
}
.scbbc-mnav__group.is-open .scbbc-mnav__caret {
	transform: rotate(180deg);
}
.scbbc-mnav__sub {
	display: none;
	gap: 6px;
	padding: 10px 12px 14px;
	border-top: 1px solid var(--scbbc-border);
	background: rgba(2, 6, 23, 0.015);
}
.scbbc-mnav__group.is-open .scbbc-mnav__sub {
	display: grid;
}
.scbbc-mnav__sublink {
	display: block;
	padding: 10px 12px;
	border-radius: 12px;
	font-size: 14px;
	color: var(--scbbc-muted);
	font-weight: 750;
	background: rgba(255, 255, 255, 0.85);
	border: 1px solid rgba(148, 163, 184, 0.28);
}
.scbbc-mnav__sublink:hover {
	background: rgba(2, 6, 23, 0.04);
	color: #0f172a;
}

/* Bible Search UI */
.scbbc-bible {
	/* 요청: scbbc-bible 패딩 제거(상위 section/sub 패딩을 사용) */
	padding: 0;
}
.scbbc-bible__title {
	font-size: 22px;
	font-weight: 900;
	letter-spacing: -0.03em;
	margin: 0 0 14px;
}
.scbbc-bible__crumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--scbbc-muted);
	margin: 0 0 8px;
}
.scbbc-bible__crumbLink {
	color: #0f172a;
	font-weight: 900;
	text-decoration: none;
	background: rgba(2, 6, 23, 0.04);
	border: 1px solid rgba(148, 163, 184, 0.35);
	padding: 6px 10px;
	border-radius: 999px;
}
.scbbc-bible__crumbLink:hover {
	background: rgba(2, 6, 23, 0.06);
}
.scbbc-bible__crumbSep {
	color: rgba(100, 116, 139, 0.9);
}
.scbbc-bible__crumbNow {
	font-weight: 900;
	color: #334155;
}
.scbbc-bible__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
@media (min-width: 1024px) {
	.scbbc-bible__grid {
		grid-template-columns: 320px 1fr;
		align-items: start;
	}
}
.scbbc-bible__panel {
	background: #fff;
	border: 1px solid var(--scbbc-border);
	border-radius: var(--scbbc-radius);
	box-shadow: var(--scbbc-shadow);
	/* overflow는 패널별로 제어(스크롤 깨짐 방지) */
	overflow: visible;
}
.scbbc-bible__panel--left {
	padding: 10px;
}
.scbbc-bible__panel--right {
	padding: 14px;
}

/* Bible sections: 경계가 뚜렷한 '패널(헤더바+본문)' 구조 */
.bible-section {
	border: 1px solid rgba(2, 6, 23, 0.12);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(2, 6, 23, 0.05);
	margin-bottom: 12px;
	overflow: hidden;
}
.bible-section.is-book {
	background: rgba(2, 6, 23, 0.015);
}
.bible-section.is-chapter {
	background: rgba(2, 6, 23, 0.035);
	border-color: rgba(2, 6, 23, 0.18);
}
.bible-section.is-collapsed .bible-section__body {
	display: none;
}
.bible-section:last-child {
	margin-bottom: 0;
}
.bible-section:focus-within {
	border-color: rgba(37, 99, 235, 0.35);
	box-shadow: 0 14px 34px rgba(2, 6, 23, 0.06), 0 0 0 4px rgba(37, 99, 235, 0.1);
}
.bible-section__hd {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 10px 12px;
	background: rgba(2, 6, 23, 0.02);
	border-bottom: 1px solid rgba(2, 6, 23, 0.08);
}
.bible-section__hd.is-clickable {
	cursor: pointer;
	user-select: none;
}
.bible-section__meta {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}
.bible-section__fold {
	width: 34px;
	height: 34px;
	border-radius: 12px;
	border: 1px solid rgba(148, 163, 184, 0.35);
	background: rgba(255, 255, 255, 0.85);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.bible-section__fold svg {
	width: 18px;
	height: 18px;
	opacity: 0.75;
	transition: transform 0.22s ease;
}
.bible-section:not(.is-collapsed) .bible-section__fold svg {
	transform: rotate(180deg);
}
.bible-section__fold:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}
.bible-section__title {
	font-weight: 950;
	letter-spacing: -0.02em;
	font-size: 15px;
	color: #0f172a;
}
.bible-section__hint {
	/* 요청: 힌트 제거(타이틀 강조) */
	display: none;
}
.bible-section__body {
	padding: 12px;
}

.bible-testaments {
	display: flex;
	gap: 8px;
	margin-bottom: 0;
}
.bible-testament {
	flex: 1;
	border: 1px solid var(--scbbc-border);
	background: rgba(2, 6, 23, 0.02);
	border-radius: 999px;
	padding: 10px 12px;
	font-weight: 900;
	font-size: 13px;
	cursor: pointer;
}
.bible-testament.is-active {
	border-color: rgba(37, 99, 235, 0.35);
	background: rgba(11, 42, 91, 0.12);
	color: #0b2a5b;
}

.bible-book-grid {
	display: block;
}
.bible-book-row {
	margin-bottom: 10px;
}
.bible-book-row__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}
.bible-btn {
	appearance: none;
	border: 1px solid var(--scbbc-border);
	background: linear-gradient(180deg, #fff, rgba(2, 6, 23, 0.02));
	border-radius: 12px;
	padding: 10px 10px;
	font-weight: 800;
	color: #0f172a;
	cursor: pointer;
	line-height: 1;
}
.bible-btn:hover {
	background: rgba(2, 6, 23, 0.03);
}
.bible-btn.is-nt {
	border-color: rgba(16, 185, 129, 0.28);
	background: linear-gradient(180deg, rgba(236, 253, 245, 1), rgba(16, 185, 129, 0.06));
	color: rgba(6, 95, 70, 0.95);
}
.bible-btn.is-nt:hover {
	background: linear-gradient(180deg, rgba(209, 250, 229, 1), rgba(16, 185, 129, 0.1));
}
.bible-btn.is-active {
	border-color: rgba(37, 99, 235, 0.35);
	background: rgba(11, 42, 91, 0.1);
	color: #0b2a5b;
}
.bible-btn.is-nt.is-active {
	border-color: rgba(16, 185, 129, 0.45);
	background: rgba(16, 185, 129, 0.14);
	color: rgba(6, 95, 70, 0.95);
}
.bible-btn:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}

.bible-chapters {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}
.bible-chapter-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 6px;
}
.bible-chapter-btn {
	border: 1px solid var(--scbbc-border);
	background: rgba(2, 6, 23, 0.02);
	/* 장 버튼은 더 분명한 '칩/원형' 느낌 */
	border-radius: 5px;
	padding: 8px 0;
	font-weight: 800;
	cursor: pointer;
}
.bible-chapter-btn:hover {
	background: rgba(2, 6, 23, 0.03);
}
.bible-chapter-btn.is-active {
	border-color: rgba(37, 99, 235, 0.35);
	background: rgba(37, 99, 235, 0.16);
}

.bible-chapter-empty {
	color: var(--scbbc-muted);
	font-size: 13px;
	padding: 10px 6px;
}

.bible-searchbar {
	display: grid;
	grid-template-columns: 1fr auto auto;
	gap: 8px;
	align-items: center;
}
.bible-input {
	width: 100%;
	border: 1px solid var(--scbbc-border);
	border-radius: 14px;
	padding: 12px 14px;
	font-size: 14px;
	outline: none;
}
.bible-input:focus {
	border-color: rgba(37, 99, 235, 0.45);
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}
.bible-action {
	border: 1px solid var(--scbbc-border);
	background: #fff;
	border-radius: 14px;
	padding: 12px 14px;
	font-weight: 900;
	cursor: pointer;
}
.bible-action--primary {
	background: var(--scbbc-primary);
	border-color: var(--scbbc-primary);
	color: #fff;
}
.bible-action--primary:hover {
	background: var(--scbbc-primary-2);
	color: #000;
}
.bible-action:hover {
	background: rgba(2, 6, 23, 0.03);
}

.bible-langs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}
.bible-lang {
	border: 1px solid var(--scbbc-border);
	background: #fff;
	border-radius: 999px;
	padding: 8px 10px;
	font-weight: 900;
	font-size: 13px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.bible-lang:hover {
	background: rgba(2, 6, 23, 0.03);
}
.bible-lang.is-active {
	border-color: rgba(37, 99, 235, 0.35);
	background: rgba(37, 99, 235, 0.12);
	color: #0b2a5b;
}
.bible-lang__flag {
	width: 18px;
	height: 18px;
	border-radius: 999px;
	flex: 0 0 auto;
}

.bible-filters {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin-top: 10px;
}
.bible-select {
	width: 100%;
	border: 1px solid var(--scbbc-border);
	background: #fff;
	border-radius: 10px;
	padding: 10px 12px;
	font-weight: 850;
	font-size: 13px;
	color: #0f172a;
}
.bible-select:focus {
	outline: none;
	border-color: rgba(37, 99, 235, 0.45);
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}
@media (max-width: 640px) {
	.bible-searchbar {
		grid-template-columns: 1fr;
	}
	.bible-filters {
		grid-template-columns: 1fr;
	}
}

.bible-modes {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}
.bible-mode {
	border: 1px solid var(--scbbc-border);
	background: rgba(2, 6, 23, 0.02);
	border-radius: 999px;
	padding: 10px 12px;
	font-weight: 900;
	font-size: 13px;
	cursor: pointer;
}
.bible-mode.is-active {
	border-color: rgba(37, 99, 235, 0.35);
	background: rgba(11, 42, 91, 0.12);
	color: #0b2a5b;
}

.bible-nav {
	display: flex;
	gap: 10px;
	margin-top: 10px;
	align-items: center;
}
.bible-nav--withView {
	justify-content: space-between;
}
.bible-nav__left {
	display: flex;
	gap: 10px;
	flex: 1;
}
.bible-nav__right {
	display: flex;
	justify-content: flex-end;
}
.bible-nav button {
	flex: 1;
	border: 1px solid var(--scbbc-border);
	background: rgba(2, 6, 23, 0.02);
	border-radius: 14px;
	padding: 12px 14px;
	font-weight: 900;
	cursor: pointer;
}
.bible-nav__right .bible-action {
	flex: 0 0 auto;
	white-space: nowrap;
}
.bible-nav button:hover {
	background: rgba(2, 6, 23, 0.03);
}

.bible-result {
	margin-top: 12px;
	border-top: 1px solid var(--scbbc-border);
	padding-top: 30px;
}
.bible-result__meta {
	font-size: 13px;
	color: var(--scbbc-muted);
	margin-bottom: 20px;
	display: flex;
	justify-content: space-between;
	gap: 10px;
}
.bible-result__box {
	border: 1px solid var(--scbbc-border);
	border-radius: var(--scbbc-radius);
	background: #fff;
	padding: 14px;
	/* 요청: 본문이 너무 짧지 않게 */
	min-height: 420px;
}

/* 성경검색기: 검색 결과 무한스크롤 로딩 UI */
.bible-loadmore {
	margin-top: 10px;
	padding: 12px 12px;
	border: 1px dashed rgba(148, 163, 184, 0.55);
	border-radius: 12px;
	background: rgba(2, 6, 23, 0.015);
	color: var(--scbbc-muted);
	font-size: 13px;
	line-height: 1.5;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.6s ease, transform 0.6s ease;
}
.bible-loadmore.is-hidden {
	display: none;
}
.bible-loadmore.is-fadeout {
	opacity: 0;
	transform: translateY(-6px);
}
.bible-loadmore__spinner {
	width: 18px;
	height: 18px;
	border-radius: 999px;
	border: 2px solid rgba(148, 163, 184, 0.45);
	border-top-color: var(--scbbc-primary);
	flex: 0 0 auto;
	animation: scbbcSpin 0.9s linear infinite;
	margin-top: 2px;
}
.bible-loadmore.is-done .bible-loadmore__spinner {
	display: none;
}
.bible-loadmore.is-done {
	align-items: center;
	gap: 0;
	justify-content: center;
}
.bible-loadmore.is-done .bible-loadmore__text {
	text-align: center;
}
.bible-loadmore__text b {
	color: #0f172a;
	font-weight: 900;
}
@keyframes scbbcSpin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

/* Mobile: 하단 고정 미니 컨트롤 바(이전/다음/보기/맨위로) */
.bible-fabbar {
	position: fixed;
	left: 50%;
	transform: translateX(-50%) translateY(10px);
	bottom: calc(12px + env(safe-area-inset-bottom, 0px));
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(148, 163, 184, 0.35);
	box-shadow: 0 12px 28px rgba(2, 6, 23, 0.18);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}
.bible-fabbar.is-show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}
.bible-fab {
	width: 44px;
	height: 44px;
	border-radius: 999px;
	border: 1px solid rgba(148, 163, 184, 0.35);
	background: rgba(2, 6, 23, 0.02);
	color: rgba(15, 23, 42, 0.92);
	display: grid;
	place-items: center;
	cursor: pointer;
}
.bible-fab svg {
	width: 22px;
	height: 22px;
	display: block;
}
.bible-fab:hover {
	background: rgba(2, 6, 23, 0.04);
}
.bible-fab:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}
.bible-fab--view {
	border-color: rgba(37, 99, 235, 0.28);
	background: rgba(37, 99, 235, 0.1);
	color: #0b2a5b;
}
.bible-fab__sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (max-width: 1023px) {
	/* 하단 바가 본문을 가리지 않도록 여유 */
	.bible-result__box {
		padding-bottom: 84px;
	}
}

/* Desktop: 덜 방해되게 우측 하단으로 */
@media (min-width: 1024px) {
	.bible-fabbar {
		/* 요청: PC에서도 본문 가운데로(중앙 정렬 유지) */
		left: 50%;
		right: auto;
		transform: translateX(-50%) translateY(10px);
		border-radius: 999px;
	}
	.bible-fabbar.is-show {
		transform: translateX(-50%) translateY(0);
	}
}
.bible-verse {
	padding: 10px 8px;
	border-bottom: 1px dashed rgba(148, 163, 184, 0.5);
}
.bible-verse:last-child {
	border-bottom: 0;
}
.bible-verse__ref {
	font-weight: 900;
	font-size: 13px;
	margin-bottom: 4px;
}
.bible-verse__text {
	font-size: 15px;
	line-height: 1.65;
	color: #0f172a;
}
.bible-verse__actions {
	display: flex;
	gap: 8px;
	margin-top: 10px;
}
.bible-mini {
	border: 1px solid rgba(148, 163, 184, 0.35);
	background: rgba(2, 6, 23, 0.02);
	border-radius: 10px;
	padding: 8px 10px;
	font-weight: 900;
	font-size: 12px;
	cursor: pointer;
}
.bible-mini:hover {
	background: rgba(2, 6, 23, 0.04);
}
.bible-mini--edit {
	border-color: rgba(99, 102, 241, 0.35);
	background: rgba(99, 102, 241, 0.08);
	color: #3730a3;
}
.bible-mini--edit:hover {
	border-color: rgba(99, 102, 241, 0.55);
	background: rgba(99, 102, 241, 0.12);
}

/* Modal (admin verse edit) */
.scbbc-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
.scbbc-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.5);
	backdrop-filter: blur(6px);
}
.scbbc-modal__panel {
	position: relative;
	width: min(720px, 100%);
	max-height: min(86vh, 900px);
	overflow: auto;
	background: #fff;
	border: 1px solid rgba(148, 163, 184, 0.4);
	border-radius: 14px;
	box-shadow: 0 30px 90px rgba(2, 6, 23, 0.35);
}
.scbbc-modal__hd {
	position: sticky;
	top: 0;
	background: linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0.92) 100%);
	border-bottom: 1px solid rgba(148, 163, 184, 0.35);
	padding: 14px 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}
.scbbc-modal__title {
	font-size: 15px;
	font-weight: 900;
	color: #0f172a;
}
.scbbc-modal__x {
	appearance: none;
	border: 0;
	background: rgba(15, 23, 42, 0.06);
	color: #0f172a;
	border-radius: 10px;
	width: 40px;
	height: 40px;
	display: grid;
	place-items: center;
	cursor: pointer;
}
.scbbc-modal__x svg {
	width: 20px;
	height: 20px;
}
.scbbc-modal__body {
	padding: 14px 16px 4px;
}
.scbbc-modal__ref {
	font-weight: 900;
	color: #111827;
	margin-bottom: 10px;
}
.scbbc-modal__label {
	display: block;
	font-size: 12px;
	font-weight: 800;
	color: #475569;
	margin: 10px 0 6px;
}
.scbbc-modal__textarea {
	width: 100%;
	border: 1px solid rgba(148, 163, 184, 0.55);
	border-radius: 12px;
	padding: 12px 12px;
	font-size: 14px;
	line-height: 1.6;
	resize: vertical;
	min-height: 120px;
}
.scbbc-modal__hint {
	font-size: 12px;
	color: #64748b;
	margin-top: 8px;
}
.scbbc-modal__en {
	margin-top: 12px;
}
.scbbc-modal__enbox {
	border: 1px solid rgba(148, 163, 184, 0.35);
	background: rgba(248, 250, 252, 0.85);
	border-radius: 12px;
	padding: 12px;
	color: #475569;
	line-height: 1.7;
	white-space: pre-wrap;
}
.scbbc-modal__ft {
	position: sticky;
	bottom: 0;
	background: linear-gradient(0deg, #ffffff 0%, rgba(255, 255, 255, 0.92) 100%);
	border-top: 1px solid rgba(148, 163, 184, 0.35);
	padding: 12px 16px;
	display: flex;
	justify-content: flex-end;
	gap: 10px;
}
.scbbc-btn {
	appearance: none;
	border: 1px solid rgba(148, 163, 184, 0.55);
	background: #fff;
	color: #0f172a;
	font-weight: 900;
	border-radius: 12px;
	padding: 10px 14px;
	cursor: pointer;
}
.scbbc-btn--primary {
	border-color: rgba(99, 102, 241, 0.55);
	background: rgba(99, 102, 241, 0.14);
	color: #312e81;
}
.scbbc-btn--ghost {
	background: rgba(15, 23, 42, 0.04);
}
.bible-mark {
	background: var(--scbbc-mark);
	border-radius: 6px;
	padding: 0 0.18em;
}

/* Bible (chapter view): 책 읽는 형태 */
.bible-reading {
	max-width: 72ch;
	margin: 0 auto;
}
.bible-reading.is-bilingual {
	max-width: 1200px;
}
.bible-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	align-items: start;
	padding: 6px 0;
}
.bible-row + .bible-row {
	border-top: 1px dashed rgba(148, 163, 184, 0.3);
}
.bible-col--en {
	color: #0f172a;
}
.bible-line {
	margin: 0;
	padding: 8px 2px;
	font-size: 16px;
	line-height: 1.95;
	color: #0f172a;
}
.bible-reading:not(.is-bilingual) .bible-line + .bible-line {
	border-top: 1px dashed rgba(148, 163, 184, 0.35);
}
.bible-line--en {
	color: rgba(15, 23, 42, 0.86);
	font-size: 15px;
}
.bible-vno {
	font-size: 12px;
	font-weight: 900;
	color: rgba(71, 85, 105, 0.7);
	margin-right: 6px;
}
.bible-refInline {
	display: inline-block;
	margin-right: 6px;
	font-weight: 900;
	color: rgba(15, 23, 42, 0.86);
	letter-spacing: -0.01em;
	white-space: nowrap;
}
.bible-parenRef {
	color: rgba(71, 85, 105, 0.78);
	font-weight: 800;
	font-size: 12px;
	margin-left: 6px;
	white-space: nowrap;
}

.bible-verse__en {
	margin-top: 6px;
	padding-top: 6px;
	border-top: 1px dashed rgba(148, 163, 184, 0.3);
	color: rgba(15, 23, 42, 0.78);
	font-size: 13px;
	line-height: 1.7;
}
.bible-verse__paren {
	color: rgba(71, 85, 105, 0.78);
	font-weight: 800;
	font-size: 12px;
	margin-left: 6px;
	white-space: nowrap;
}

/* Mobile: 한영대역은 위(한글) / 아래(영문) */
@media (max-width: 1023px) {
	.bible-reading.is-bilingual {
		max-width: 72ch;
	}
	.bible-row {
		grid-template-columns: 1fr;
		gap: 6px;
		padding: 10px 0;
	}
	.bible-row + .bible-row {
		border-top: 1px dashed rgba(148, 163, 184, 0.3);
	}
	.bible-col--en {
		padding-left: 14px;
		border-left: 3px solid rgba(148, 163, 184, 0.25);
	}
	.bible-line--en {
		font-size: 14px;
	}
}

.bible-toast {
	position: fixed;
	left: 50%;
	bottom: 16px;
	transform: translateX(-50%);
	background: rgba(15, 23, 42, 0.92);
	color: #fff;
	padding: 10px 12px;
	border-radius: 999px;
	font-weight: 800;
	font-size: 13px;
	z-index: 9999;
	display: none;
}
.bible-toast.is-show {
	display: block;
}

/* Responsive */
@media (min-width: 900px) {
	.scbbc-nav {
		display: flex;
	}
	.scbbc-mobile-toggle {
		display: none;
	}
	.scbbc-bible__grid {
		grid-template-columns: 320px 1fr;
		align-items: start;
	}
	.bible-chapter-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.scbbc-offcanvas,
	.scbbc-offcanvas__backdrop,
	.scbbc-offcanvas__panel {
		transition: none !important;
	}
}

/* -----------------------------
 * Home Skeleton UI
 * ----------------------------- */
.scbbc-home {
	/* 요청: scbbc-home padding 제거 */
	padding: 0;
}
.scbbc-home .scbbc-container {
	/* 요청: 메인 컨테이너 상단 여백 제거 */
	padding-top: 0;
}
.scbbc-fullbleed {
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}
.scbbc-home__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
.scbbc-home__hero {
	border-radius: 18px;
	border: 1px solid var(--scbbc-border);
	background: #fff;
	box-shadow: var(--scbbc-shadow);
	overflow: hidden;
}
.scbbc-home__hero.is-fullbleed {
	border-radius: 0;
	border-left: 0;
	border-right: 0;
	border-top: 0;
}
.scbbc-hero {
	position: relative;
	min-height: 460px;
	background: linear-gradient(135deg, rgba(11, 42, 91, 0.92), rgba(37, 99, 235, 0.72));
}
.scbbc-hero__overlay {
	position: absolute;
	inset: 0;
	background: radial-gradient(900px 280px at 10% 20%, rgba(255, 255, 255, 0.18), transparent 60%), radial-gradient(700px 260px at 80% 35%, rgba(255, 255, 255, 0.12), transparent 65%);
}
.scbbc-hero__content {
	position: relative;
	padding: 26px;
	color: #fff;
}
.scbbc-hero__content.is-overlayHeader {
	/* 메인에서 header가 배너 위로 올라오므로, 콘텐츠는 헤더 높이만큼 내려준다 */
	padding-top: calc(26px + var(--scbbc-header-h));
}
.scbbc-hero__kicker {
	opacity: 0.9;
	font-weight: 800;
	letter-spacing: 0.02em;
	font-size: 12px;
}
.scbbc-hero__title {
	margin-top: 10px;
	font-weight: 950;
	font-size: clamp(24px, 3vw, 40px);
	letter-spacing: -0.03em;
}
.scbbc-hero__desc {
	margin-top: 10px;
	max-width: 52ch;
	opacity: 0.92;
	line-height: 1.6;
}
.scbbc-hero__cta {
	margin-top: 16px;
	display: inline-flex;
	gap: 10px;
}
.scbbc-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.22);
	font-weight: 900;
	color: #fff;
	backdrop-filter: blur(8px);
}
.scbbc-dot {
	display: inline-block;
	width: 4px;
	height: 4px;
	border-radius: 999px;
	background: rgba(148, 163, 184, 0.9);
	vertical-align: middle;
	margin: 0 8px;
}
.scbbc-hero__nav {
	position: absolute;
	right: 14px;
	bottom: 14px;
	display: flex;
	gap: 8px;
}
.scbbc-hero__dot {
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.35);
}
.scbbc-hero__dot.is-active {
	background: rgba(255, 255, 255, 0.92);
}

.scbbc-home__rail {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}
.scbbc-card {
	border-radius: 18px;
	border: 1px solid var(--scbbc-border);
	background: #fff;
	box-shadow: var(--scbbc-shadow);
	overflow: hidden;
	padding: 16px;
}
.scbbc-card__title {
	font-weight: 950;
	letter-spacing: -0.02em;
	margin-bottom: 10px;
}
.scbbc-media {
	position: relative;
	border-radius: 18px;
	border: 1px solid var(--scbbc-border);
	overflow: hidden;
	background: #fff;
	box-shadow: var(--scbbc-shadow);
}
.scbbc-media--16x9 {
	aspect-ratio: 16 / 9;
}
.scbbc-media--4x3 {
	aspect-ratio: 4 / 3;
}
.scbbc-media--1x1 {
	aspect-ratio: 1 / 1;
}
.scbbc-media__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.scbbc-heroCard {
	position: relative;
	border-radius: 18px;
	overflow: hidden;
	border: 1px solid var(--scbbc-border);
	box-shadow: var(--scbbc-shadow);
	background: linear-gradient(135deg, rgba(11, 42, 91, 0.92), rgba(37, 99, 235, 0.72));
}
.scbbc-heroCard__inner {
	position: relative;
	padding: 22px;
	color: #fff;
}
.scbbc-heroCard__kicker {
	opacity: 0.92;
	font-weight: 900;
	font-size: 12px;
	letter-spacing: 0.02em;
}
.scbbc-heroCard__title {
	margin-top: 10px;
	font-weight: 950;
	letter-spacing: -0.03em;
	font-size: clamp(22px, 2.4vw, 34px);
}
.scbbc-heroCard__desc {
	margin-top: 10px;
	opacity: 0.92;
	max-width: 64ch;
	line-height: 1.65;
}
.scbbc-heroCard__bg {
	position: absolute;
	inset: 0;
	background: radial-gradient(900px 280px at 12% 18%, rgba(255, 255, 255, 0.18), transparent 60%), radial-gradient(700px 260px at 86% 35%, rgba(255, 255, 255, 0.12), transparent 65%);
}
.scbbc-pillRow {
	margin-top: 14px;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 10px;
}
.scbbc-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.22);
	font-weight: 900;
	color: #fff;
	backdrop-filter: blur(8px);
}
.scbbc-ico {
	width: 18px;
	height: 18px;
	display: inline-block;
	/* svg 인라인 사용: 색상은 currentColor로 제어 */
	color: currentColor;
	flex: 0 0 auto;
}
.scbbc-iconCard {
	display: grid;
	grid-template-columns: 44px 1fr;
	gap: 12px;
	align-items: start;
	padding: 14px;
	border-radius: 16px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: rgba(2, 6, 23, 0.02);
}
.scbbc-iconCard__ico {
	width: 44px;
	height: 44px;
	border-radius: 16px;
	display: grid;
	place-items: center;
	background: #fff;
	border: 1px solid rgba(226, 232, 240, 0.9);
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.05);
}
.scbbc-iconCard__title {
	font-weight: 950;
	letter-spacing: -0.02em;
}
.scbbc-iconCard__desc {
	margin-top: 6px;
	color: var(--scbbc-muted);
	line-height: 1.7;
	font-size: 13px;
}

/* Profile card (Pastor) */
.scbbc-profile {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 14px;
	align-items: start;
	padding: 14px;
	border-radius: 16px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: rgba(2, 6, 23, 0.02);
}
.scbbc-profile__photo {
	width: 120px;
	border-radius: 16px;
	overflow: hidden;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: #fff;
	aspect-ratio: 4 / 5;
}
.scbbc-profile__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.scbbc-profile__name {
	font-weight: 950;
	letter-spacing: -0.02em;
}
.scbbc-profile__role {
	margin-top: 4px;
	color: var(--scbbc-muted);
	font-weight: 800;
	font-size: 13px;
}
.scbbc-profile__desc {
	margin-top: 10px;
	color: var(--scbbc-muted);
	line-height: 1.75;
}
.scbbc-profile__chips {
	margin-top: 12px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.scbbc-profile__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 10px;
	border-radius: 999px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: #fff;
	font-weight: 900;
	font-size: 12px;
	color: rgba(15, 23, 42, 0.92);
}
.scbbc-profile__chip img {
	width: 14px;
	height: 14px;
	object-fit: contain;
}
@media (min-width: 980px) {
	.scbbc-profile {
		grid-template-columns: 150px 1fr;
	}
	.scbbc-profile__photo {
		width: 150px;
	}
}

/* Bible: chapter title 강조 */
#scbbcBibleApp.is-chapter #scbbcResultMetaLeft {
	font-size: 26px;
	font-weight: 950;
	letter-spacing: -0.02em;
	color: rgba(15, 23, 42, 0.96);
}
#scbbcBibleApp.is-chapter .bible-result__meta {
	align-items: baseline;
}

.scbbc-timeline {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
.scbbc-timelineItem {
	border-radius: 16px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: #fff;
	padding: 14px;
	position: relative;
	overflow: hidden;
}
.scbbc-timelineItem::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: linear-gradient(180deg, rgba(37, 99, 235, 0.9), rgba(11, 42, 91, 0.9));
}
.scbbc-timelineItem__year {
	font-weight: 950;
	letter-spacing: -0.02em;
}
.scbbc-timelineItem__list {
	margin: 8px 0 0;
	padding-left: 18px;
	color: var(--scbbc-muted);
	line-height: 1.7;
}

@media (min-width: 980px) {
	.scbbc-timeline {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* -----------------------------
 * History Graph (최신순 타임라인/연대그래프)
 * ----------------------------- */
.scbbc-historyGraph {
	position: relative;
	margin-top: 6px;
	display: grid;
	gap: 14px;
}
.scbbc-historyGraph__axis {
	position: absolute;
	left: 14px;
	top: 0;
	bottom: 0;
	width: 2px;
	background: linear-gradient(180deg, rgba(2, 6, 23, 0.1), rgba(2, 6, 23, 0.04));
}
.scbbc-historyGraph__item {
	position: relative;
	padding-left: 42px;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.38s ease, transform 0.38s ease;
}
.scbbc-historyGraph__item.is-in {
	opacity: 1;
	transform: translateY(0);
}
.scbbc-historyGraph {
	/* 요청: 너무 알록달록하지 않도록 단일 톤(네이비/그레이) */
	--scbbc-accent: rgba(11, 42, 91, 0.92);
}
.scbbc-historyGraph__dot {
	position: absolute;
	left: 7px;
	top: 18px;
	width: 16px;
	height: 16px;
	border-radius: 999px;
	background: #fff;
	border: 2px solid rgba(2, 6, 23, 0.22);
	box-shadow: 0 10px 25px rgba(2, 6, 23, 0.1);
}
.scbbc-historyGraph__dot::after {
	content: '';
	position: absolute;
	inset: 3px;
	border-radius: 999px;
	background: rgba(11, 42, 91, 0.68);
}
.scbbc-historyGraph__card {
	border: 1px solid rgba(2, 6, 23, 0.1);
	border-radius: 20px;
	background: radial-gradient(900px 180px at 0% 0%, rgba(37, 99, 235, 0.06), transparent 65%), linear-gradient(180deg, #fff, rgba(2, 6, 23, 0.012));
	padding: 16px;
	position: relative;
	overflow: hidden;
	box-shadow: 0 18px 40px rgba(2, 6, 23, 0.06);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}
.scbbc-historyGraph__item:hover .scbbc-historyGraph__card {
	transform: translateY(-2px);
	border-color: rgba(2, 6, 23, 0.16);
	box-shadow: 0 22px 60px rgba(2, 6, 23, 0.1);
}
.scbbc-historyGraph__top {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 12px;
}
.scbbc-historyGraph__year {
	display: flex;
	align-items: baseline;
	gap: 6px;
	line-height: 1;
	position: relative;
}
/* 타이포그래피 임팩트: 큰 연도 + 카드 배경 워터마크 */
.scbbc-historyGraph__card::after {
	content: attr(data-year);
	position: absolute;
	right: 16px;
	top: 10px;
	font-weight: 950;
	font-size: 64px;
	letter-spacing: -0.04em;
	color: rgba(2, 6, 23, 0.06);
	pointer-events: none;
}
.scbbc-historyGraph__yearNum {
	font-weight: 950;
	letter-spacing: -0.04em;
	font-size: 34px;
	color: rgba(15, 23, 42, 0.95);
}
.scbbc-historyGraph__yearUnit {
	font-weight: 900;
	font-size: 14px;
	color: rgba(71, 85, 105, 0.85);
}
/* 그래프바 제거(불필요) */
.scbbc-historyGraph__list {
	margin: 12px 0 0;
	padding-left: 18px;
	color: var(--scbbc-muted);
	line-height: 1.75;
}

@media (min-width: 980px) {
	.scbbc-historyGraph {
		grid-template-columns: 1fr;
	}
	.scbbc-historyGraph__axis {
		left: 18px;
	}
	.scbbc-historyGraph__item {
		padding-left: 54px;
	}
	.scbbc-historyGraph__dot {
		left: 10px;
	}
}

/* -----------------------------
 * History Stepper (년도 좌 / 내용 우)
 * ----------------------------- */
.scbbc-stepper {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
}
.scbbc-stepper__nav {
	display: flex;
	gap: 10px;
	overflow: auto;
	padding-bottom: 6px;
}
.scbbc-stepper__year {
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: rgba(2, 6, 23, 0.02);
	border-radius: 999px;
	padding: 10px 12px;
	font-weight: 950;
	cursor: pointer;
	white-space: nowrap;
}
.scbbc-stepper__year.is-active {
	background: rgba(37, 99, 235, 0.1);
	border-color: rgba(37, 99, 235, 0.28);
	color: #0b2a5b;
}
.scbbc-stepper__panel {
	border: 1px solid rgba(226, 232, 240, 0.9);
	border-radius: 16px;
	background: #fff;
	padding: 14px;
	position: relative;
	overflow: hidden;
}
.scbbc-stepper__panel::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: linear-gradient(180deg, rgba(37, 99, 235, 0.9), rgba(11, 42, 91, 0.9));
}
.scbbc-stepper__content {
	display: none;
}
.scbbc-stepper__content.is-active {
	display: block;
}
.scbbc-stepper__heading {
	font-weight: 950;
	letter-spacing: -0.02em;
}
.scbbc-stepper__list {
	margin: 10px 0 0;
	padding-left: 18px;
	color: var(--scbbc-muted);
	line-height: 1.75;
}
@media (min-width: 980px) {
	.scbbc-stepper {
		grid-template-columns: 220px 1fr;
		align-items: start;
	}
	.scbbc-stepper__nav {
		flex-direction: column;
		overflow: visible;
		position: sticky;
		top: calc(var(--scbbc-header-h) + 16px);
		padding-bottom: 0;
	}
}
.scbbc-kpi {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}
.scbbc-kpi__box {
	border-radius: 14px;
	border: 1px dashed rgba(148, 163, 184, 0.65);
	padding: 12px;
	background: linear-gradient(180deg, rgba(2, 6, 23, 0.02), transparent);
}

/* Skeleton blocks */
.scbbc-skel {
	position: relative;
	overflow: hidden;
	background: linear-gradient(90deg, rgba(15, 23, 42, 0.06), rgba(15, 23, 42, 0.1), rgba(15, 23, 42, 0.06));
	background-size: 220% 100%;
	animation: scbbcShimmer 1.35s ease-in-out infinite;
	border-radius: 12px;
}
@keyframes scbbcShimmer {
	0% {
		background-position: 0% 0;
	}
	100% {
		background-position: 200% 0;
	}
}
.scbbc-skel.line {
	height: 14px;
	border-radius: 999px;
}
.scbbc-skel.line.lg {
	height: 18px;
}
.scbbc-skel.block {
	height: 120px;
}
.scbbc-skel.hero {
	height: 42px;
	border-radius: 14px;
}
.scbbc-skel.pill {
	height: 36px;
	border-radius: 999px;
}

/* seen 상태(스크롤 진입) — shimmer 멈추고 'ready'로 전환 */
[data-scbbc-skeleton].is-ready .scbbc-skel {
	animation: none;
	background: rgba(15, 23, 42, 0.08);
}
[data-scbbc-skeleton].is-ready .scbbc-skel::after {
	content: '콘텐츠 준비중';
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	color: rgba(71, 85, 105, 0.75);
	font-weight: 900;
	font-size: 12px;
	letter-spacing: 0.02em;
}

@media (min-width: 980px) {
	.scbbc-home__grid {
		grid-template-columns: 1.55fr 0.85fr;
		align-items: start;
	}
	.scbbc-hero {
		min-height: 420px;
	}
}

/* -----------------------------
 * Bible Search: 좌/우 동일 높이 + scroll-y
 * ----------------------------- */
@media (min-width: 900px) {
	.scbbc-bible__grid {
		/* 요청: 본문이 너무 짧지 않게(페이지 스크롤을 허용) + 좌측은 sticky */
		grid-template-columns: 320px 1fr;
		align-items: start;
	}
	.scbbc-bible__panel--left {
		position: sticky;
		top: calc(var(--scbbc-header-h) + 16px);
		max-height: calc(100vh - var(--scbbc-header-h) - 32px);
		overflow-y: auto;
		overflow-x: hidden;
		overscroll-behavior: contain;
	}
	.scbbc-bible__panel--right {
		/* 우측은 자연스럽게 페이지 스크롤을 사용하되,
       결과 박스는 충분히 커지도록 최소 높이를 부여 */
	}
	.bible-result__box {
		min-height: 560px;
	}
}

/* (removed) 좌측 패널 전용 스크롤바 커스텀: 전역 스크롤바 규칙으로 통일 */

/* 성경검색기: 장 버튼(섹션 구분 디자인에 맞춘 미세 조정) */
.bible-section.is-chapter .bible-chapter-grid {
	gap: 8px;
}
.bible-section.is-chapter .bible-chapter-btn {
	padding: 8px 0;
}

/* -----------------------------
 * Footer (Tailwind 미사용)
 * ----------------------------- */
.scbbc-footer {
	border-top: 1px solid var(--scbbc-border);
	background: #fff;
	padding: 34px 0;
}
.scbbc-footer__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}
.scbbc-footer__title {
	font-weight: 950;
	letter-spacing: -0.02em;
	font-size: 16px;
}
.scbbc-footer__verse {
	margin-top: 10px;
	color: var(--scbbc-muted);
	line-height: 1.65;
	font-size: 13px;
	max-width: 62ch;
}
.scbbc-footer__meta {
	margin-top: 12px;
	color: rgba(71, 85, 105, 0.85);
	font-size: 12px;
	font-weight: 700;
}
.scbbc-footer__links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 12px;
}
.scbbc-footer__link {
	display: inline-flex;
	align-items: center;
	padding: 10px 12px;
	border-radius: 999px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: rgba(2, 6, 23, 0.02);
	font-weight: 800;
	font-size: 13px;
	color: rgba(15, 23, 42, 0.92);
}
.scbbc-footer__link:hover {
	background: rgba(2, 6, 23, 0.04);
}
.scbbc-footer__social {
	display: flex;
	gap: 10px;
	align-items: center;
}
.scbbc-footer__icon {
	width: 40px;
	height: 40px;
	border-radius: 14px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	background: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.05);
}
.scbbc-footer__icon img {
	width: 18px;
	height: 18px;
	object-fit: contain;
}

@media (min-width: 980px) {
	.scbbc-footer__grid {
		grid-template-columns: 1.2fr 1fr auto;
		align-items: start;
	}
	.scbbc-footer__links {
		justify-content: flex-start;
	}
}

/* -----------------------------
 * KJV / Compare / Guide page components
 * ----------------------------- */
.scbbc-prose {
	color: #0f172a;
	line-height: 1.75;
}
.scbbc-prose p {
	margin: 0 0 10px;
}
.scbbc-prose p:last-child {
	margin-bottom: 0;
}
.scbbc-prose a {
	color: var(--scbbc-primary);
	font-weight: 850;
}
.scbbc-prose ul {
	margin: 10px 0 0;
	padding-left: 18px;
}
.scbbc-prose li {
	margin: 6px 0;
}
.scbbc-prose code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
	font-size: 0.95em;
	background: rgba(2, 6, 23, 0.06);
	border-radius: 8px;
	padding: 0.12em 0.38em;
}
.scbbc-heroCard__ref {
	opacity: 0.9;
	font-weight: 800;
}
.scbbc-grid2 {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
@media (min-width: 980px) {
	.scbbc-grid2 {
		grid-template-columns: 1fr 1fr;
	}
}
.scbbc-featureGrid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}
@media (min-width: 980px) {
	.scbbc-featureGrid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.scbbc-feature {
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 16px;
	background: linear-gradient(180deg, #fff, rgba(2, 6, 23, 0.01));
	padding: 14px;
}
.scbbc-feature__ico {
	width: 40px;
	height: 40px;
	border-radius: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(37, 99, 235, 0.1);
	border: 1px solid rgba(37, 99, 235, 0.18);
}
.scbbc-feature__title {
	margin-top: 10px;
	font-weight: 950;
}
.scbbc-feature__desc {
	margin-top: 6px;
	color: var(--scbbc-muted);
	line-height: 1.65;
}

.scbbc-productGrid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	margin-top: 12px;
}
@media (min-width: 980px) {
	.scbbc-productGrid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.scbbc-product {
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 18px;
	background: linear-gradient(180deg, #fff, rgba(2, 6, 23, 0.01));
	padding: 16px;
	position: relative;
	overflow: hidden;
}
.scbbc-product__badge {
	position: absolute;
	top: 14px;
	right: 14px;
	font-weight: 950;
	font-size: 12px;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(245, 158, 11, 0.16);
	border: 1px solid rgba(245, 158, 11, 0.25);
	color: #92400e;
}
.scbbc-product__badge.is-soft {
	background: rgba(16, 185, 129, 0.14);
	border-color: rgba(16, 185, 129, 0.22);
	color: #065f46;
}
.scbbc-product__badge.is-dark {
	background: rgba(2, 6, 23, 0.12);
	border-color: rgba(2, 6, 23, 0.18);
	color: #0f172a;
}
.scbbc-product__title {
	font-weight: 950;
	font-size: 16px;
}
.scbbc-product__desc {
	margin-top: 6px;
	color: var(--scbbc-muted);
	line-height: 1.65;
}
.scbbc-product__meta {
	margin-top: 10px;
	color: var(--scbbc-muted);
	font-size: 13px;
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}
.scbbc-product__cta {
	margin-top: 12px;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
.scbbc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border-radius: 14px;
	padding: 10px 12px;
	border: 1px solid rgba(37, 99, 235, 0.28);
	background: rgba(37, 99, 235, 0.1);
	color: #0b2a5b;
	font-weight: 900;
}
.scbbc-btn:hover {
	background: rgba(37, 99, 235, 0.14);
}
.scbbc-btn--ghost {
	border-color: rgba(148, 163, 184, 0.35);
	background: rgba(2, 6, 23, 0.02);
	color: #0f172a;
}
.scbbc-btn--ghost:hover {
	background: rgba(2, 6, 23, 0.04);
}
.scbbc-note {
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 16px;
	padding: 12px 14px;
	background: rgba(2, 6, 23, 0.02);
	color: #0f172a;
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.scbbc-note__sep {
	width: 6px;
	height: 6px;
	border-radius: 99px;
	background: rgba(148, 163, 184, 0.7);
}

/* Compare */
.scbbc-compare {
	display: grid;
	gap: 14px;
}
.scbbc-compareRow__ref {
	font-weight: 950;
	margin-bottom: 8px;
	letter-spacing: -0.01em;
}
.scbbc-compareRow__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
@media (min-width: 980px) {
	.scbbc-compareRow__grid {
		grid-template-columns: 1fr 1fr;
	}
}
.scbbc-compareCard {
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 18px;
	background: #fff;
	padding: 14px;
}
.scbbc-compareCard__badge {
	display: inline-flex;
	align-items: center;
	padding: 6px 10px;
	border-radius: 999px;
	font-weight: 950;
	font-size: 12px;
	margin-bottom: 10px;
}
.scbbc-compareCard.is-kjv .scbbc-compareCard__badge {
	background: rgba(11, 42, 91, 0.12);
	border: 1px solid rgba(11, 42, 91, 0.18);
	color: #0b2a5b;
}
.scbbc-compareCard.is-rev .scbbc-compareCard__badge {
	background: rgba(148, 163, 184, 0.18);
	border: 1px solid rgba(148, 163, 184, 0.28);
	color: #0f172a;
}
.scbbc-compareCard__text {
	line-height: 1.75;
	color: #0f172a;
}

/* Guide */
.scbbc-steps {
	display: grid;
	gap: 12px;
}
.scbbc-step {
	display: flex;
	gap: 12px;
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 18px;
	background: #fff;
	padding: 14px;
}
.scbbc-step__no {
	width: 36px;
	height: 36px;
	border-radius: 14px;
	background: rgba(16, 185, 129, 0.14);
	border: 1px solid rgba(16, 185, 129, 0.22);
	color: #065f46;
	font-weight: 950;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}
.scbbc-step__title {
	font-weight: 950;
}
.scbbc-step__desc {
	margin-top: 6px;
	color: var(--scbbc-muted);
	line-height: 1.65;
}
.scbbc-faq {
	display: grid;
	gap: 10px;
}
.scbbc-faq__item {
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 18px;
	padding: 10px 12px;
	background: rgba(2, 6, 23, 0.01);
}
.scbbc-faq__q {
	cursor: pointer;
	font-weight: 900;
	color: #0f172a;
}
.scbbc-faq__a {
	margin-top: 10px;
	color: var(--scbbc-muted);
	line-height: 1.7;
}
