/*
 * Information guide bulletin board.
 * All rules are deliberately scoped so 02–09 page layouts remain unchanged.
 */
.guide-board,
.guide-article {
	--guide-ink: #142338;
	--guide-muted: #627188;
	--guide-line: #dce4ee;
	--guide-blue: #1764c5;
	--guide-teal: #008b7a;
	--guide-surface: #f5f8fc;
	background: #fff;
	color: var(--guide-ink);
	font-family: Pretendard, "Noto Sans KR", "Malgun Gothic", Arial, sans-serif;
	padding: 0 0 72px;
}

.guide-board *,
.guide-article * {
	box-sizing: border-box;
}

.guide-board__breadcrumb {
	background: #eef2f6;
	color: #516174;
	display: flex;
	gap: 10px;
	align-items: center;
	font-size: 14px;
	margin-bottom: 48px;
	padding: 16px max(24px, calc((100% - 1200px) / 2));
}

.guide-board__breadcrumb a {
	color: #42546a;
	text-decoration: none;
}

.guide-board__breadcrumb a:hover,
.guide-board__breadcrumb a:focus-visible {
	color: var(--guide-blue);
	text-decoration: underline;
}

.guide-board__layout {
	display: grid;
	gap: 52px;
	grid-template-columns: 256px minmax(0, 1fr);
	margin: 0 auto;
	max-width: 1200px;
	padding: 0 24px;
}

.guide-board__sidebar {
	align-self: start;
	background: #fff;
	border: 1px solid #d7e0ec;
	border-radius: 0 0 24px 24px;
	overflow: hidden;
}

.guide-board__sidebar-head {
	background: linear-gradient(145deg, #1f6dd0, #174fad);
	color: #fff;
	padding: 30px 26px 24px;
}

.guide-board__sidebar-head span,
.guide-board__eyebrow {
	color: var(--guide-teal);
	display: block;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: -.02em;
	margin: 0 0 8px;
}

.guide-board__sidebar-head span {
	color: #cfe5ff;
	font-size: 11px;
	letter-spacing: .08em;
}

.guide-board__sidebar h2 {
	color: #fff;
	font-size: 30px;
	line-height: 1.2;
	margin: 0 0 12px;
}

.guide-board__sidebar p {
	font-size: 14px;
	line-height: 1.55;
	margin: 0;
}

.guide-board__category-nav {
	padding: 18px 22px;
}

.guide-region-tree{margin:10px 12px 14px;border:1px solid #dce7df;border-radius:14px;background:#f8faf6}.guide-region-tree>summary{padding:13px 14px;font-weight:850;color:#1d594d;cursor:pointer}.guide-region-tree__body{padding:0 10px 10px}.guide-region-tree__body details{margin:7px 0;border-left:2px solid #d9e8dd;padding-left:10px}.guide-region-tree__body summary{padding:7px 2px;font-weight:750;cursor:pointer}.guide-region-tree__body a{display:block!important;padding:7px 9px!important;border:0!important;border-radius:8px;font-size:14px}.guide-region-tree__listing{font-weight:800;color:#176b59!important}.guide-region-tree__localities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.guide-board__inheritance{margin:0 0 18px;padding:13px 16px;border-left:4px solid #96b92b;background:#f5f8e9;color:#45533f}.guide-board__inheritance strong{margin-right:8px;color:#315f26}

.guide-board__category-nav a {
	border-bottom: 1px solid #e4e9f0;
	color: #26384f;
	display: flex;
	font-size: 16px;
	font-weight: 700;
	justify-content: space-between;
	padding: 17px 4px;
	text-decoration: none;
}

.guide-board__category-nav a:last-child {
	border-bottom: 0;
}

.guide-board__category-nav a::after {
	content: "›";
	font-size: 23px;
	line-height: 16px;
}

.guide-board__category-nav a:hover,
.guide-board__category-nav a:focus-visible,
.guide-board__category-nav .is-active {
	color: var(--guide-blue);
}

.guide-board__category-group {
	border-bottom: 1px solid #e4e9f0;
}

.guide-board__category-group > .guide-board__category-parent {
	border-bottom: 0;
}

.guide-board__category-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center}.guide-board__category-row>a{border:0!important;color:#172b29!important;background:transparent!important}.guide-board__submenu-toggle{display:grid;width:38px;height:38px;place-items:center;border:1px solid #dce5e0;border-radius:50%;background:#fff;color:#255b50;font-size:20px;font-weight:900;cursor:pointer;transition:transform .2s}.guide-board__submenu-toggle[aria-expanded="true"]{transform:rotate(180deg)}.guide-board__category-subnav[hidden],.guide-region-tree__body[hidden]{display:none}
.guide-region-tree{margin:0;border:0;border-top:1px solid #e4e9f0;border-radius:0;background:transparent}.guide-region-tree__body{max-height:430px;padding:2px 8px 14px;overflow:auto}.guide-region-tree__body details{margin:7px 0;border-left:2px solid #d9e8dd;padding-left:10px}.guide-region-tree__body summary{padding:9px 4px;color:#273a35;font-weight:800;cursor:pointer}.guide-region-tree__parent{font-weight:850!important}

.guide-board__category-subnav {
	display: grid;
	gap: 4px;
	padding: 0 0 14px 10px;
}

.guide-board__category-subnav a {
	align-items: center;
	border: 0;
	border-radius: 9px;
	color: #5d6b7e;
	font-size: 13px;
	font-weight: 650;
	justify-content: flex-start;
	line-height: 1.35;
	padding: 8px 10px;
}

.guide-board__category-subnav a::before {
	background: #b9c7d8;
	border-radius: 50%;
	content: "";
	height: 4px;
	margin-right: 8px;
	width: 4px;
}

.guide-board__category-subnav a::after { display: none; }

.guide-board__category-subnav a:hover,
.guide-board__category-subnav a:focus-visible,
.guide-board__category-subnav a.is-active {
	background: #edf8f5;
	color: #087a68;
}

.guide-board__category-subnav a.is-active::before { background: #08a48c; }

.guide-board__sidebar-note {
	background: #f3f8ff;
	border-top: 1px solid #e1e8f2;
	color: #506074;
	font-size: 12px !important;
	padding: 16px 22px;
}

.guide-board__content,
.guide-article__content {
	min-width: 0;
}

.guide-board__intro {
	align-items: flex-end;
	display: flex;
	gap: 28px;
	justify-content: space-between;
	margin-bottom: 25px;
}

.guide-board__intro h1,
.guide-article__header h1 {
	color: var(--guide-ink);
	font-size: clamp(32px, 3vw, 46px);
	letter-spacing: -.06em;
	line-height: 1.2;
	margin: 0 0 12px;
}

.guide-board__intro p:not(.guide-board__eyebrow) {
	color: var(--guide-muted);
	font-size: 16px;
	line-height: 1.6;
	margin: 0;
}

.guide-board__write {
	background: var(--guide-blue);
	border-radius: 3px;
	color: #fff !important;
	flex: 0 0 auto;
	font-size: 15px;
	font-weight: 800;
	padding: 14px 26px;
	text-decoration: none;
}

.guide-board__write:hover,
.guide-board__write:focus-visible {
	background: #0e4eaa;
}

.guide-board__write--muted {
	background: #526279;
}

.guide-board__notice {
	align-items: flex-start;
	background: #f5fbfa;
	border: 1px solid #c5e7e1;
	display: flex;
	gap: 18px;
	margin-bottom: 22px;
	padding: 19px 22px;
}

.guide-board__notice strong {
	color: var(--guide-teal);
	font-size: 15px;
	flex: 0 0 auto;
}

.guide-board__notice p {
	color: #46586c;
	font-size: 14px;
	line-height: 1.55;
	margin: 0;
}

.guide-board__topic-map {
	background: linear-gradient(135deg, #f2f9f7 0%, #f8f7fc 100%);
	border: 1px solid #cfe2df;
	border-radius: 18px;
	display: grid;
	gap: 18px 24px;
	grid-template-columns: minmax(0, 1fr) auto;
	margin: 0 0 24px;
	padding: 22px 24px;
}

.guide-board__topic-map span {
	color: #087a68;
	font-size: 12px;
	font-weight: 800;
}

.guide-board__topic-map h2 {
	color: var(--guide-ink);
	font-size: clamp(19px, 2vw, 25px);
	letter-spacing: -.035em;
	line-height: 1.35;
	margin: 5px 0 0;
}

.guide-board__topic-pillar {
	align-self: center;
	background: #176f63;
	border-radius: 10px;
	color: #fff !important;
	font-size: 14px;
	font-weight: 800;
	padding: 12px 16px;
	text-decoration: none;
	white-space: nowrap;
}

.guide-board__topic-map nav {
	display: grid;
	gap: 8px;
	grid-column: 1 / -1;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.guide-board__topic-map nav a {
	align-items: center;
	background: rgba(255,255,255,.84);
	border: 1px solid #dce6e9;
	border-radius: 10px;
	color: #344b61;
	display: flex;
	font-size: 13px;
	font-weight: 700;
	gap: 12px;
	justify-content: space-between;
	line-height: 1.45;
	padding: 10px 12px;
	text-decoration: none;
}

.guide-board__topic-map nav a:hover,
.guide-board__topic-map nav a:focus-visible { border-color: #66ab9f; color: #176f63; }

.guide-board__search {
	display: flex;
	justify-content: flex-end;
	margin: 22px 0 14px;
}

.guide-board__search input {
	border: 1px solid #b9c5d4;
	border-radius: 0;
	font-size: 15px;
	height: 43px;
	max-width: 360px;
	padding: 0 13px;
	width: 100%;
}

.guide-board__search button {
	background: #293747;
	border: 1px solid #293747;
	color: #fff;
	cursor: pointer;
	font-size: 15px;
	font-weight: 700;
	height: 43px;
	padding: 0 24px;
}

.guide-board__table {
	border-top: 2px solid #314051;
}

.guide-board__row {
	align-items: center;
	border-bottom: 1px solid var(--guide-line);
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) 92px 104px 52px;
	min-height: 62px;
}

.guide-board__row--head {
	background: #f6f8fa;
	font-size: 14px;
	font-weight: 800;
	min-height: 50px;
	text-align: center;
}

.guide-board__row > span:not(.guide-board__category):not(.guide-board__comment-count),
.guide-board__row > time {
	color: #526276;
	font-size: 14px;
	text-align: center;
}

.guide-board__title-cell {
	align-items: center;
	display: flex;
	gap: 8px;
	min-width: 0;
	padding: 10px 12px;
}

.guide-board__title-cell > a {
	color: #1c2e44;
	font-size: 15px;
	font-weight: 700;
	overflow: hidden;
	text-decoration: none;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.guide-board__title-cell > a:hover,
.guide-board__title-cell > a:focus-visible {
	color: var(--guide-blue);
	text-decoration: underline;
}

.guide-board__category {
	background: #e8f7f4;
	border-radius: 999px;
	color: #057a68;
	flex: 0 0 auto;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 8px;
}

.guide-board__comment-count {
	color: var(--guide-blue);
	flex: 0 0 auto;
	font-size: 12px;
	font-weight: 700;
}

.guide-board__empty {
	border-bottom: 1px solid var(--guide-line);
	color: var(--guide-muted);
	font-size: 15px;
	line-height: 1.6;
	padding: 52px 24px;
	text-align: center;
}

.guide-board__pagination {
	margin-top: 28px;
	text-align: center;
}

.guide-board__pagination .page-numbers {
	border: 1px solid #d6dee8;
	color: #4b5d72;
	display: inline-block;
	font-size: 14px;
	line-height: 34px;
	margin: 0 2px;
	min-width: 36px;
	text-decoration: none;
}

.guide-board__pagination .current,
.guide-board__pagination a:hover,
.guide-board__pagination a:focus-visible {
	background: var(--guide-blue);
	border-color: var(--guide-blue);
	color: #fff;
}

.guide-article__paper {
	border-top: 2px solid #314051;
}

.guide-article__header {
	border-bottom: 1px solid var(--guide-line);
	padding: 32px 30px 26px;
}

.guide-article__header h1 {
	font-size: clamp(28px, 3vw, 40px);
	margin-bottom: 18px;
}

.guide-article__meta {
	color: #68778b;
	display: flex;
	font-size: 14px;
	gap: 16px;
}

.guide-article__body {
	border: 1px solid var(--guide-line);
	margin-top: 20px;
	min-height: 180px;
	overflow-wrap: anywhere;
	color: #26364a;
	font-size: 17px;
	line-height: 1.85;
	padding: 38px 30px;
}

.guide-article__body > *:first-child {
	margin-top: 0;
}

.guide-article__body img {
	height: auto;
	max-width: 100%;
}

.guide-article__adjacent {
	background: #fff;
	border: 1px solid var(--guide-line);
	display: grid;
	grid-template-columns: 1fr;
	margin-top: 18px;
}

.guide-article__adjacent-item {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: 72px minmax(0, 1fr);
	min-width: 0;
	padding: 14px 18px;
}

.guide-article__adjacent-item + .guide-article__adjacent-item {
	border-top: 1px solid var(--guide-line);
}

.guide-article__adjacent-item span {
	color: #718096;
	font-size: 12px;
	font-weight: 700;
}

.guide-article__adjacent-item a,
.guide-article__adjacent-item strong,
.guide-article__adjacent-item em {
	display: -webkit-box;
	font-size: 14px;
	font-style: normal;
	line-height: 1.45;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.guide-article__adjacent-item a {
	color: #243b53;
	font-weight: 700;
	text-decoration: none;
}

.guide-article__adjacent-item a:hover,
.guide-article__adjacent-item a:focus-visible {
	color: var(--guide-blue);
	text-decoration: underline;
}

.guide-article__adjacent-item.is-current {
	background: #f3faf8;
}

.guide-article__adjacent-item strong {
	color: var(--guide-blue);
}

.guide-article__adjacent-item em {
	color: #94a3b8;
}

.guide-article__source {
	background: #f6f9fc;
	border: 1px solid #dce6f0;
	margin: 0 30px 24px;
	padding: 20px;
}

.guide-article__source strong {
	font-size: 15px;
}

.guide-article__source p {
	color: #53657a;
	font-size: 14px;
	line-height: 1.6;
	margin: 8px 0 0;
}

.guide-article__related {
	align-items: center;
	border: 1px solid #dce6f0;
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0 30px 24px;
	padding: 18px;
}

.guide-article__related strong {
	font-size: 15px;
	margin-right: 4px;
}

.guide-article__related a,
.guide-article__actions a,
.guide-article__actions .post-edit-link {
	border: 1px solid #cedae6;
	border-radius: 4px;
	color: #344f6e;
	font-size: 14px;
	padding: 8px 11px;
	text-decoration: none;
}

.post-region-links > div {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

.guide-article__actions {
	border-top: 1px solid var(--guide-line);
	display: flex;
	gap: 8px;
	justify-content: flex-end;
	padding: 18px 30px;
}

.guide-comments {
	border-top: 1px solid #dce4ee;
	margin-top: 20px;
	padding-top: 20px;
}

.guide-comments h2 {
	color: #16273c;
	font-size: 25px;
	margin: 0 0 20px;
}

.guide-comments__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.guide-comments .comment-body {
	border-bottom: 1px solid #dce4ee;
	padding: 18px 0;
}

.guide-comments .comment-meta {
	color: #637286;
	font-size: 13px;
}

.guide-comments .comment-content {
	color: #2a3b51;
	font-size: 15px;
	line-height: 1.65;
}

.guide-comments__notice,
.guide-comments__closed {
	background: #fff8e7;
	border: 1px solid #f0db9e;
	color: #6e5921;
	font-size: 14px;
	line-height: 1.55;
	padding: 14px;
}

.guide-comments .comment-respond {
	background: #f7f9fc;
	margin-top: 24px;
	padding: 24px;
}

.guide-comments .comment-respond h3 {
	font-size: 22px;
	margin-top: 0;
}

.guide-comments label {
	display: block;
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 6px;
}

.guide-comments input,
.guide-comments textarea {
	border: 1px solid #b8c5d4;
	font: inherit;
	max-width: 100%;
	padding: 10px;
	width: 100%;
}

.guide-comments .submit {
	background: var(--guide-blue);
	border: 0;
	color: #fff;
	cursor: pointer;
	font-size: 15px;
	font-weight: 800;
	padding: 12px 22px;
}

@media (max-width: 900px) {
	.guide-board__breadcrumb {
		margin-bottom: 24px;
	}
	.guide-board__layout {
		gap: 28px;
		grid-template-columns: 1fr;
	}
	.guide-board__sidebar {
		border-radius: 16px;
	}
	.guide-board__sidebar-head {
		padding: 22px;
	}
	.guide-board__category-nav {
		display: flex;
		gap: 6px;
		overflow-x: auto;
		padding: 12px;
	}
	.guide-board__category-group,
	.guide-board__category-subnav {
		display: contents;
	}
	.guide-board__category-nav a {
		background: #f3f7fb;
		border: 0;
		border-radius: 999px;
		flex: 0 0 auto;
		font-size: 14px;
		padding: 10px 14px;
	}
	.guide-board__category-nav a::after {
		display: none;
	}
	.guide-board__sidebar-note {
		display: none;
	}
}

@media (max-width: 640px) {
	.guide-board,
	.guide-article {
		padding-bottom: 44px;
	}
	.guide-board__breadcrumb {
		font-size: 12px;
		padding: 13px 18px;
	}
	.guide-board__topic-map { grid-template-columns: 1fr; padding: 18px; }
	.guide-board__topic-pillar { justify-self: start; }
	.guide-board__topic-map nav { grid-template-columns: 1fr; }
	.guide-board__layout {
		padding: 0 16px;
	}
	.guide-board__intro {
		align-items: flex-start;
		flex-direction: column;
		gap: 16px;
	}
	.guide-board__intro h1 {
		font-size: 34px;
	}
	.guide-board__write {
		width: 100%;
		text-align: center;
	}
	.guide-board__notice {
		display: block;
		padding: 16px;
	}
	.guide-board__notice p {
		margin-top: 7px;
	}
	.guide-board__search {
		justify-content: stretch;
	}
	.guide-board__search input {
		min-width: 0;
	}
	.guide-board__search button {
		padding: 0 16px;
	}
	.guide-board__row {
		grid-template-columns: minmax(0, 1fr) 70px;
		min-height: 74px;
	}
	.guide-board__row--head,
	.guide-board__number,
	.guide-board__author,
	.guide-board__views {
		display: none;
	}
	.guide-board__title-cell {
		align-items: flex-start;
		flex-wrap: wrap;
		gap: 5px;
		padding-left: 4px;
	}
	.guide-board__title-cell > a {
		flex-basis: 100%;
		white-space: normal;
	}
	.guide-board__date {
		padding-right: 6px;
	}
	.guide-article__header,
	.guide-article__body {
		padding-left: 20px;
		padding-right: 20px;
	}
	.guide-article__meta {
		flex-wrap: wrap;
		gap: 7px 12px;
	}
	.guide-article__source,
	.guide-article__related {
		margin-left: 20px;
		margin-right: 20px;
	}
	.guide-article__actions {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* Board article flow: content box, actions, comments, then supporting information. */
.guide-article__paper > .nuguna-board-toolbar { margin:12px 0 0; padding:0; border:0; }
.guide-article__extras { margin-top:24px; }
.guide-article__body .p2-article-body { padding:0; }
.guide-board--listing { --guide-blue:#237e6b; }
.guide-board__list-options { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:18px 0 12px; color:var(--guide-muted); font-size:14px; }
.guide-board__list-options form { display:flex; align-items:center; gap:8px; }
.guide-board__list-options select,.guide-board__list-options button { min-height:38px; border:1px solid var(--guide-line); border-radius:5px; padding:6px 10px; background:#fff; color:var(--guide-ink); font:inherit; }
.guide-board__list-actions { display:flex; justify-content:flex-end; margin-top:18px; }
.guide-board--listing .guide-board__search input[type="search"] { flex:1; min-width:0; }
.guide-board--listing .guide-board__search button { flex:none; min-width:58px; white-space:nowrap; }
.guide-board__pagination .dots { border:0; }
.guide-board__title-cell { overflow:hidden; }
@media(max-width:640px) {
  .guide-board__list-options { align-items:flex-end; }
  .guide-board__list-options label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
	.guide-article__adjacent-item { gap:10px; grid-template-columns:62px minmax(0,1fr); padding:13px 14px; }
  .guide-article__paper > .nuguna-board-toolbar { gap:10px; align-items:center; }
  .guide-article__paper > .nuguna-board-toolbar > div { gap:6px; width:auto; flex-wrap:nowrap; }
  .guide-article__paper > .nuguna-board-toolbar a { flex:none; padding:9px 10px; font-size:13px; white-space:nowrap; }
}
