/* 원클릭 정책 사이트 스타일 (clickone-policy 플러그인)
   .ckp-site: 새 헤더·메뉴·사이드바·꼬리말·글꼴(전환 후 모든 화면)
   .ckp-page: 요약 카드·홈 등 정책 화면 본문 */

.ckp-site {
	--ckp-accent: #1B3F7A;
	--ckp-accent-soft: #EAF1FB;
	--ckp-ink: #0F1B2D;
	--ckp-text: #1D2939;
	--ckp-muted: #475467;
	--ckp-line: #E2E7EF;
	--ckp-bg: #F4F6FA;
	font-family: 'IBM Plex Sans KR', system-ui, -apple-system, 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
	color: var(--ckp-ink);
	background-color: var(--ckp-bg);
}
.ckp-site button, .ckp-site input, .ckp-site select, .ckp-site textarea { font-family: inherit; }

/* 공통 조각 */
.ckp-badge { display: inline-flex; align-items: center; justify-self: start; padding: 3px 10px; border-radius: 7px; font-size: 14px; font-weight: 700; line-height: 1.4; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ckp-badge--open, .ckp-badge--upcoming { background: #FEF0E6; color: #B54708; }
.ckp-badge--always { background: #E7F6EE; color: #067647; }
.ckp-badge--closed { background: #F2F4F7; color: #475467; }
.ckp-source { padding: 3px 9px; border-radius: 6px; background: #F2F4F7; font-size: 13px; font-weight: 500; line-height: 1.5; color: #344054; white-space: nowrap; }
.ckp-empty { margin: 0; padding: 16px 0; color: var(--ckp-muted); font-size: 15px; }
.ckp-ad-slot { display: flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 110px; margin: 24px 0; border: 1px dashed #B8C2D1; border-radius: 8px; background: #FFFFFF; font-size: 14px; line-height: 1.4; color: #5B6577; }
.ckp-ad-slot--300 { width: 300px; height: 250px; margin: 0; }
.ckp-ad-slot--728 { width: 728px; max-width: 100%; height: 90px; min-height: 0; margin: 16px auto 0; }
.ckp-ad-slot--tall { min-height: 280px; }

/* ── 홈 ───────────────────────────────── */
.ckp-page.full-width-content { background-color: #FFFFFF; }
.ckp-page.full-width-content .site-main { margin: 0; }
.ckp-page.full-width-content .inside-article { padding: 0; background: transparent; }
.ckp-page.full-width-content .entry-content { margin-top: 0; }
.ckp-home { background: #FFFFFF; color: var(--ckp-ink); }
/* 클래식 테마에서 그룹 블록이 넣는 안쪽 감싸개를 배치에서 투명하게 */
.ckp-home .wp-block-group__inner-container { display: contents; }
.ckp-home h1, .ckp-home h2, .ckp-home p, .ckp-home ul, .ckp-home form { margin: 0; }
.ckp-home :where(.is-layout-flow, .is-layout-constrained) > * { margin-block-start: 0; margin-block-end: 0; }
.ckp-wrap { max-width: 1100px; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box; }

.ckp-hero { padding: 48px 0; background: var(--ckp-accent-soft); box-shadow: 0 0 0 100vmax var(--ckp-accent-soft); clip-path: inset(0 -100vmax); }
.ckp-hero__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; align-items: center; }
.ckp-hero__main { display: flex; flex-direction: column; gap: 16px; }
.ckp-home .ckp-kicker { font-size: 15px; font-weight: 600; color: var(--ckp-accent); }
.ckp-home .ckp-hero__title { font-size: 38px; line-height: 1.32; font-weight: 700; color: var(--ckp-ink); }

.ckp-search .wp-block-search__label { display: block; margin-bottom: 6px; font-size: 15px; font-weight: 600; color: var(--ckp-muted); }
.ckp-search .wp-block-search__inside-wrapper { display: flex; height: 58px; padding: 0; border: 2px solid var(--ckp-accent); border-radius: 14px; background: #FFFFFF; overflow: hidden; box-sizing: border-box; }
.ckp-search .wp-block-search__input { flex: 1; min-width: 0; height: 100%; margin: 0; padding: 0 18px; border: 0; background: transparent; font-size: 18px; color: var(--ckp-ink); }
.ckp-search .wp-block-search__button { height: 100%; margin: 0; padding: 0 24px; border: 0; border-radius: 0; background: var(--ckp-accent); color: #FFFFFF; font-size: 17px; font-weight: 600; }
.ckp-search .wp-block-search__button:hover, .ckp-search .wp-block-search__button:focus { background: #142F5C; color: #FFFFFF; }

.ckp-home .ckp-chips-label { font-size: 14px; color: var(--ckp-muted); }
.ckp-chips { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; list-style: none; }
.ckp-chips li { margin: 0; }
.ckp-chips a { display: flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid #C9D6EA; border-radius: 20px; background: #FFFFFF; font-size: 15px; font-weight: 500; color: var(--ckp-ink); text-decoration: none; }
.ckp-chips a:hover { border-color: var(--ckp-accent); color: var(--ckp-accent); }

.ckp-card { padding: 24px; border-radius: 20px; background: #FFFFFF; }
.ckp-home .ckp-card-title { margin-bottom: 14px; font-size: 20px; font-weight: 700; color: var(--ckp-ink); }
.ckp-audience-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 0; list-style: none; }
.ckp-audience-list li { margin: 0; }
.ckp-audience-list a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; height: 104px; border: 1px solid var(--ckp-line); border-radius: 14px; font-size: 16px; font-weight: 600; color: var(--ckp-ink); text-decoration: none; }
.ckp-audience-list a:hover { border-color: var(--ckp-accent); }
.ckp-audience-list a::before { content: ""; width: 44px; height: 44px; border-radius: 22px; background: var(--ckp-accent-soft) center / 24px no-repeat; }

.ckp-split { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 32px; align-items: start; margin-top: 44px !important; }
.ckp-home .ckp-section-title { margin-bottom: 8px; font-size: 24px; font-weight: 700; color: var(--ckp-ink); }
.ckp-deadlines { margin: 0; padding: 0; list-style: none; }
.ckp-deadlines li { margin: 0; border-top: 1px solid var(--ckp-line); }
.ckp-deadlines a { display: grid; grid-template-columns: 84px minmax(0, 1fr) auto; gap: 16px; align-items: center; box-sizing: border-box; min-height: 84px; padding: 12px 0; color: var(--ckp-ink); text-decoration: none; }
.ckp-deadline__body { display: flex; flex-direction: column; gap: 4px; }
.ckp-deadline__title { font-size: 17px; font-weight: 600; line-height: 1.45; }
.ckp-deadlines a:hover .ckp-deadline__title { color: var(--ckp-accent); }
.ckp-deadline__meta { font-size: 14px; color: var(--ckp-muted); }

.ckp-side { display: flex; flex-direction: column; gap: 18px; }
.ckp-schedule-card { padding: 20px; border: 1px solid var(--ckp-line); border-radius: 16px; background: #FFFFFF; }
.ckp-home .ckp-schedule-card .ckp-card-title { margin-bottom: 10px; font-size: 19px; }
.ckp-schedule { margin: 0; padding: 0; list-style: none; }
.ckp-schedule li { margin: 0; border-top: 1px solid #EEF1F5; }
.ckp-schedule a { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 8px 0; box-sizing: border-box; font-size: 15px; line-height: 1.45; color: var(--ckp-ink); text-decoration: none; }
.ckp-schedule__date { flex-shrink: 0; width: 48px; font-weight: 700; color: var(--ckp-accent); font-variant-numeric: tabular-nums; }
.ckp-schedule__what small { display: block; font-size: 13px; color: var(--ckp-muted); }
.ckp-schedule li.is-past .ckp-schedule__date { color: var(--ckp-muted); }

.ckp-guides { margin-top: 48px !important; }
.ckp-guide-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 16px !important; padding: 0; list-style: none; }
.ckp-guide-list li { margin: 0; }
.ckp-guide-list a { position: relative; display: block; box-sizing: border-box; min-height: 96px; height: 100%; padding: 22px 22px 22px 86px; border: 1px solid var(--ckp-line); border-radius: 16px; font-size: 15px; line-height: 1.5; color: var(--ckp-muted); text-decoration: none; }
.ckp-guide-list a:hover { border-color: var(--ckp-accent); }
.ckp-guide-list a::before { content: ""; position: absolute; top: 22px; left: 22px; width: 48px; height: 48px; border-radius: 12px; background: var(--ckp-bg) center / 26px no-repeat; }
.ckp-guide-list strong { display: block; margin-bottom: 4px; font-size: 18px; font-weight: 700; color: var(--ckp-ink); }
.ckp-home .ckp-ad-slot--728 { margin-top: 24px; margin-left: auto; margin-right: auto; }

.ckp-notice-wrap { margin-top: 36px !important; margin-bottom: 56px !important; }
.ckp-home .ckp-notice { position: relative; padding: 16px 20px 16px 54px; border-radius: 12px; background: var(--ckp-bg); font-size: 15px; line-height: 1.6; color: #344054; }
.ckp-notice::before { content: ""; position: absolute; top: 17px; left: 20px; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475467' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 1 0-18 0'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E") center / 22px no-repeat; }

/* 대상·분야 아이콘 — 목록 항목에 ckp-i-이름 클래스 */
.ckp-i-user a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 8a4 4 0 1 0 8 0a4 4 0 1 0-8 0'/%3E%3Cpath d='M4 21c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E"); }
.ckp-i-rings a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 13a5 5 0 1 0 10 0a5 5 0 1 0-10 0'/%3E%3Cpath d='M11 13a5 5 0 1 0 10 0a5 5 0 1 0-10 0'/%3E%3C/svg%3E"); }
.ckp-i-stroller a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 11h14a7 7 0 0 1-14 0z'/%3E%3Cpath d='M12 11V4a7 7 0 0 1 7 7M8 21h.01M16 21h.01'/%3E%3C/svg%3E"); }
.ckp-i-store a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10l2-6h14l2 6z'/%3E%3Cpath d='M5 10v10h14V10M10 20v-5h4v5'/%3E%3C/svg%3E"); }
.ckp-i-senior a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5a2 2 0 1 0 4 0a2 2 0 1 0-4 0'/%3E%3Cpath d='M11 7v7l-3 7M11 14l3 7M17 11v10'/%3E%3C/svg%3E"); }
.ckp-i-briefcase a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpath d='M9 7V5h6v2M3 13h18'/%3E%3C/svg%3E"); }
.ckp-i-coin a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12a8 8 0 1 0 16 0a8 8 0 1 0-16 0'/%3E%3Cpath d='M12 7v10M9.5 9.5c0-1 1.1-1.5 2.5-1.5s2.5.6 2.5 1.8c0 2.7-5 1.5-5 4.2 0 1.2 1.1 2 2.5 2s2.5-.5 2.5-1.5'/%3E%3C/svg%3E"); }
.ckp-i-tax a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l5 5v13H7z'/%3E%3Cpath d='M14 3v5h5M10 13h6M10 17h6'/%3E%3C/svg%3E"); }
.ckp-i-shield a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 5-3 8-7 9-4-1-7-4-7-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }
.ckp-i-home a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7'/%3E%3Cpath d='M6 10v10h12V10'/%3E%3C/svg%3E"); }
.ckp-i-wallet a::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3F7A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpath d='M16 12.5h2M3 10h18'/%3E%3C/svg%3E"); }

/* ── 헤더·메뉴 (새 디자인 화면) ───────────── */
/* 테마 헤더가 본문 폭 상자라서, 흰 배경과 아래 경계선만 화면 끝까지 칠한다 */
.ckp-site .site-header { background: #FFFFFF; border-bottom: 0; box-shadow: 0 0 0 100vmax #FFFFFF, 0 1px 0 100vmax var(--ckp-line); clip-path: inset(0 -100vmax -1px); }
.ckp-site .site-header .inside-header { align-items: center; min-height: 76px; padding: 0; }
.ckp-site .main-title { margin: 0; font-size: 23px; font-weight: 700; line-height: 1.2; }
.ckp-site .main-title a { display: inline-flex; align-items: center; gap: 10px; color: var(--ckp-ink); text-decoration: none; }
.ckp-site .main-title a::before { content: ""; flex-shrink: 0; width: 34px; height: 34px; border-radius: 9px; background: var(--ckp-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 22px no-repeat; }
.ckp-site .site-description { display: none; }
.ckp-site .main-navigation, .ckp-site .main-navigation ul ul { background-color: #FFFFFF; }
.ckp-site .main-navigation .main-nav ul li a, .ckp-site .main-navigation .menu-toggle, .ckp-site .main-navigation .menu-bar-items { color: var(--ckp-ink); }
.ckp-site .main-navigation .main-nav ul li a { padding-left: 11px; padding-right: 11px; font-size: 15px; font-weight: 600; line-height: 76px; }
.ckp-site .main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a,
.ckp-site .main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a,
.ckp-site .main-navigation .main-nav ul li[class*="current-menu-"] > a,
.ckp-site .main-navigation .main-nav ul li[class*="current-menu-"]:hover > a { background-color: transparent; color: var(--ckp-accent); }
.ckp-site .main-navigation .menu-bar-item > a { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 44px; height: 44px; margin: 16px 0 16px 12px; padding: 0; border: 1px solid var(--ckp-line); border-radius: 22px; line-height: 1; color: var(--ckp-ink); }
.ckp-site .main-navigation .menu-bar-item:hover > a, .ckp-site .main-navigation .menu-bar-item.sfHover > a { background-color: transparent; color: var(--ckp-accent); }
.ckp-site .main-navigation.navigation-stick, .ckp-site .main-navigation.is_stuck { background-color: #FFFFFF; box-shadow: 0 1px 0 var(--ckp-line); }

/* ── 사이드바 (새 디자인 글 화면) ─────────── */
.ckp-site .inside-right-sidebar > .widget:not(.ckp-widget) { display: none; }
.ckp-site .sidebar .widget.ckp-widget { margin-bottom: 20px; padding: 24px; border: 0; border-radius: 12px; background: #FFFFFF; font-size: 15px; }
.ckp-site .sidebar .ckp-widget__title { margin: 0 0 6px; font-size: 18px; font-weight: 700; line-height: 1.4; color: var(--ckp-ink); }
.ckp-side-search label { display: block; margin-bottom: 8px; font-size: 16px; font-weight: 700; color: var(--ckp-ink); }
.ckp-side-search div { display: flex; height: 46px; border: 1px solid #C9D6EA; border-radius: 10px; overflow: hidden; }
.ckp-site .ckp-side-search input { flex: 1; min-width: 0; height: 100%; margin: 0; padding: 0 12px; border: 0; background: transparent; font-size: 16px; color: var(--ckp-ink); }
.ckp-site .ckp-side-search button { display: flex; align-items: center; justify-content: center; width: 46px; margin: 0; padding: 0; border: 0; border-radius: 0; background: var(--ckp-accent); color: #FFFFFF; }
.ckp-site .sidebar .widget.ckp-widget--ad { padding: 15px; }
.ckp-side-cats { margin: 0; padding: 0; list-style: none; }
.ckp-side-cats li { margin: 0; border-top: 1px solid #EEF1F5; }
.ckp-side-cats a { display: flex; align-items: center; justify-content: space-between; min-height: 48px; font-size: 15px; font-weight: 500; color: var(--ckp-ink); text-decoration: none; }
.ckp-side-cats a:hover { color: var(--ckp-accent); }
.ckp-site .sidebar .ckp-widget a { color: var(--ckp-ink); }
.ckp-site .sidebar .ckp-widget a:hover { color: var(--ckp-accent); }
.ckp-side-cats a::after { content: ""; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / 16px no-repeat; }
.ckp-deadlines--compact li { border-top: 1px solid var(--ckp-line); }
.ckp-deadlines--compact a { display: flex; align-items: flex-start; gap: 10px; min-height: 60px; padding: 10px 0; }
.ckp-deadlines--compact .ckp-badge { flex-shrink: 0; justify-content: center; min-width: 52px; margin-top: 1px; padding: 2px 8px; font-size: 13px; }
.ckp-deadlines--compact .ckp-deadline__title { font-size: 15px; }
.ckp-deadlines--compact .ckp-deadline__meta, .ckp-deadlines--compact .ckp-source { display: none; }

/* ── 광고·꼬리말·글 하단 ─────────────────── */
.ckp-ad { box-sizing: border-box; width: 100%; min-height: 90px; }
.ckp-side .ckp-ad { align-self: stretch; }
.ckp-ad--side { min-height: 250px; }
.ckp-home .ckp-ad--wide { margin-top: 24px; }
.ckp-page .clickone-ad, .ckp-page .code-block-1 { margin: 28px 0 !important; }
.ckp-page .code-block-2 { display: none !important; }
.ckp-site .site-footer { display: none; }
.ckp-footer { background: #0F1B2D; color: #E4E9F2; }
.ckp-footer__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; box-sizing: border-box; max-width: 1100px; margin: 0 auto; padding: 32px 0; }
.ckp-site .ckp-footer__brand { margin: 0; font-size: 20px; font-weight: 700; line-height: 1.4; color: #FFFFFF; }
.ckp-footer__brand small { margin-left: 10px; font-size: 13px; font-weight: 400; color: #A9B4C6; }
.ckp-footer__links { display: flex; flex-wrap: wrap; gap: 0 24px; }
.ckp-footer__links a { display: flex; align-items: center; min-height: 44px; font-size: 15px; color: #E4E9F2; text-decoration: none; }
.ckp-footer__links a:hover { color: #FFFFFF; text-decoration: underline; }
.ckp-author { display: flex; align-items: center; gap: 16px; margin-top: 40px; padding: 20px; border: 1px solid var(--ckp-line); border-radius: 12px; background: #FFFFFF; }
.ckp-author__mark { flex-shrink: 0; width: 48px; height: 48px; border-radius: 12px; background: var(--ckp-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 28px no-repeat; }
.ckp-page .entry-content .ckp-author p { margin: 0; }
.ckp-page .entry-content .ckp-author__name { font-size: 16px; font-weight: 700; color: var(--ckp-ink); }
.ckp-page .entry-content .ckp-author__desc { font-size: 14px; line-height: 1.6; color: var(--ckp-muted); }

/* ── 정책 글 ───────────────────────────── */
.ckp-page.single .inside-article { border-radius: 12px; }
.ckp-page.single .entry-meta { display: none; }
.ckp-page .rank-math-breadcrumb { margin-bottom: 12px; font-size: 14px; color: var(--ckp-muted); }
.ckp-page .rank-math-breadcrumb p { margin: 0; }
.ckp-page .rank-math-breadcrumb a { color: var(--ckp-muted); text-decoration: none; }
.ckp-page .rank-math-breadcrumb a:hover { color: var(--ckp-accent); }
.ckp-page .rank-math-breadcrumb .separator { margin: 0 4px; }
.ckp-page .rank-math-breadcrumb .separator:has(+ .last), .ckp-page .rank-math-breadcrumb .last { display: none; }
.ckp-page.single .entry-title { font-size: 32px; line-height: 1.35; font-weight: 700; color: var(--ckp-ink); }
.ckp-page.single .entry-content { font-size: 18px; line-height: 1.8; color: var(--ckp-text); }
/* 사이트 추가 CSS의 .single .entry-content h2 띠 장식을 정책 글에서는 해제 */
.ckp-page.single .entry-content h2 { position: static; margin: 40px 0 14px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; text-shadow: none; font-family: inherit; font-size: 26px; line-height: 1.35; font-weight: 700; color: var(--ckp-ink); }
.ckp-page.single .entry-content .ckp-meta { margin: 0 0 24px; font-size: 14px; line-height: 1.6; color: var(--ckp-muted); }

.ckp-summary { margin: 0 0 24px; padding: 24px; border-radius: 16px; background: var(--ckp-accent-soft); }
.ckp-page .entry-content .ckp-summary p { margin: 0; }
.ckp-summary__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.ckp-summary__title { font-size: 20px; font-weight: 700; line-height: 1.4; color: var(--ckp-ink); }
.ckp-page .entry-content .ckp-summary__list { margin: 0 0 14px; padding: 0 18px; border-radius: 12px; background: #FFFFFF; }
.ckp-summary__list > div { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 12px; align-items: center; box-sizing: border-box; min-height: 54px; padding: 10px 0; border-top: 1px solid #EEF1F5; }
.ckp-summary__list > div:first-child { border-top: 0; }
.ckp-page .entry-content .ckp-summary__list dt { margin: 0; font-size: 15px; font-weight: 600; line-height: 1.5; color: var(--ckp-muted); }
.ckp-page .entry-content .ckp-summary__list dd { margin: 0; font-size: 16px; font-weight: 500; line-height: 1.5; color: var(--ckp-ink); }
.ckp-page .entry-content .ckp-summary__cta { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; border-radius: 12px; background: var(--ckp-accent); font-size: 16px; font-weight: 600; color: #FFFFFF; text-decoration: none; }
.ckp-page .entry-content .ckp-summary__cta:hover { background: #142F5C; color: #FFFFFF; }
.ckp-summary__cta::after { content: ""; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4h6v6M20 4l-9 9'/%3E%3Cpath d='M18 14v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h5'/%3E%3C/svg%3E") center / 18px no-repeat; }

.ckp-page .entry-content .ckp-checks { display: flex; flex-direction: column; gap: 8px; margin: 0 0 24px; padding: 0; list-style: none; }
.ckp-page .entry-content .ckp-checks li { position: relative; margin: 0; padding: 14px 16px 14px 46px; border-radius: 12px; background: var(--ckp-bg); font-size: 17px; line-height: 1.55; }
.ckp-checks li::before { content: ""; position: absolute; top: 17px; left: 16px; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23067647' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 20px no-repeat; }

.ckp-page .entry-content .ckp-steps { margin: 0 0 16px; padding: 0; list-style: none; counter-reset: ckp-step; }
.ckp-page .entry-content .ckp-steps li { position: relative; min-height: 36px; margin: 0; padding: 5px 0 16px 50px; counter-increment: ckp-step; }
.ckp-steps li::before { content: counter(ckp-step); position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 18px; background: var(--ckp-accent); font-size: 16px; font-weight: 700; line-height: 1; color: #FFFFFF; }
.ckp-steps strong { display: block; font-size: 17px; font-weight: 600; line-height: 1.5; color: var(--ckp-ink); }
.ckp-steps span { display: block; font-size: 16px; line-height: 1.6; color: var(--ckp-muted); }

.ckp-faq { display: flex; flex-direction: column; gap: 10px; margin: 0 0 24px; }
.ckp-faq details { margin: 0; border: 1px solid var(--ckp-line); border-radius: 12px; background: #FFFFFF; }
.ckp-faq summary { position: relative; display: flex; align-items: center; box-sizing: border-box; min-height: 56px; padding: 8px 48px 8px 18px; font-size: 17px; font-weight: 600; line-height: 1.5; color: var(--ckp-ink); list-style: none; cursor: pointer; }
.ckp-faq summary::-webkit-details-marker { display: none; }
.ckp-faq summary::after { content: ""; position: absolute; top: 50%; right: 18px; width: 18px; height: 18px; margin-top: -9px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475467' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 18px no-repeat; transition: transform .15s; }
.ckp-faq details[open] summary::after { transform: rotate(180deg); }
.ckp-page .entry-content .ckp-faq details p { margin: 0; padding: 0 18px 16px; font-size: 16px; line-height: 1.65; color: #344054; }

.ckp-page .entry-content .ckp-source-box { margin: 40px 0 0; padding: 20px; border-radius: 12px; background: var(--ckp-bg); }
.ckp-page .entry-content .ckp-source-box h2 { margin: 0 0 8px; font-size: 17px; line-height: 1.5; }
.ckp-page .entry-content .ckp-source-box ul { margin: 0 0 8px 20px; font-size: 16px; line-height: 1.7; color: #344054; }
.ckp-page .entry-content .ckp-source-box p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--ckp-muted); }

/* 목차(Easy TOC) — 글 제목에 번호가 있으므로 목차 자체 번호는 숨김 */
.ckp-page #ez-toc-container { display: block; box-sizing: border-box; width: 100%; margin: 24px 0; padding: 10px 20px 14px; border: 1px solid var(--ckp-line); border-radius: 12px; background: #FFFFFF; box-shadow: none; }
.ckp-page #ez-toc-container .ez-toc-title { font-size: 0; color: var(--ckp-ink); }
.ckp-page #ez-toc-container .ez-toc-title::before { content: "목차"; font-size: 16px; font-weight: 700; }
.ckp-page #ez-toc-container ul li { margin: 0; padding: 6px 0; }
.ckp-page #ez-toc-container a { font-size: 16px; color: var(--ckp-ink); text-decoration: none; }
.ckp-page #ez-toc-container a:hover { color: var(--ckp-accent); }
.ckp-page #ez-toc-container.counter-hierarchy ul li a::before, .ckp-page #ez-toc-container.counter-flat ul li a::before { content: none; }

/* ── 태블릿·모바일 ───────────────────────── */
@media (max-width: 1140px) {
	.ckp-wrap { padding-left: 16px !important; padding-right: 16px !important; }
	.ckp-footer__inner { padding-left: 20px; padding-right: 20px; }
}

@media (max-width: 768px) {
	.ckp-hero { padding: 24px 0 22px; }
	.ckp-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.ckp-hero__main { gap: 14px; }
	.ckp-home .ckp-kicker { font-size: 14px; }
	.ckp-home .ckp-hero__title { font-size: 25px; line-height: 1.4; }
	.ckp-search .wp-block-search__label { font-size: 14px; }
	.ckp-search .wp-block-search__inside-wrapper { height: 54px; border-radius: 12px; }
	.ckp-search .wp-block-search__input { padding: 0 14px; font-size: 17px; }
	.ckp-search .wp-block-search__button { padding: 0 18px; font-size: 16px; }
	.ckp-chips a { min-height: 44px; border-radius: 22px; }
	.ckp-card { padding: 16px; border-radius: 16px; }
	.ckp-audience-list { gap: 8px; }
	.ckp-audience-list a { gap: 8px; height: 96px; font-size: 15px; }
	.ckp-audience-list a::before { width: 40px; height: 40px; background-size: 22px; }

	.ckp-split { grid-template-columns: minmax(0, 1fr); gap: 26px; margin-top: 30px !important; }
	.ckp-home .ckp-section-title { font-size: 20px; }
	.ckp-deadlines li { margin-bottom: 10px; border: 1px solid var(--ckp-line); border-radius: 14px; }
	.ckp-deadlines a { grid-template-columns: auto minmax(0, 1fr); grid-template-areas: "badge source" "body body"; gap: 8px; min-height: 0; padding: 16px; }
	.ckp-deadlines .ckp-badge { grid-area: badge; }
	.ckp-deadlines .ckp-source { grid-area: source; justify-self: end; }
	.ckp-deadline__body { grid-area: body; }
	.ckp-side { align-items: center; }
	.ckp-schedule-card { align-self: stretch; }

	.ckp-guides { margin-top: 28px !important; }
	.ckp-guide-list { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 6px !important; }
	.ckp-guide-list a { min-height: 68px; padding: 12px 0 12px 54px; border: 0; border-bottom: 1px solid var(--ckp-line); border-radius: 0; font-size: 14px; }
	.ckp-guide-list a::before { top: 50%; left: 0; width: 40px; height: 40px; margin-top: -20px; border-radius: 10px; background-size: 22px; }
	.ckp-guide-list strong { margin-bottom: 2px; font-size: 17px; }
	.ckp-notice-wrap { margin-top: 26px !important; margin-bottom: 34px !important; }
	.ckp-home .ckp-notice { padding: 14px 16px 14px 46px; font-size: 14px; }
	.ckp-notice::before { top: 15px; left: 16px; width: 20px; height: 20px; background-size: 20px; }

	.ckp-page.single .inside-article { padding: 20px 16px 28px; border-radius: 0; }
	.ckp-page.single .entry-title { font-size: 26px; line-height: 1.38; }
	.ckp-page.single .entry-content { font-size: 17px; line-height: 1.75; }
	.ckp-page.single .entry-content h2 { margin: 32px 0 12px; font-size: 21px; }
	.ckp-summary { padding: 18px; }
	.ckp-summary__title { font-size: 18px; }
	.ckp-page .entry-content .ckp-summary__list { padding: 0 14px; }
	.ckp-summary__list > div { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; min-height: 52px; }
	.ckp-page .entry-content .ckp-summary__list dt { font-size: 14px; }
	.ckp-page .entry-content .ckp-summary__list dd { font-size: 15px; }
	.ckp-page .entry-content .ckp-checks li { padding: 12px 14px 12px 44px; font-size: 16px; }
	.ckp-checks li::before { top: 15px; left: 14px; }
	.ckp-page .entry-content .ckp-steps li { padding-left: 44px; }
	.ckp-steps li::before { width: 32px; height: 32px; font-size: 15px; }
	.ckp-steps strong { font-size: 16px; }
	.ckp-steps span { font-size: 15px; }
	.ckp-faq summary { min-height: 52px; padding: 8px 44px 8px 14px; font-size: 16px; }
	.ckp-faq summary::after { right: 14px; }
	.ckp-page .entry-content .ckp-faq details p { padding: 0 14px 14px; font-size: 15px; }
	.ckp-page .entry-content .ckp-source-box { margin-top: 32px; padding: 16px; }
	.ckp-page.single .entry-content .ckp-source-box h2 { margin: 0 0 8px; font-size: 16px; }
	.ckp-page #ez-toc-container { padding: 10px 16px 12px; }

	.ckp-site .site-header .inside-header { min-height: 60px; padding: 0 0 0 16px; }
	.ckp-site .main-title { font-size: 19px; }
	.ckp-site .main-title a { gap: 8px; }
	.ckp-site .main-title a::before { width: 28px; height: 28px; border-radius: 8px; background-size: 18px; }
	.ckp-site .main-navigation .menu-toggle { padding: 0 14px; line-height: 60px; }
	.ckp-site .main-navigation .menu-bar-item > a { width: 48px; height: 60px; margin: 0; border: 0; border-radius: 0; }
	.ckp-site .main-navigation.toggled .main-nav ul li a { line-height: 48px; padding-left: 16px; }
	.ckp-site .main-navigation.toggled .main-nav > ul { border-top: 1px solid var(--ckp-line); }

	.ckp-site .sidebar .widget.ckp-widget { margin-bottom: 12px; padding: 20px 16px; border-radius: 0; }
	.ckp-deadlines--compact li { margin-bottom: 0; border: 0; border-top: 1px solid var(--ckp-line); border-radius: 0; }
	.ckp-deadlines--compact a { display: flex; grid-template-areas: none; padding: 10px 0; }

	.ckp-footer__inner { flex-direction: column; align-items: flex-start; gap: 8px; padding: 24px 16px 34px; }
	.ckp-site .ckp-footer__brand { font-size: 18px; }
	.ckp-footer__brand small { display: block; margin: 2px 0 0; }
	.ckp-footer__links { gap: 0 18px; }
}
