/*
Theme Name: Nunchi Brutal
Theme URI: https://nunchi.biz/blog/
Description: 눈치(nunchi.biz) 블로그용 네오 브루탈리즘 하위 테마. 두꺼운 검정 테두리, 어긋난 그림자, 원색 블록. 부모 = Twenty Twenty-Five.
Author: BizSpring Inc.
Template: twentytwentyfive
Version: 1.5.2
Requires at least: 6.7
Text Domain: nunchi-brutal
*/

:root {
	--nb-ink: #111111;
	--nb-cream: #EFF2E7;  /* 2026-10-11 1.4.2: 바탕, 종전 민트(#E6F0EB)와 미색(#F7F3E3)의 중간 */
	--nb-yellow: #6FD3C1; /* 주 색: 머리글·강조 블록, 더 밝은 틸 (1.5.2, 검정 글자 대비 10.6:1, 종전 #4DC3B0) */
	--nb-pink: #F7925A;   /* 보조 색: 살구빛 코럴, 노랑 기운 · 밝기 추가 (1.5.2, 대비 8.3:1, 종전 #F26A3A) */
	--nb-teal: #2E4A8F;   /* 남색 (1.4.0, 종전 틸) */
	--nb-mint: #93D2F5;   /* 하늘 */
	--nb-lilac: #B39DFF;  /* 라벤더 */
	--nb-white: #FFFFFF;
	--nb-bw: 3px;
	--nb-r: 6px;
	--nb-sh: 6px 6px 0 var(--nb-ink);
	--nb-sh-lg: 10px 10px 0 var(--nb-ink);
	--nb-sh-sm: 3px 3px 0 var(--nb-ink);
}

html { overflow-x: clip; font-size: 90%; } /* 2026-10-11: 전체 글자 크기 한 단계 축소 (rem 기준 16px -> 14.4px) */
body {
	background-color: var(--nb-cream);
	background-image: radial-gradient(rgba(17, 17, 17, .12) 1px, transparent 1.2px);
	background-size: 22px 22px;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

::selection { background: var(--nb-yellow); color: var(--nb-ink); }

:where(a, button, input, summary):focus-visible {
	outline: 3px solid var(--nb-pink);
	outline-offset: 3px;
}

/* ───────── 머리글 (2026-10-11 nunchi.biz 메뉴 이식) ───────── */
/* 고정: 머리글 묶음(.nb-header)을 감싼 틀(header.wp-block-template-part)의 높이가 묶음과 같아
   묶음에만 sticky 를 주면 고정되지 않는다. 바깥 틀을 고정한다(1.3.3). */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 50;
}
.nb-header {
	position: relative;
	background: var(--nb-yellow);
	border-bottom: var(--nb-bw) solid var(--nb-ink);
	padding-top: 10px;
	padding-bottom: 10px;
}
.nb-header__inner { gap: 20px; align-items: center; }

/* 로고: 눈 두 개(nunchi.biz 로고 그림과 같은 모양) + 이름 + 한 줄 소개 */
.nb-brand { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.nb-brand__home { display: flex; align-items: center; gap: 10px; color: var(--nb-ink) !important; text-decoration: none; }
.nb-eyes {
	display: inline-flex; align-items: center; justify-content: center; flex: none;
	width: 44px; height: 44px;
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink);
	border-radius: 10px;
	box-shadow: 3px 3px 0 var(--nb-ink);
	transform: rotate(-4deg);
	transition: transform .15s ease;
}
.nb-brand__home:hover .nb-eyes { transform: rotate(0deg) scale(1.06); }
.nb-eyes svg { width: 34px; height: 34px; overflow: visible; }
.nb-eyes .ball { fill: var(--nb-white); stroke: var(--nb-ink); stroke-width: 1.7; }
.nb-eyes .pup { fill: var(--nb-ink); animation: nb-look 7s ease-in-out infinite; }
.nb-eyes .hl { fill: var(--nb-white); }
@keyframes nb-look {
	0%, 38% { transform: translate(0, 0); }
	44%, 58% { transform: translate(1.8px, -0.6px); }
	64%, 80% { transform: translate(-1.8px, 0.4px); }
	86%, 100% { transform: translate(0, 0); }
}
.nb-brand__text { display: flex; flex-direction: column; line-height: 1.15; }
.nb-brand__name { font-size: 1.3rem; font-weight: 900; letter-spacing: -0.03em; white-space: nowrap; }
.nb-brand__name i { font-style: normal; margin: 0 .18em; opacity: .55; }
.nb-brand__name b { font-weight: 900; }
.nb-beta {
	font-style: normal; font-size: .62rem; font-weight: 800; letter-spacing: .02em;
	margin-left: 6px; padding: 1px 6px; vertical-align: 4px;
	background: var(--nb-ink); color: var(--nb-white); border-radius: 3px;
}
.nb-brand__sub { margin-top: 3px; font-size: .74rem; font-weight: 700; color: rgba(17, 17, 17, .78); white-space: nowrap; }
.nb-brand__blog {
	display: inline-block; padding: 3px 10px;
	font-size: .82rem; font-weight: 900; color: var(--nb-ink) !important; text-decoration: none;
	background: var(--nb-pink); border: 2px solid var(--nb-ink); box-shadow: 2px 2px 0 var(--nb-ink);
	transform: rotate(3deg);
}
.nb-brand__blog:hover { transform: rotate(0deg); }

/* 주 메뉴 */
.nb-nav { font-size: 1.08rem; font-weight: 800; } /* 2026-10-11: 한 단계 키움(.95rem → 1.08rem) */
.nb-nav .wp-block-navigation__container { gap: 4px; align-items: center; }
.nb-nav .wp-block-navigation-item__content {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 6px 10px; text-decoration: none;
	border: 2px solid transparent; border-radius: 6px;
	white-space: nowrap;
}
.nb-nav .wp-block-navigation-item__content:hover { border-color: var(--nb-ink); background: var(--nb-white); box-shadow: var(--nb-sh-sm); }
.nb-nav [class*="nb-ic-"] > .wp-block-navigation-item__content::before {
	content: ""; flex: none; width: 16px; height: 16px; background: currentColor;
	-webkit-mask: var(--nb-ic) center / contain no-repeat; mask: var(--nb-ic) center / contain no-repeat;
}
.nb-ic-activity { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2'/></svg>"); }
.nb-ic-history { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8'/><path d='M3 3v5h5'/><path d='M12 7v5l4 2'/></svg>"); }
.nb-ic-eye { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M2.06 12.35a1 1 0 0 1 0-.7 10.75 10.75 0 0 1 19.88 0 1 1 0 0 1 0 .7 10.75 10.75 0 0 1-19.88 0'/><circle cx='12' cy='12' r='3'/></svg>"); }
.nb-ic-layers { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z'/><path d='m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65'/><path d='m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65'/></svg>"); }
.nb-ic-newspaper { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2'/><path d='M18 14h-8'/><path d='M15 18h-5'/><path d='M10 6h8v4h-8V6Z'/></svg>"); }
.nb-ic-plug { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 22v-5'/><path d='M9 8V2'/><path d='M15 8V2'/><path d='M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z'/></svg>"); }
.nb-ic-user-check { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/><circle cx='9' cy='7' r='4'/><polyline points='16 11 18 13 22 9'/></svg>"); }
.nb-nav .nb-sep { margin-left: 8px; padding-left: 10px; border-left: 2px solid rgba(17, 17, 17, .45); }
.nb-nav .nb-current > .wp-block-navigation-item__content { background: var(--nb-white); border-color: var(--nb-ink); box-shadow: var(--nb-sh-sm); }
.nb-nav .nb-pill { margin-left: 10px; }
.nb-nav .nb-pill > .wp-block-navigation-item__content { background: var(--nb-white); border-color: var(--nb-ink); border-radius: 999px; box-shadow: var(--nb-sh-sm); }
.nb-nav .nb-login > .wp-block-navigation-item__content { background: var(--nb-pink); border-color: var(--nb-ink); box-shadow: var(--nb-sh-sm); }
.nb-nav .nb-pill > .wp-block-navigation-item__content:hover,
.nb-nav .nb-login > .wp-block-navigation-item__content:hover { transform: translate(-2px, -2px); box-shadow: 5px 5px 0 var(--nb-ink); }

/* 휴대폰 펼침 메뉴 */
.nb-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--nb-yellow) !important;
	color: var(--nb-ink) !important;
	padding: 24px;
}
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 10px; align-items: flex-start; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1.25rem; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .nb-sep { margin-left: 0; padding-left: 0; border-left: 0; margin-top: 6px; padding-top: 14px; border-top: 2px dashed var(--nb-ink); width: 100%; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .nb-pill { margin-left: 0; margin-top: 8px; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start !important; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { padding: 8px 14px !important; }
.nb-nav .wp-block-navigation__responsive-container-open,
.nb-nav .wp-block-navigation__responsive-container-close {
	border: 2px solid var(--nb-ink); background: var(--nb-white); padding: 4px; box-shadow: var(--nb-sh-sm);
}

/* ───────── 버튼 ───────── */
.wp-block-button__link,
.wp-element-button {
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r) !important;
	box-shadow: var(--nb-sh-sm);
	font-weight: 800;
	text-decoration: none;
	transition: transform .12s ease, box-shadow .12s ease;
}
.wp-block-button__link:hover,
.wp-element-button:hover {
	transform: translate(-2px, -2px);
	box-shadow: 5px 5px 0 var(--nb-ink);
}
.wp-block-button__link:active,
.wp-element-button:active {
	transform: translate(3px, 3px);
	box-shadow: 0 0 0 var(--nb-ink);
}
.wp-block-button.is-style-outline .wp-block-button__link {
	background: var(--nb-white) !important;
	color: var(--nb-ink) !important;
}

/* ───────── 본문 영역 ───────── */
.nb-main { padding-top: clamp(32px, 6vw, 72px); padding-bottom: clamp(48px, 8vw, 96px); }

/* 첫 화면 큰 제목 */
.nb-hero { margin-bottom: clamp(36px, 6vw, 64px); }
.nb-hero__kicker {
	display: inline-block;
	margin: 0 0 18px;
	padding: 4px 12px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .14em;
	background: var(--nb-mint);
	border: 2px solid var(--nb-ink);
	box-shadow: var(--nb-sh-sm);
	transform: rotate(-2deg);
}
.nb-hero__title {
	margin: 0;
	font-size: clamp(2.8rem, 9vw, 6.4rem);
	line-height: 1.02;
	letter-spacing: -0.05em;
}
.nb-hero__title mark {
	background: var(--nb-pink);
	color: var(--nb-ink);
	padding: 0 .12em;
	border: var(--nb-bw) solid var(--nb-ink);
	box-shadow: var(--nb-sh);
	display: inline-block;
	transform: rotate(1.5deg);
	margin-left: .05em;
}
.nb-hero__tagline {
	margin: 28px 0 0;
	font-size: clamp(1.15rem, 2.6vw, 1.6rem);
	font-weight: 800;
}
.nb-hero__lead {
	max-width: 46em;
	margin: 12px 0 0;
	color: #3A3A3A;
	font-size: 1.05rem;
}
.nb-hero--archive .nb-hero__title { font-size: clamp(2.2rem, 6vw, 4.2rem); }

/* ───────── 글 목록 카드 ───────── */
.nb-cards .wp-block-post-template { gap: clamp(24px, 3.5vw, 40px) !important; }
.nb-cards .wp-block-post-template > li { display: flex; }
.nb-card {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink);
	border-radius: var(--nb-r);
	box-shadow: var(--nb-sh);
	overflow: hidden;
	transition: transform .15s ease, box-shadow .15s ease;
}
.nb-card:hover { transform: translate(-4px, -4px); box-shadow: var(--nb-sh-lg); }
.nb-cards li:nth-child(4n+1) .nb-card { --nb-tone: var(--nb-yellow); }
.nb-cards li:nth-child(4n+2) .nb-card { --nb-tone: var(--nb-pink); }
.nb-cards li:nth-child(4n+3) .nb-card { --nb-tone: var(--nb-mint); }
.nb-cards li:nth-child(4n+4) .nb-card { --nb-tone: var(--nb-lilac); }
.nb-card__img { margin: 0 !important; border-bottom: var(--nb-bw) solid var(--nb-ink); background: var(--nb-tone, var(--nb-yellow)); }
.nb-card__img img { display: block; }
.nb-card__body { display: flex; flex-direction: column; flex: 1; padding: 22px 24px 20px; gap: 10px; }
.nb-card__body > * { margin: 0 !important; }
.nb-card__cat a,
.nb-article__cat a {
	display: inline-block;
	padding: 2px 10px;
	font-size: .8rem;
	font-weight: 800;
	text-decoration: none;
	color: var(--nb-ink);
	background: var(--nb-tone, var(--nb-yellow));
	border: 2px solid var(--nb-ink);
}
.nb-card__title { font-size: clamp(1.3rem, 2.2vw, 1.6rem); line-height: 1.32; }
.nb-card__title a { text-decoration: none; background-image: linear-gradient(var(--nb-tone, var(--nb-yellow)), var(--nb-tone, var(--nb-yellow))); background-size: 0 40%; background-position: 0 88%; background-repeat: no-repeat; transition: background-size .2s ease; }
.nb-card:hover .nb-card__title a { background-size: 100% 40%; }
/* 카드 전체를 누를 수 있게: 제목 링크를 카드 크기로 넓힘 */
.nb-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.nb-card__cat, .nb-card__more { position: relative; z-index: 2; }
.nb-card__excerpt { color: #3A3A3A; font-size: .98rem; }
.nb-card__excerpt .wp-block-post-excerpt__more-text { display: none; }
.nb-card__foot { margin-top: auto !important; padding-top: 12px; border-top: 2px dashed var(--nb-ink); align-items: center; }
.nb-card__date { font-size: .85rem; font-weight: 700; }
.nb-card__more { font-weight: 900; text-decoration: none; }

/* 페이지 번호 */
.nb-pager { margin-top: 48px !important; gap: 10px; font-weight: 800; }
.nb-pager a, .nb-pager .current {
	display: inline-block; min-width: 2.4em; padding: 6px 10px; text-align: center;
	border: 2px solid var(--nb-ink); background: var(--nb-white); text-decoration: none; box-shadow: var(--nb-sh-sm);
}
.nb-pager .current { background: var(--nb-ink); color: var(--nb-yellow); }

/* ───────── 글 본문 ───────── */
.nb-article__head { margin-bottom: 32px; }
.nb-article__head > * { margin-top: 0; }
.nb-article__cat { margin-bottom: 16px; }
.nb-article__title {
	font-size: clamp(2rem, 5.2vw, 3.4rem);
	line-height: 1.22;
	letter-spacing: -0.04em;
	margin-bottom: 20px;
}
.nb-article__meta { gap: 10px; font-size: .88rem; font-weight: 700; }
.nb-article__meta > * {
	margin: 0 !important;
	padding: 3px 10px;
	background: var(--nb-white);
	border: 2px solid var(--nb-ink);
	font-family: var(--wp--preset--font-family--mono);
}
.nb-meta-author::before { content: "글 "; }
.nb-meta-date::before { content: "게시 "; }
.nb-meta-modified::before { content: "수정 "; }
.nb-article__img {
	margin-bottom: 40px !important;
	border: var(--nb-bw) solid var(--nb-ink);
	box-shadow: var(--nb-sh-lg);
	background: var(--nb-yellow);
}
.nb-article__img img { display: block; }

.nb-article__body { font-size: 1.075rem; }
.nb-article__body > * + * { margin-block-start: 1.3em; }
.nb-article__body h2 {
	position: relative;
	margin-top: 2.4em !important;
	padding: 10px 16px 10px 20px;
	font-size: clamp(1.45rem, 3vw, 1.9rem);
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink);
	border-left-width: 12px;
	border-left-color: var(--nb-pink);
	box-shadow: var(--nb-sh);
}
.nb-article__body h3 {
	margin-top: 2em !important;
	font-size: clamp(1.2rem, 2.4vw, 1.4rem);
	display: inline-block;
	background: linear-gradient(transparent 58%, var(--nb-yellow) 58%);
	padding: 0 4px;
}
.nb-article__body a:not(.wp-block-button__link) {
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
	text-decoration-color: var(--nb-teal);
}
.nb-article__body a:not(.wp-block-button__link):hover { background: var(--nb-yellow); text-decoration-color: var(--nb-ink); }
.nb-article__body strong { background: linear-gradient(transparent 62%, var(--nb-mint) 62%); }
.nb-article__body img { border: var(--nb-bw) solid var(--nb-ink) !important; box-shadow: var(--nb-sh); }
.nb-article__body figcaption,
.nb-article__body .wp-element-caption {
	font-family: var(--wp--preset--font-family--mono);
	font-size: .82rem;
	color: #3A3A3A;
	margin-top: 14px;
}
.nb-article__body ul, .nb-article__body ol { padding-left: 1.4em; }
.nb-article__body li::marker { font-weight: 900; color: var(--nb-teal); }
.nb-article__body blockquote,
.nb-article__body .wp-block-quote {
	margin-left: 0; margin-right: 0;
	padding: 18px 22px;
	background: var(--nb-yellow);
	border: var(--nb-bw) solid var(--nb-ink);
	box-shadow: var(--nb-sh);
	font-weight: 700;
}
.nb-article__body table {
	width: 100%;
	border-collapse: collapse;
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink);
	box-shadow: var(--nb-sh);
	font-size: .95rem;
}
.nb-article__body th, .nb-article__body td { border: 2px solid var(--nb-ink); padding: 10px 12px; text-align: left; vertical-align: top; }
.nb-article__body thead th, .nb-article__body tr:first-child th { background: var(--nb-ink); color: var(--nb-yellow); }
.nb-article__body .wp-block-table { overflow-x: auto; }
.nb-article__body pre, .nb-article__body .wp-block-code {
	background: var(--nb-ink); color: var(--nb-mint);
	border: var(--nb-bw) solid var(--nb-ink); box-shadow: 6px 6px 0 var(--nb-pink);
	padding: 18px 20px; overflow-x: auto; font-size: .9rem;
}
.nb-article__body :not(pre) > code {
	background: var(--nb-white); border: 2px solid var(--nb-ink); padding: 0 .3em; font-size: .9em;
}
.nb-article__body details {
	background: var(--nb-white) !important;
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r) !important;
	box-shadow: var(--nb-sh-sm);
	padding: 14px 18px !important;
	margin-block: 14px !important;
}
.nb-article__body details[open] { box-shadow: var(--nb-sh); background: #FFFBEF !important; }
.nb-article__body summary { cursor: pointer; font-weight: 900; }
.nb-article__body hr { border: 0; border-top: var(--nb-bw) dashed var(--nb-ink); }

.nb-article__tags { margin-top: 48px !important; font-weight: 800; font-size: .9rem; }
.nb-article__tags a {
	display: inline-block; margin: 0 6px 8px 0; padding: 2px 10px;
	background: var(--nb-white); border: 2px solid var(--nb-ink); text-decoration: none;
}
.nb-article__tags a::before { content: "#"; }
.nb-article__tags a:hover { background: var(--nb-mint); box-shadow: var(--nb-sh-sm); }
.nb-article__tags .wp-block-post-terms__separator { display: none; }

/* 이전 글 · 다음 글 */
.nb-postnav { margin-top: 56px !important; gap: 20px; align-items: stretch; }
.nb-postnav > * { flex: 1 1 280px; margin: 0 !important; }
.nb-postnav a {
	display: block; height: 100%; padding: 16px 20px;
	background: var(--nb-white); border: var(--nb-bw) solid var(--nb-ink); box-shadow: var(--nb-sh);
	font-weight: 800; text-decoration: none; line-height: 1.5;
}
.nb-postnav a:hover { transform: translate(-3px, -3px); box-shadow: var(--nb-sh-lg); background: var(--nb-yellow); }
.nb-postnav .post-navigation-link__label { display: block; font-family: var(--wp--preset--font-family--mono); font-size: .8rem; }
.nb-backhome { margin-top: 40px !important; }

/* ───────── 바닥글 (2026-10-11 nunchi.biz 바닥글 이식) ───────── */
.nb-footer {
	background: var(--nb-ink);
	color: var(--nb-cream);
	border-top: var(--nb-bw) solid var(--nb-ink);
	padding-top: clamp(48px, 7vw, 76px);
	padding-bottom: 28px;
	margin-top: 0;
}
.nb-foot a { color: var(--nb-cream); text-decoration: none; }
.nb-foot a:hover { color: var(--nb-yellow); text-decoration: underline; text-underline-offset: 3px; }
.nb-foot__grid { display: grid; grid-template-columns: 1.7fr repeat(6, minmax(0, 1fr)); gap: 36px 26px; }
.nb-foot__brand p { margin: 0 0 10px; color: #D8D2C2; font-size: .9rem; line-height: 1.75; }
.nb-foot__name {
	display: flex; align-items: center; gap: 12px;
	margin: 0 0 16px !important; color: var(--nb-cream) !important;
	font-size: 1.45rem !important; font-weight: 900; letter-spacing: -0.03em; line-height: 1.2 !important;
}
.nb-foot__name .nb-eyes { box-shadow: 3px 3px 0 var(--nb-pink); border-color: var(--nb-white); }
.nb-foot__op { color: #BDB6A5 !important; font-size: .82rem !important; }
.nb-foot__op a { color: var(--nb-yellow); text-decoration: underline; text-underline-offset: 3px; }
.nb-foot__h {
	display: inline-block; margin: 0 0 12px; padding: 2px 10px;
	background: var(--nb-yellow); color: var(--nb-ink); font-size: .8rem; font-weight: 900;
}
.nb-foot__h a { color: var(--nb-ink) !important; }
.nb-foot__h a:hover { color: var(--nb-ink) !important; }
.nb-foot__col ul { list-style: none; margin: 0; padding: 0; font-size: .88rem; font-weight: 700; line-height: 1.6; }
.nb-foot__col li { margin: 0 0 9px; }
.nb-foot .nb-ext::after { content: " ↗"; font-size: .8em; opacity: .7; }
.nb-foot__biz {
	display: flex; flex-wrap: wrap; gap: 4px 18px;
	margin-top: 48px; padding-top: 20px; border-top: 2px dashed #4A4A4A;
	font-size: .78rem; color: #BDB6A5;
}
.nb-foot__biz b { color: var(--nb-cream); }
.nb-foot__biz a { text-decoration: underline; text-underline-offset: 3px; }
.nb-foot__base {
	display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 20px;
	margin-top: 16px; font-family: var(--wp--preset--font-family--mono); font-size: .76rem; color: #BDB6A5;
}
.nb-foot__legal { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.nb-foot__legal b { color: var(--nb-cream); }

@media (max-width: 1180px) {
	.nb-foot__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.nb-foot__brand { grid-column: 1 / -1; max-width: 640px; }
}
@media (max-width: 600px) {
	.nb-foot__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 18px; }
}

/* ───────── 중간 폭 ───────── */
@media (max-width: 1240px) {
	.nb-brand__sub { display: none; }
	.nb-nav [class*="nb-ic-"] > .wp-block-navigation-item__content::before { display: none; }
}

/* ───────── 태블릿 폭: 메뉴를 펼침 단추로 접기 (기본은 600px 미만에서만 접힘) ───────── */
@media (min-width: 600px) and (max-width: 1023px) {
	.nb-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.nb-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.nb-nav .wp-block-navigation__responsive-container.is-menu-open { display: flex; }
}

/* ───────── 작은 화면 ───────── */
@media (max-width: 781px) {
	:root { --nb-sh: 4px 4px 0 var(--nb-ink); --nb-sh-lg: 6px 6px 0 var(--nb-ink); }
	.nb-brand__sub, .nb-brand__blog { display: none; }
	.nb-eyes { width: 38px; height: 38px; }
	.nb-eyes svg { width: 28px; height: 28px; }
	.nb-cards .wp-block-post-template { grid-template-columns: 1fr !important; }
	.nb-card__body { padding: 18px 18px 16px; }
	.nb-article__body h2 { border-left-width: 8px; }
}

/* ───────── 움직임 줄이기 ───────── */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; }
	.nb-card:hover, .nb-postnav a:hover, .wp-block-button__link:hover, .nb-brand__home:hover .nb-eyes { transform: none; }
	.nb-eyes .pup { animation: none; }
}

/* ───────── 콘텐츠런처 본문 상자 (인라인 스타일 덮어쓰기) ───────── */
.nb-article__body .summary-box {
	background: var(--nb-mint) !important;
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r) !important;
	box-shadow: var(--nb-sh);
	padding: 18px 22px !important;
}
.nb-article__body .summary-box * { color: var(--nb-ink) !important; }
.nb-article__body .faq { border-top: var(--nb-bw) dashed var(--nb-ink) !important; }
.nb-article__body .cta-box {
	background: var(--nb-yellow) !important;
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r) !important;
	box-shadow: var(--nb-sh-lg);
	font-weight: 700;
}
.nb-article__body .cta-box a {
	background: var(--nb-pink) !important;
	color: var(--nb-ink) !important;
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r) !important;
	box-shadow: var(--nb-sh-sm);
	font-weight: 900 !important;
	text-decoration: none !important;
	transition: transform .12s ease, box-shadow .12s ease;
}
.nb-article__body .cta-box a:hover { transform: translate(-2px, -2px); box-shadow: 5px 5px 0 var(--nb-ink); }
.nb-article__body figure[data-cl-manual] { margin-inline: 0; }

/* 2026-10-11: 분류 딱지 사이 쉼표 숨김, 이모지 이미지는 테두리 제외 */
.nb-card__cat .wp-block-post-terms__separator, .nb-article__cat .wp-block-post-terms__separator { display: none; }
.nb-card__cat a + a, .nb-article__cat a + a, .nb-card__cat span + a, .nb-article__cat span + a { margin-left: 6px; }
.nb-article__body img.emoji, .nb-article__body img.wp-smiley { border: 0 !important; box-shadow: none !important; display: inline !important; width: 1em !important; height: 1em !important; vertical-align: -0.1em; }

/* ───────── 글 상세: 목차 · 본문 · 검색과 연관 글 3단 배치 (2026-10-11) ───────── */
.nb-single {
	padding-left: var(--wp--style--root--padding-left, 24px);
	padding-right: var(--wp--style--root--padding-right, 24px);
}
.nb-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas: "toc" "main" "side";
	gap: 32px;
	max-width: 820px;
	margin: 0 auto;
	align-items: start;
}
.nb-col-toc { grid-area: toc; }
.nb-col-main { grid-area: main; min-width: 0; }
.nb-col-side { grid-area: side; }
.nb-col-toc, .nb-col-side { scrollbar-width: thin; }
.nb-article__body :is(h2, h3) { scroll-margin-top: 100px; }
html { scroll-behavior: smooth; }

@media (min-width: 1024px) {
	.nb-layout {
		max-width: 1160px;
		grid-template-columns: minmax(0, 1fr) 290px;
		grid-template-areas: "toc side" "main side";
		column-gap: 44px;
		row-gap: 28px;
	}
	.nb-col-side { position: sticky; top: 96px; max-height: calc(100vh - 116px); overflow-y: auto; padding: 0 8px 8px 0; }
}
@media (min-width: 1360px) {
	.nb-layout {
		max-width: 1440px;
		grid-template-columns: 230px minmax(0, 800px) 290px;
		grid-template-areas: "toc main side";
		justify-content: center;
		column-gap: 44px;
	}
	.nb-col-toc { position: sticky; top: 96px; max-height: calc(100vh - 116px); overflow-y: auto; padding: 0 8px 8px 0; }
}
@media (max-width: 1359px) {
	.nb-toc .nb-toc__l3 { display: none; }
}

/* 칸 제목 */
.nb-side__h {
	display: inline-block; margin: 0 0 12px; padding: 2px 10px;
	font-size: .8rem; font-weight: 900; letter-spacing: .02em;
	background: var(--nb-ink); color: var(--nb-white);
}

/* 목차 */
.nb-toc {
	padding: 16px 14px 12px;
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink);
	box-shadow: var(--nb-sh-sm);
}
.nb-toc ol { list-style: none; margin: 0; padding: 0; }
.nb-toc li { margin: 0; }
.nb-toc a {
	display: block; padding: 6px 8px;
	border-left: 4px solid transparent;
	font-size: .86rem; font-weight: 700; line-height: 1.45;
	color: #3A3A3A; text-decoration: none;
}
.nb-toc .nb-toc__l3 a { padding-left: 20px; font-size: .8rem; font-weight: 600; }
.nb-toc a:hover { background: var(--nb-cream); color: var(--nb-ink); }
.nb-toc a.is-active { border-left-color: var(--nb-pink); background: var(--nb-yellow); color: var(--nb-ink); font-weight: 900; }

/* 검색창 */
.nb-search { margin: 0 0 24px; }
.nb-search .wp-block-search__inside-wrapper {
	padding: 4px !important;
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r);
	box-shadow: var(--nb-sh-sm);
}
.nb-search .wp-block-search__input {
	min-width: 0; padding: 8px 10px;
	border: 0 !important; background: transparent;
	font-size: .95rem; color: var(--nb-ink);
}
.nb-search .wp-block-search__input:focus { outline: none; }
.nb-search .wp-block-search__inside-wrapper:focus-within { outline: 3px solid var(--nb-pink); outline-offset: 2px; }
.nb-search .wp-block-search__button {
	margin-left: 4px !important; padding: 6px 12px !important;
	background: var(--nb-pink) !important; color: var(--nb-ink) !important;
	border: 2px solid var(--nb-ink) !important; box-shadow: none !important;
}
.nb-search .wp-block-search__button svg { fill: currentColor; }
.nb-search--hero { max-width: 560px; margin-top: 24px; }

/* 연관 글 */
.nb-related {
	padding: 16px 14px 14px;
	background: var(--nb-white);
	border: var(--nb-bw) solid var(--nb-ink);
	box-shadow: var(--nb-sh-sm);
}
.nb-related ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.nb-related li { margin: 0; }
.nb-related a { display: flex; gap: 10px; align-items: flex-start; color: var(--nb-ink); text-decoration: none; }
.nb-related__img { flex: none; width: 64px; height: 64px; overflow: hidden; border: 2px solid var(--nb-ink); background: var(--nb-mint); }
.nb-related__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nb-related__txt { min-width: 0; }
.nb-related__title {
	display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
	font-size: .86rem; font-weight: 800; line-height: 1.42;
}
.nb-related a:hover .nb-related__title { text-decoration: underline; text-decoration-color: var(--nb-pink); text-decoration-thickness: 2px; }
.nb-related time { display: block; margin-top: 4px; font-family: var(--wp--preset--font-family--mono); font-size: .72rem; color: #3A3A3A; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

/* ───────── 상단 메뉴 · 활용 사례 펼침 목록 (2026-10-11, nunchi.biz 메뉴 순서) ───────── */
.nb-ic-book-open { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 7v14'/><path d='M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z'/></svg>"); }
.nb-ic-file-text { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/><path d='M14 2v4a2 2 0 0 0 2 2h4'/><path d='M10 9H8'/><path d='M16 13H8'/><path d='M16 17H8'/></svg>"); }
.nb-ic-zap { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z'/></svg>"); }
.nb-ic-briefcase { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16'/><rect width='20' height='14' x='2' y='6' rx='2'/></svg>"); }
.nb-ic-store { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7'/><path d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/><path d='M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4'/><path d='M2 7h20'/></svg>"); }
.nb-ic-folder { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z'/></svg>"); }
.nb-ic-map-pin { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 4.99-5.53 10.19-7.4 11.8a1 1 0 0 1-1.2 0C9.53 20.19 4 14.99 4 10a8 8 0 0 1 16 0'/><circle cx='12' cy='10' r='3'/></svg>"); }
.nb-ic-target { --nb-ic: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><circle cx='12' cy='12' r='6'/><circle cx='12' cy='12' r='2'/></svg>"); }
.nb-nav .nb-dd > .wp-block-navigation__submenu-icon { margin-left: -4px; width: 12px; height: 12px; }
.nb-nav .nb-dd > .wp-block-navigation__submenu-icon svg { stroke: currentColor; stroke-width: 2.5; }
.nb-nav .nb-dd .wp-block-navigation__submenu-container {
	min-width: 300px !important;
	padding: 8px !important;
	background: var(--nb-white) !important;
	color: var(--nb-ink) !important;
	border: var(--nb-bw) solid var(--nb-ink) !important;
	border-radius: var(--nb-r);
	box-shadow: var(--nb-sh) !important;
	gap: 2px;
	margin-top: 6px;
}
.nb-nav .nb-dd .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: grid !important;
	grid-template-columns: 18px 1fr;
	column-gap: 10px;
	align-items: start;
	width: 100%;
	padding: 9px 10px !important;
	white-space: normal;
	border-radius: 6px;
}
.nb-nav .nb-dd .wp-block-navigation__submenu-container [class*="nb-ic-"] > .wp-block-navigation-item__content::before { display: block !important; grid-row: span 2; margin-top: 3px; }
.nb-nav .nb-dd .wp-block-navigation__submenu-container .wp-block-navigation-item__label { font-weight: 800; font-size: .95rem; }
.nb-nav .nb-dd .wp-block-navigation-item__description { display: block; margin-top: 2px; font-size: .78rem; font-weight: 600; color: #3A3A3A; }
.nb-nav .nb-dd .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--nb-cream); border-color: transparent; box-shadow: none; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .nb-dd .wp-block-navigation__submenu-container { border: 0 !important; box-shadow: none !important; background: transparent !important; padding: 0 0 0 12px !important; min-width: 0 !important; margin-top: 0; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .nb-dd .wp-block-navigation-item__content { font-size: 1.05rem; }
.nb-nav .nb-dd .wp-block-navigation__submenu-container .wp-block-navigation-item__content { line-height: 1.3; row-gap: 3px; }
.nb-nav .nb-dd .wp-block-navigation__submenu-container .wp-block-navigation-item__label { line-height: 1.3; }
.nb-nav .nb-dd .wp-block-navigation-item__description { margin-top: 0; line-height: 1.35; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { align-items: flex-start !important; }
.nb-nav .wp-block-navigation__responsive-container.is-menu-open .nb-dd > .wp-block-navigation-item__content { justify-content: flex-start; text-align: left; }

/* 목차로 이동할 때 소제목이 고정 머리글에 가리지 않도록(1.3.3) */
.nb-col-main :is(h2, h3)[id] { scroll-margin-top: 96px; }

/* ───────── 주제별로 보기 (1.5.0) ───────── */
.nb-browse { margin: 0 0 clamp(36px, 5vw, 56px); }
.nb-browse__h {
	display: inline-block; margin: 0 0 16px; padding: 4px 12px;
	font-size: 1rem; font-weight: 900; letter-spacing: .02em;
	background: var(--nb-ink); color: var(--nb-white); border-radius: var(--nb-r);
}
.nb-browse__cats {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 16px;
}
.nb-browse__cats > li { display: flex; }
.nb-topic {
	--nb-tone: var(--nb-yellow);
	flex: 1; display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px;
	background: var(--nb-white); color: var(--nb-ink) !important; text-decoration: none;
	border: var(--nb-bw) solid var(--nb-ink); border-radius: var(--nb-r);
	box-shadow: var(--nb-sh-sm); border-top: 10px solid var(--nb-tone);
	transition: transform .12s ease, box-shadow .12s ease;
}
.nb-browse__cats li:nth-child(4n+2) .nb-topic { --nb-tone: var(--nb-pink); }
.nb-browse__cats li:nth-child(4n+3) .nb-topic { --nb-tone: var(--nb-mint); }
.nb-browse__cats li:nth-child(4n+4) .nb-topic { --nb-tone: var(--nb-lilac); }
.nb-topic:hover, .nb-topic:focus-visible { transform: translate(-2px, -2px); box-shadow: var(--nb-sh); }
.nb-topic__name { font-size: 1.08rem; font-weight: 900; line-height: 1.35; }
.nb-topic__count { align-self: flex-start; font-size: .78rem; font-weight: 800; padding: 1px 8px; border: 2px solid var(--nb-ink); border-radius: 999px; background: var(--nb-tone); }
.nb-topic__desc { font-size: .86rem; line-height: 1.55; color: #333; }
.nb-browse__sub { margin: 22px 0 10px; font-size: .9rem; font-weight: 900; }
.nb-browse__chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.nb-chip {
	display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px;
	font-size: .86rem; font-weight: 800; color: var(--nb-ink) !important; text-decoration: none;
	background: var(--nb-white); border: 2px solid var(--nb-ink); border-radius: 999px;
	box-shadow: 2px 2px 0 var(--nb-ink); transition: transform .12s ease, background .12s ease;
}
.nb-chip span { font-size: .74rem; font-weight: 700; opacity: .7; }
.nb-chip:hover, .nb-chip:focus-visible { background: var(--nb-yellow); transform: translate(-1px, -1px); }
.nb-chip.is-current { background: var(--nb-ink); color: var(--nb-white) !important; }
.nb-chip.is-current span { opacity: .85; }
.nb-chip--tag { font-weight: 700; }
.nb-browse--compact { margin-bottom: clamp(28px, 4vw, 44px); }
@media (max-width: 599px) {
	.nb-browse__cats { grid-template-columns: 1fr 1fr; gap: 12px; }
	.nb-topic__desc { display: none; }
	.nb-topic { padding: 12px; }
}
