/*
Theme Name: TKOR Lab Child
Theme URI: https://tk.local
Description: GeneratePress 자식 테마 — TKOR Lab 전용 다크 패널 디자인 (헤더·카드·사이드바·푸터를 동일 다크 톤으로 통일 + 다크 스테이트먼트 히어로 + 카드형 글목록 + 브랜드 커버 자동생성). 모든 디자인을 파일로 담아 파일매니저 이전이 가능하도록 구성했습니다.
Author: TKOR Lab
Template: generatepress
Version: 1.1.0
Text Domain: tkor-child
*/

/* =====================================================================
   0. 디자인 토큰 (미니멀 에디토리얼)
   ===================================================================== */
:root {
	--tkor-bg:         #121110; /* 전체 배경 = 다크(패널 #1C1B1A 보다 어둡게 → 카드가 떠 보임) */
	--tkor-surface:    #FFFFFF;  /* 단일 글/페이지 리딩 카드(가독성용 밝은 배경) */
	--tkor-ink:        #1C1B1A;
	--tkor-ink-soft:   #5C5A57;
	--tkor-ink-faint:  #8B8884;
	--tkor-line:       #E7E5E1;
	--tkor-line-soft:  #F0EEEA;
	--tkor-accent:     #E5484D;
	--tkor-accent-ink: #C2282D;
	--tkor-accent-bg:  #FCEDED;
	--tkor-footer:     #1C1B1A;
	/* 다크 패널(헤더·카드·사이드바·푸터 통일) */
	--tkor-panel:      #1C1B1A;
	--tkor-panel-2:    #211F1D;
	--tkor-on-dark:        rgba(255,255,255,.74);
	--tkor-on-dark-soft:   rgba(255,255,255,.56);
	--tkor-on-dark-faint:  rgba(255,255,255,.40);
	--tkor-dark-line:      rgba(255,255,255,.13);
	--tkor-accent-light:   #FF6B6F;
	--tkor-radius:     14px;
	--tkor-radius-sm:  9px;
	--tkor-shadow:     0 1px 2px rgba(28,27,26,.04), 0 8px 24px -12px rgba(28,27,26,.10);
	--tkor-shadow-lg:  0 24px 60px -28px rgba(28,27,26,.30);
	--tkor-serif:      Georgia, 'Times New Roman', 'Nanum Myeongjo', serif;
	--tkor-sans:       'Pretendard', -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', 'Malgun Gothic', 'Segoe UI', Roboto, sans-serif;
}

/* =====================================================================
   1. 전체 톤 / 타이포
   ===================================================================== */
body {
	background-color: var(--tkor-bg);
	color: var(--tkor-ink);
	font-family: var(--tkor-sans);
	-webkit-font-smoothing: antialiased;
	letter-spacing: -0.01em;
}
.entry-content,
.entry-summary { color: var(--tkor-ink); }

h1, h2, h3, h4, .entry-title, .widget-title {
	color: var(--tkor-ink);
	font-weight: 800;
	letter-spacing: -0.02em;
	word-break: keep-all; /* 한글 단어 중간 줄바꿈 방지 */
}

a { color: var(--tkor-accent-ink); text-decoration: none; }
a:hover { color: var(--tkor-accent); }

.grid-container { max-width: 1180px; }

/* 본문 링크 — 에디토리얼 밑줄 */
.entry-content a:not(.button):not(.wp-block-button__link) {
	color: var(--tkor-ink);
	background-image: linear-gradient(var(--tkor-accent), var(--tkor-accent));
	background-size: 100% 1px;
	background-position: 0 100%;
	background-repeat: no-repeat;
	padding-bottom: 1px;
	transition: background-size .15s ease, color .15s ease;
}
.entry-content a:not(.button):not(.wp-block-button__link):hover {
	color: var(--tkor-accent);
	background-size: 100% 2px;
}

/* 공통 버튼 톤 */
.tkor-btn {
	display: inline-flex; align-items: center; gap: .5em;
	background: var(--tkor-ink); color: #fff !important;
	font-weight: 700; font-size: .95rem; line-height: 1;
	padding: .85em 1.35em; border-radius: 999px;
	border: 1px solid var(--tkor-ink);
	transition: transform .12s ease, background .15s ease;
}
.tkor-btn:hover { background: var(--tkor-accent); border-color: var(--tkor-accent); color:#fff !important; transform: translateY(-1px); }
.tkor-btn--ghost { background: transparent; color: var(--tkor-ink) !important; }
.tkor-btn--ghost:hover { background: var(--tkor-ink); color:#fff !important; }
/* 다크 배경용 버튼 변형 */
.tkor-btn--accent { background: var(--tkor-accent); border-color: var(--tkor-accent); }
.tkor-btn--accent:hover { background: #fff; border-color:#fff; color: var(--tkor-ink) !important; }
.tkor-btn--lightghost { background: transparent; color:#fff !important; border-color: rgba(255,255,255,.32); }
.tkor-btn--lightghost:hover { background:#fff; border-color:#fff; color: var(--tkor-ink) !important; transform: translateY(-1px); }

/* 작은 라벨 (kicker) */
.tkor-kicker {
	display: inline-flex; align-items: center; gap: .5em;
	font-size: .72rem; font-weight: 800; letter-spacing: .14em;
	text-transform: uppercase; color: var(--tkor-accent-ink);
}
.tkor-kicker::before {
	content: ""; width: 22px; height: 2px; background: var(--tkor-accent); display:inline-block;
}

/* =====================================================================
   2. 헤더 / 내비게이션
   ===================================================================== */
/* 헤더 — 푸터와 동일한 다크 톤 + 상단 레드 액센트 바 */
.site-header {
	background: var(--tkor-panel);
	border-top: 3px solid var(--tkor-accent);
	border-bottom: 1px solid var(--tkor-dark-line);
}
.site-logo img, .header-image { max-height: 46px; width: auto; }

/* 사이트명 — 앞에 레드 마크 + 와이드 트래킹으로 특색 */
.main-title { font-weight: 900; letter-spacing: -0.02em; }
.main-title a {
	color: #fff; display: inline-flex; align-items: center; gap: 11px;
	text-transform: uppercase; letter-spacing: .02em;
}
.main-title a::before {
	content: ""; width: 11px; height: 22px; border-radius: 3px;
	background: var(--tkor-accent); flex: none;
	box-shadow: 0 0 0 4px rgba(229,72,77,.18);
}
.main-title a:hover { color: #fff; }
.main-title a:hover::before { transform: skewX(-8deg); transition: transform .2s ease; }
.site-description {
	color: var(--tkor-on-dark-soft); font-weight: 500;
	letter-spacing: .01em;
}

/* 내비게이션 — 다크 + 호버 시 레드 언더라인 슬라이드 */
.main-navigation {
	background: var(--tkor-panel);
	border-bottom: 1px solid var(--tkor-dark-line);
}
.main-navigation .main-nav ul li a {
	font-weight: 600; font-size: .92rem;
	color: var(--tkor-on-dark); letter-spacing: .01em;
	position: relative;
}
.main-navigation .main-nav ul li a::after {
	content: ""; position: absolute; left: 20px; right: 20px; bottom: 12px; height: 2px;
	background: var(--tkor-accent); transform: scaleX(0); transform-origin: left;
	transition: transform .22s ease;
}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item > a {
	color: #fff;
}
.main-navigation .main-nav ul li a:hover::after,
.main-navigation .main-nav ul li.current-menu-item > a::after { transform: scaleX(1); }
.main-navigation .menu-toggle { font-weight: 700; color:#fff; }
.main-navigation .menu-bar-items { color: var(--tkor-on-dark); }
/* 모바일 토글/서브메뉴 다크 */
.main-navigation ul ul { background: var(--tkor-panel-2); border: 1px solid var(--tkor-dark-line); }
.main-navigation .main-nav ul ul li a { color: var(--tkor-on-dark); }
/* 헤더 검색 */
.navigation-search input { background: var(--tkor-panel-2); color:#fff; border:0; }

/* 스티키 헤더(내비) 느낌 */
.main-navigation.sticky-enabled,
body:not(.mobile-header) .main-navigation { position: sticky; top: 0; z-index: 100; }

/* =====================================================================
   3. 첫 히어로 — 다크 스테이트먼트형
   ===================================================================== */
.tkor-hero {
	position: relative; overflow: hidden;
	/* 헤더/푸터(평면 #1C1B1A)와 구분되는 웜 다크 그라디언트 */
	background: linear-gradient(162deg, #2C2522 0%, #1B1714 56%, #141110 100%);
	color: #fff;
	border-bottom: 1px solid var(--tkor-dark-line);
}
/* 레드 글로우 */
.tkor-hero::before {
	content: ""; position: absolute; top: -35%; right: -8%; width: 58%; height: 170%;
	background: radial-gradient(closest-side, rgba(229,72,77,.32), rgba(229,72,77,0) 70%);
	pointer-events: none;
}
/* 도트 그리드 */
.tkor-hero__grid-bg {
	position: absolute; inset: 0; pointer-events: none; opacity: .55;
	background-image: radial-gradient(rgba(255,255,255,.06) 1.5px, transparent 1.5px);
	background-size: 26px 26px;
}
.tkor-hero__inner {
	position: relative; z-index: 1;
	max-width: 1180px; margin: 0 auto; padding: 88px 20px 78px;
}
.tkor-hero__tag {
	display: inline-block; font-size: .78rem; font-weight: 800; letter-spacing: .16em;
	text-transform: uppercase; color: var(--tkor-on-dark);
	border: 1px solid var(--tkor-dark-line); border-radius: 999px; padding: .5em 1.05em;
}
.tkor-hero__tag span { color: var(--tkor-accent-light); }
.tkor-hero__title {
	font-family: var(--tkor-serif);
	font-size: clamp(1.9rem, 4.4vw, 3.4rem); line-height: 1.12; font-weight: 800;
	letter-spacing: -0.02em; color: #fff; margin: .42em 0 0;
}
@media (min-width: 768px) { .tkor-hero__title { white-space: nowrap; } } /* 한 줄 처리 */
.tkor-hero__title em { color: var(--tkor-accent); font-style: normal; }
.tkor-hero__sub { color: var(--tkor-on-dark-soft); font-size: 1.1rem; line-height: 1.6; margin: 20px 0 0; max-width: 54ch; }
.tkor-hero__cta { display: flex; gap: 12px; margin-top: 30px; flex-wrap: wrap; }

.tkor-hero__meta {
	display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap;
	margin-top: 42px; padding-top: 26px; border-top: 1px solid var(--tkor-dark-line);
}
.tkor-hero__pills { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.tkor-hero__pillslabel { font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--tkor-on-dark-faint); margin-right: 4px; }
.tkor-pill {
	font-size: .86rem; font-weight: 600; color: var(--tkor-on-dark) !important;
	border: 1px solid var(--tkor-dark-line); border-radius: 999px; padding: .45em .95em;
	transition: background .15s ease, border-color .15s ease, transform .15s ease, color .15s ease;
}
.tkor-pill:hover { background: var(--tkor-accent); border-color: var(--tkor-accent); color: #fff !important; transform: translateY(-1px); }
.tkor-hero__stats { font-size: .92rem; color: var(--tkor-on-dark-faint); white-space: nowrap; }
.tkor-hero__stats b { color: #fff; font-weight: 800; }
@media (max-width: 600px) { .tkor-hero__inner { padding: 58px 20px 54px; } }

/* 브랜드 커버(대표이미지 없는 글) — 다크 */
.tkor-cover-wrap { background: var(--tkor-panel-2); }
.tkor-cover { display: block; width: 100%; height: 100%; }

/* =====================================================================
   4. 카드형 글 목록 (아카이브 / 홈)
   ===================================================================== */
.tkor-cards .site-main {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 26px;
}
/* 페이지네이션·아카이브 헤더 등은 전체폭 */
.tkor-cards .site-main > .paging-navigation,
.tkor-cards .site-main > .page-header,
.tkor-cards .site-main > .generate-columns-activated ~ * { grid-column: 1 / -1; }
.tkor-cards .paging-navigation { grid-column: 1 / -1; }

/* 아카이브/검색 제목 — 다크 배경에 맞춰 투명 + 흰 글씨 */
.tkor-cards .page-header {
	background: transparent; border: 0; box-shadow: none; padding: 4px 2px 20px;
}
.tkor-cards .page-header h1,
.tkor-cards .page-header .page-title { color: #fff; }
.tkor-cards .page-header p,
.tkor-cards .page-header .taxonomy-description { color: var(--tkor-on-dark-soft); }

.tkor-cards .site-main > article {
	background: var(--tkor-panel);
	border: 1px solid var(--tkor-dark-line);
	border-radius: var(--tkor-radius);
	overflow: hidden;
	margin: 0;
	display: flex; flex-direction: column;
	box-shadow: 0 14px 36px -22px rgba(0,0,0,.55);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.tkor-cards .site-main > article:hover {
	transform: translateY(-4px);
	box-shadow: 0 26px 50px -24px rgba(0,0,0,.65);
	border-color: rgba(229,72,77,.6);
}
.tkor-cards .inside-article { padding: 0; display: flex; flex-direction: column; height: 100%; background: transparent; box-shadow: none; }

/* 카드 이미지 (글 내 이미지 1장 = 대표이미지) */
.tkor-cards .inside-article .post-image,
.tkor-cards .inside-article .tkor-thumb {
	margin: 0; order: -1; display: block;
	aspect-ratio: 16/9; overflow: hidden; background: var(--tkor-panel-2);
}
.tkor-cards .inside-article .post-image a,
.tkor-cards .inside-article .tkor-thumb a { display: block; height: 100%; }
.tkor-cards .inside-article .post-image img,
.tkor-cards .inside-article .tkor-thumb img {
	width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease;
}
.tkor-cards .site-main > article:hover .post-image img,
.tkor-cards .site-main > article:hover .tkor-thumb img { transform: scale(1.05); }

/* 이미지 없는 글 — 플레이스홀더 */
.tkor-thumb--ph {
	aspect-ratio: 16/9; display: grid; place-items: center;
	background: linear-gradient(135deg, #f3f1ec, #e9e6df);
	color: var(--tkor-ink-faint); font-family: var(--tkor-serif);
	font-size: 1.4rem; font-weight: 800; letter-spacing: .04em;
}

.tkor-cards .entry-header { padding: 20px 22px 0; order: 1; }
.tkor-cards .entry-title { font-size: 1.22rem; line-height: 1.35; margin: 0 0 6px; }
.tkor-cards .entry-title a { color: #fff; }
.tkor-cards .entry-title a:hover { color: var(--tkor-accent-light); }
.tkor-cards .entry-summary { padding: 10px 22px 0; order: 2; color: var(--tkor-on-dark-soft); font-size: .95rem; line-height: 1.6; }
.tkor-cards .entry-summary p {
	display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden;
	margin: 0; /* 발췌문 위 불필요한 여백 제거 */
}
.tkor-cards .entry-meta { margin-bottom: 0; }

/* 더 읽기 링크 (발췌문 아래, 전체 글로 이동) */
.tkor-cards .tkor-more-wrap { order: 2; padding: 12px 22px 2px; }
.tkor-more {
	display: inline-flex; align-items: center; gap: .35em;
	font-weight: 700; font-size: .86rem; color: var(--tkor-accent-light);
	transition: gap .15s ease, color .15s ease;
}
.tkor-more:hover { color: #fff; gap: .6em; }
.tkor-cards .entry-meta {
	order: 3; padding: 16px 22px 20px; margin-top: auto;
	font-size: .8rem; color: var(--tkor-on-dark-faint);
	border-top: 1px solid var(--tkor-dark-line);
}
.tkor-cards .entry-meta a { color: var(--tkor-on-dark-faint); }
.tkor-cards .entry-meta a:hover { color: var(--tkor-accent-light); }

/* 카테고리 핀(태그) — 다크 카드 위에서 라이트 핑크 핀으로 강조 */
.tkor-card-cat {
	display: inline-block; margin: 0 0 10px; padding: .3em .7em;
	font-size: .7rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
	color: var(--tkor-accent-light); background: rgba(229,72,77,.14); border-radius: 999px;
}

@media (max-width: 768px) {
	.tkor-cards .site-main { grid-template-columns: 1fr; gap: 20px; }
}

/* 아카이브 헤더 */
.page-header-archive, .page-header-search { margin-bottom: 8px; }
.tkor-archive-head { padding: 8px 0 4px; }
.tkor-archive-head .tkor-kicker { margin-bottom: 8px; }

/* =====================================================================
   5. 사이드바 위젯 (커스텀)
   ===================================================================== */
.inside-right-sidebar .widget,
.tkor-w { margin-bottom: 22px; }
.widget.tkor-w,
.inside-right-sidebar .tkor-w,
.tkor-w {
	background: var(--tkor-panel); border: 1px solid var(--tkor-dark-line);
	border-radius: var(--tkor-radius); padding: 20px 20px 22px; color: var(--tkor-on-dark);
}
.tkor-w__title {
	font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
	color: #fff; margin: 0 0 14px; padding-bottom: 12px;
	border-bottom: 1px solid var(--tkor-dark-line); display: flex; align-items: center; gap: 8px;
}
.tkor-w__title::before { content:""; width: 14px; height: 2px; background: var(--tkor-accent); }
/* 사이드바 다크 박스용 라이트 고스트 버튼 */
.tkor-w .tkor-btn--ghost { color:#fff !important; border-color: rgba(255,255,255,.32); }
.tkor-w .tkor-btn--ghost:hover { background:#fff; color: var(--tkor-ink) !important; border-color:#fff; }

/* 소개 박스 */
.tkor-about__brand { display:flex; align-items:center; gap: 10px; margin-bottom: 12px; }
.tkor-about__logo { width: 38px; height: 38px; border-radius: 9px; background: var(--tkor-accent); color:#fff; display:grid; place-items:center; font-weight:900; font-family: var(--tkor-serif); }
.tkor-about__name { font-weight: 800; font-size: 1.05rem; color:#fff; }
.tkor-about__name small { display:block; font-weight: 500; font-size: .76rem; color: var(--tkor-on-dark-faint); letter-spacing: 0; }
.tkor-about p { font-size: .9rem; line-height: 1.6; color: var(--tkor-on-dark-soft); margin: 0 0 14px; }

/* 카테고리 리스트 */
.tkor-w ul { list-style: none; margin: 0; padding: 0; }
.tkor-cats li { margin: 0; }
.tkor-cats li a,
.tkor-cats li a:visited {
	display: flex; align-items: center; justify-content: space-between;
	padding: 9px 2px; color: #fff; font-weight: 600; font-size: .92rem;
	border-bottom: 1px solid var(--tkor-dark-line);
}
.tkor-cats li:last-child a { border-bottom: 0; }
.tkor-cats li a:hover { color: var(--tkor-accent-light); }
.tkor-cats .count {
	font-size: .72rem; color: var(--tkor-on-dark-faint); font-weight: 700;
	background: rgba(255,255,255,.06); border: 1px solid var(--tkor-dark-line); border-radius: 999px; padding: .1em .6em;
}

/* 최근 글 */
.tkor-recent li { display: grid; grid-template-columns: 56px 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--tkor-dark-line); align-items: center; }
.tkor-recent li:last-child { border-bottom: 0; padding-bottom: 0; }
.tkor-recent__thumb { width: 56px; height: 48px; border-radius: 7px; overflow: hidden; background: var(--tkor-panel-2); }
.tkor-recent__thumb img { width: 100%; height: 100%; object-fit: cover; }
.tkor-recent__t a,
.tkor-recent__t a:visited { color: #fff; font-weight: 700; font-size: .9rem; line-height: 1.35; }
.tkor-recent__t a:hover { color: var(--tkor-accent-light); }
.tkor-recent__d { font-size: .74rem; color: var(--tkor-on-dark-faint); margin-top: 2px; }

/* 사이드바 모든 링크 흰색 강제(GP 인라인 방문-링크 색 덮어쓰기) */
.inside-right-sidebar .tkor-w a:not(.tkor-btn),
.inside-right-sidebar .tkor-w a:not(.tkor-btn):visited { color: #fff; }
.inside-right-sidebar .tkor-w a:not(.tkor-btn):hover { color: var(--tkor-accent-light); }

/* 뉴스레터 / CTA 박스 — 특이도 보강(.widget 더해 GP 기본 위젯 규칙을 확실히 덮어씀) */
.widget.tkor-cta,
.inside-right-sidebar .tkor-cta { background: var(--tkor-ink); border-color: var(--tkor-ink); color: #fff; }
.widget.tkor-cta .tkor-w__title { color: #fff; border-color: rgba(255,255,255,.18); }
.widget.tkor-cta p { color: rgba(255,255,255,.78); font-size: .9rem; line-height: 1.6; margin: 0 0 14px; }
.widget.tkor-cta .tkor-btn { width: 100%; justify-content: center; background: var(--tkor-accent); border-color: var(--tkor-accent); color: #fff !important; }
.widget.tkor-cta .tkor-btn:hover { background: #fff; color: var(--tkor-ink) !important; border-color:#fff; }

/* =====================================================================
   6. 푸터 (에디토리얼 다크)
   ===================================================================== */
.tkor-foot { background: var(--tkor-footer); color: rgba(255,255,255,.72); }
.tkor-foot__inner {
	max-width: 1180px; margin: 0 auto; padding: 56px 20px 40px;
	display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 40px;
}
.tkor-foot__brand .tkor-about__name { color: #fff; }
.tkor-foot__brand p { color: rgba(255,255,255,.55); font-size: .92rem; line-height: 1.7; margin: 14px 0 0; max-width: 38ch; }
.tkor-foot__logo { width: 40px; height: 40px; border-radius: 10px; background:#fff; color: var(--tkor-ink); display:grid; place-items:center; font-weight:900; font-family: var(--tkor-serif); }
.tkor-foot h4 { color:#fff; font-size: .76rem; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 16px; font-weight: 800; }
.tkor-foot ul { list-style: none; margin: 0; padding: 0; }
.tkor-foot li { margin: 0 0 10px; }
.tkor-foot li a { color: rgba(255,255,255,.66); font-size: .92rem; }
.tkor-foot li a:hover { color: #fff; }
.tkor-foot__bar {
	border-top: 1px solid rgba(255,255,255,.12);
	max-width: 1180px; margin: 0 auto; padding: 20px 20px 28px;
	display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
	font-size: .82rem; color: rgba(255,255,255,.5);
}
.tkor-foot__bar a { color: rgba(255,255,255,.72); }
.tkor-foot__bar a:hover { color:#fff; }
.tkor-foot__tag { color: var(--tkor-accent); font-weight: 700; }

/* GP 기본 푸터(내용 제거됨) 숨김 — 커스텀 .tkor-foot 로 대체 */
.site-footer { display: none; }

@media (max-width: 768px) {
	.tkor-foot__inner { grid-template-columns: 1fr; gap: 30px; }
}

/* 맨 위로 버튼 */
.generate-back-to-top { background-color: var(--tkor-ink) !important; }
.generate-back-to-top:hover { background-color: var(--tkor-accent) !important; }

/* =====================================================================
   7. 단일 글 / 페이지 본문 다듬기
   ===================================================================== */
.single .entry-header .entry-title,
.page:not(.home) .entry-header .entry-title {
	font-family: var(--tkor-serif); font-size: clamp(1.8rem, 3.2vw, 2.6rem); line-height: 1.2;
}
.single-featured-image-header img { border-radius: var(--tkor-radius); }
.entry-content { font-size: 1.04rem; line-height: 1.8; }
.entry-content h2 { margin-top: 2em; padding-top: .2em; border-top: 2px solid var(--tkor-line); }
.entry-content h2, .entry-content h3 { font-family: var(--tkor-serif); }
.entry-content blockquote {
	border-left: 3px solid var(--tkor-accent); background: var(--tkor-surface);
	padding: 14px 20px; margin: 1.5em 0; border-radius: 0 var(--tkor-radius-sm) var(--tkor-radius-sm) 0; color: var(--tkor-ink-soft);
}

/* 페이지 전용 콘텐츠 박스 (생성 페이지에서 사용) */
.tkor-lede { font-size: 1.18rem; line-height: 1.65; color: var(--tkor-ink-soft); margin: 0 0 1.6em; }
.tkor-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 1.4em 0; }
.tkor-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 1.4em 0; }
.tkor-box {
	background: var(--tkor-surface); border: 1px solid var(--tkor-line);
	border-radius: var(--tkor-radius); padding: 22px 24px;
}
.tkor-box h3 { margin: 0 0 8px; font-size: 1.12rem; }
.tkor-box p { margin: 0; color: var(--tkor-ink-soft); font-size: .96rem; line-height: 1.6; }
.tkor-box .num { display:inline-grid; place-items:center; width: 30px; height: 30px; border-radius: 8px; background: var(--tkor-accent-bg); color: var(--tkor-accent-ink); font-weight: 800; margin-bottom: 10px; }
.tkor-faq { border-top: 1px solid var(--tkor-line); margin-top: 1.5em; }
.tkor-faq details { border-bottom: 1px solid var(--tkor-line); padding: 16px 0; }
.tkor-faq summary { cursor: pointer; font-weight: 700; font-size: 1.05rem; list-style: none; display:flex; justify-content: space-between; gap: 12px; }
.tkor-faq summary::-webkit-details-marker { display:none; }
.tkor-faq summary::after { content: "+"; color: var(--tkor-accent); font-weight: 800; }
.tkor-faq details[open] summary::after { content: "\2212"; }
.tkor-faq details p { margin: 12px 0 0; color: var(--tkor-ink-soft); line-height: 1.7; }
.tkor-cta-band {
	background: var(--tkor-ink); color:#fff; border-radius: var(--tkor-radius);
	padding: 32px 30px; margin: 2em 0; text-align:center;
}
.tkor-cta-band h3 { color:#fff; margin: 0 0 8px; font-size: 1.3rem; }
.tkor-cta-band p { color: rgba(255,255,255,.7); margin: 0 0 18px; }
.tkor-cta-band .tkor-btn { background: var(--tkor-accent); border-color: var(--tkor-accent); }
.tkor-cta-band .tkor-btn:hover { background:#fff; border-color:#fff; color: var(--tkor-ink) !important; }

@media (max-width: 680px) {
	.tkor-grid-2, .tkor-grid-3 { grid-template-columns: 1fr; }
}
