/**
 * GENERATED FILE -- do not edit directly.
 * Built by Automation/Tools/build-combined-theme-css.sh from:
 * - header.css
 * - footer.css
 * - sections.css
 * - entry-list.css
 * Edit the individual source files above, then re-run that script
 * and redeploy this file. Concatenation order matches the exact
 * order these files were previously enqueued in inc/enqueue.php,
 * so cascade/specificity behavior is unchanged from before.
 */

/* ---- header.css ---- */
.salimpick-header .site-header {
	border-bottom: var(--sp-border-width) solid var(--sp-color-border);
}

/* Wordmark: same font stack, just a touch more deliberate than the parent default. */
.salimpick-header .site-branding .site-title,
.salimpick-header .site-branding__title,
.salimpick-header .site-branding__text a {
	color: var(--sp-color-text);
	font-weight: 700;
	letter-spacing: -0.01em;
}

/* Primary nav: slightly larger type, more breathing room, sage active/hover only. */
.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item > a {
	font-size: var(--sp-font-size-base);
	padding-inline: var(--sp-space-3);
}

.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item > a:hover {
	color: var(--sp-color-primary) !important;
}

.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a,
.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-parent > a,
.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-ancestor > a,
.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item.current-page-item > a,
.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item.current-page-parent > a,
.salimpick-header .main-navigation .primary-menu-container > ul > li.menu-item.current-page-ancestor > a {
	color: var(--sp-color-primary) !important;
}

/* Search + mobile menu toggle icons: match the sage accent instead of Kadence's default highlight. */
.salimpick-header .search-toggle-open-container .search-toggle-open:hover,
.salimpick-header .search-toggle-open-container .search-toggle-open:focus,
.salimpick-header .mobile-toggle-open-container .menu-toggle-open:hover,
.salimpick-header .mobile-toggle-open-container .menu-toggle-open:focus-visible {
	color: var(--sp-color-primary) !important;
}

@media (max-width: 767px) {
	.salimpick-header .site-header {
		padding-block: var(--sp-space-2);
	}

	/* Kadence's own toggle buttons render under the 44px tap-target
	   guideline on mobile; pad them out without changing icon size. */
	.salimpick-header .search-toggle-open-container .search-toggle-open,
	.salimpick-header .mobile-toggle-open-container .menu-toggle-open {
		min-width: 44px;
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}
}

/* Mobile/tablet header was two rows: Kadence's top row held only the
   search toggle (44px) above the 80px brand + menu row, so 124px of the
   first screen went to chrome. Lay the search row over the brand row,
   just left of the menu toggle, and trim the brand row to 64px. The
   search and menu drawers themselves are unchanged. */
@media (max-width: 1024px) {
	.salimpick-header #mobile-header .site-header-upper-inner-wrap {
		position: relative;
	}

	.salimpick-header #mobile-header .site-top-header-wrap {
		position: absolute;
		top: 0;
		bottom: 0;
		right: calc(var(--sp-space-4) + 56px);
		z-index: 3;
		display: flex;
		align-items: center;
		background: transparent;
		border: 0;
	}

	.salimpick-header #mobile-header .site-top-header-wrap .site-header-row-container-inner {
		background: transparent;
		border: 0;
	}

	.salimpick-header #mobile-header .site-top-header-wrap .site-container {
		padding: 0;
		max-width: none;
	}

	.salimpick-header #mobile-header .site-top-header-inner-wrap {
		min-height: 0;
	}

	.salimpick-header #mobile-header .site-main-header-inner-wrap {
		min-height: 64px;
	}
}

/* ---- footer.css ---- */
/* A distinct closing tone (warm beige, not the body's own off-white)
   is what actually separates this from a bare WordPress footer that
   just fades into the page above it -- the content/structure was
   already fine, it just had zero visual boundary. */
.salimpick-footer .site-footer {
	background-color: var(--sp-color-beige);
	color: var(--sp-color-text-muted);
	border-top: var(--sp-border-width) solid var(--sp-color-border);
}

.salimpick-footer .site-footer a {
	color: var(--sp-color-text);
}

.salimpick-footer-content {
	max-width: 1200px;
	margin-inline: auto;
	padding: var(--sp-space-7) var(--sp-space-4) var(--sp-space-5);
}

.salimpick-footer-content__inner {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--sp-space-5);
	margin-bottom: var(--sp-space-5);
}

/* Same eyebrow treatment as .salimpick-hero__eyebrow -- reusing the
   one small-caps-style label pattern the site already has, rather than
   inventing a second heading style just for the footer. Uses
   --sp-color-link-accessible, not --sp-color-primary directly: this is
   small text, and tokens.css's own note documents --sp-color-primary
   falling short of WCAG AA (4.5:1) at body/label text sizes. */
.salimpick-footer-content__heading {
	font-size: var(--sp-font-size-xs);
	font-weight: 700;
	letter-spacing: 0.06em;
	margin: 0 0 var(--sp-space-3);
	color: var(--sp-color-link-accessible);
}

.salimpick-footer-content__col ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--sp-space-1);
}

.salimpick-footer-content__col a {
	text-decoration: none;
	font-size: var(--sp-font-size-sm);
}

.salimpick-footer-content__col a:hover {
	color: var(--sp-color-primary);
}

.salimpick-footer-content__desc {
	font-size: var(--sp-font-size-sm);
	margin: 0 0 var(--sp-space-2);
}

.salimpick-footer-content__copyright {
	font-size: var(--sp-font-size-xs);
	border-top: var(--sp-border-width) solid var(--sp-color-border);
	padding-top: var(--sp-space-4);
	margin: 0;
}

.salimpick-footer-content__note {
	font-size: var(--sp-font-size-xs);
	line-height: 1.7;
	max-width: 46em;
	margin: 0 0 var(--sp-space-4);
	word-break: keep-all;
	overflow-wrap: break-word;
}

.salimpick-footer-content__note a {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Mobile: was one centred column, 714px tall at 390 -- a long list
   that read like a bare WordPress footer. Categories and tools sit
   side by side (both are short lists), the site block spans below,
   left-aligned to match the article column. */
@media (max-width: 767px) {
	.salimpick-footer-content {
		padding-top: var(--sp-space-6);
	}

	.salimpick-footer-content__inner {
		grid-template-columns: 1fr 1fr;
		column-gap: var(--sp-space-4);
		row-gap: var(--sp-space-5);
	}

	.salimpick-footer-content__col:last-child {
		grid-column: 1 / -1;
	}

	.salimpick-footer-content__col a {
		display: inline-block;
		padding-block: 2px;
		word-break: keep-all;
	}
}

/* ---- sections.css ---- */
/* Shared container + heading rules for homepage sections. */

.salimpick-section {
	max-width: 1200px;
	margin-inline: auto;
	padding: 2.5rem var(--sp-space-4);
}

.salimpick-section-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: var(--sp-space-4);
	flex-wrap: wrap;
	margin: 0 0 var(--sp-space-5);
}

.salimpick-section-heading-group {
	display: flex;
	flex-direction: column;
	gap: var(--sp-space-1);
}

.salimpick-section-heading {
	font-size: var(--sp-font-size-xl);
	color: var(--sp-color-text);
	margin: 0;
}

.salimpick-section-desc {
	font-size: var(--sp-font-size-sm);
	color: var(--sp-color-text-muted);
	margin: 0;
}

.salimpick-section-link {
	flex-shrink: 0;
	font-size: var(--sp-font-size-sm);
	font-weight: 600;
	color: var(--sp-color-link-accessible); /* was --sp-color-primary: 2.86:1 (C3 a11y) */
	text-decoration: none;
	white-space: nowrap;
	padding-block: var(--sp-space-1);
}

.salimpick-section-link:hover {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.salimpick-section {
		padding: var(--sp-space-6) var(--sp-space-4);
	}

	.salimpick-section-heading {
		font-size: var(--sp-font-size-lg);
	}

	.salimpick-section-header {
		align-items: flex-start;
	}
}

/* 2026-10-01: static pages (소개, 자료와 계산 방법, 문의, 개인정보처리방침)
   render through Kadence's .entry-content.single-content, which never got
   the keep-all rule posts have -- the methodology page broke "링 / 크를",
   "모 / 델이" at 390. Same rule as article bodies. */
.page .entry-content.single-content {
	word-break: keep-all;
	overflow-wrap: break-word;
}

/* ---- entry-list.css ---- */
/**
 * Shared "editorial list" styling — used by archive.php, search.php, and
 * single posts' related-posts section. Divided rows, not cards: no border,
 * no radius, no shadow around each item, just a thin line between them.
 */

.salimpick-entry-list {
	display: flex;
	flex-direction: column;
}

.salimpick-entry-list__item {
	display: flex;
	align-items: flex-start;
	gap: var(--sp-space-5);
	padding-block: var(--sp-space-5);
	border-bottom: var(--sp-border-width) solid var(--sp-color-border);
}

.salimpick-entry-list__item:first-child {
	padding-top: 0;
}

.salimpick-entry-list__thumb {
	flex-shrink: 0;
	display: block;
	width: 160px;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: var(--sp-radius-sm);
	background: var(--sp-color-bg);
}

.salimpick-entry-list__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.salimpick-entry-list__body {
	min-width: 0;
	flex: 1;
}

.salimpick-entry-list__meta {
	display: flex;
	align-items: center;
	gap: var(--sp-space-2);
	margin-bottom: var(--sp-space-1);
}

.salimpick-entry-list__category {
	font-size: var(--sp-font-size-sm);
	font-weight: 700;
	color: var(--sp-color-link-accessible); /* was --sp-color-primary: 2.86:1 (C3 a11y) */
}

.salimpick-entry-list__date {
	font-size: var(--sp-font-size-xs);
	color: var(--sp-color-text-muted);
}

.salimpick-entry-list__category + .salimpick-entry-list__date::before {
	content: "· ";
}

.salimpick-entry-list__title {
	font-size: var(--sp-font-size-lg);
	font-weight: 700;
	margin: 0 0 var(--sp-space-1);
	word-break: keep-all;
	overflow-wrap: break-word;
}

.salimpick-entry-list__title a {
	color: var(--sp-color-text);
	text-decoration: none;
}

.salimpick-entry-list__title a:hover {
	color: var(--sp-color-primary);
}

.salimpick-entry-list__excerpt {
	font-size: var(--sp-font-size-sm);
	color: var(--sp-color-text-muted);
	line-height: var(--sp-line-height-body);
}

.salimpick-entry-list__excerpt:empty {
	display: none;
}

/* Featured/lead-story row (archive.php's first item on page 1 only) --
   stays a row, not a bordered/shadowed card (this file's own opening
   comment: "no border, no radius, no shadow around each item" is a
   deliberate choice this respects), just a bigger one with the image
   on top instead of beside the text, so an archive of otherwise-
   identical rows gets one real point of hierarchy. Reuses the "최근
   업데이트" wording already established on the homepage hero (batch 4)
   instead of inventing new label text for the same concept. */
.salimpick-entry-list__item--featured {
	flex-direction: column;
	align-items: stretch;
	gap: var(--sp-space-4);
	padding-bottom: var(--sp-space-6);
	margin-bottom: var(--sp-space-2);
	border-bottom-width: 2px;
}

.salimpick-entry-list__item--featured .salimpick-entry-list__thumb {
	width: 100%;
	aspect-ratio: 1.91 / 1;
	border-radius: var(--sp-radius-md);
}

.salimpick-entry-list__item--featured .salimpick-entry-list__label {
	display: block;
	font-size: var(--sp-font-size-xs);
	font-weight: 700;
	letter-spacing: 0.06em;
	color: var(--sp-color-link-accessible);
	margin-bottom: var(--sp-space-1);
}

.salimpick-entry-list__item--featured .salimpick-entry-list__title {
	font-size: var(--sp-font-size-2xl);
	margin-bottom: var(--sp-space-2);
}

.salimpick-entry-list__item--featured .salimpick-entry-list__excerpt {
	font-size: var(--sp-font-size-base);
	max-width: 640px;
}

@media (max-width: 599px) {
	.salimpick-entry-list__item--featured .salimpick-entry-list__title {
		font-size: var(--sp-font-size-xl);
	}
}

/* Related-posts context: no thumbnails, tighter rows, smaller title. */
.salimpick-entry-list--compact .salimpick-entry-list__thumb {
	display: none;
}

.salimpick-entry-list--compact .salimpick-entry-list__item {
	padding-block: var(--sp-space-3);
}

.salimpick-entry-list--compact .salimpick-entry-list__title {
	font-size: var(--sp-font-size-base);
	margin: 0;
}

/* Archive / search header — a single margin-bottom controls the gap down to
   the list that follows, instead of two stacked section paddings. */
.salimpick-archive-header {
	margin-bottom: var(--sp-space-6);
}

.salimpick-archive-header__title {
	font-size: var(--sp-font-size-2xl);
	margin: 0 0 var(--sp-space-2);
	word-break: keep-all;
	overflow-wrap: break-word;
}

.salimpick-archive-header__query {
	color: var(--sp-color-link-accessible); /* was --sp-color-primary: 2.86:1 (C3 a11y) */
}

.salimpick-archive-header__desc {
	max-width: 640px;
	color: var(--sp-color-text-muted);
	line-height: var(--sp-line-height-body);
	margin: 0 0 var(--sp-space-2);
}

.salimpick-archive-header__count {
	font-size: var(--sp-font-size-sm);
	color: var(--sp-color-text-muted);
	margin: 0;
}

.salimpick-archive-header__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--sp-space-4);
	flex-wrap: wrap;
}

/* Re-search form: present, but quieter than the H1 above it — small type,
   no button label, thin border instead of a filled button. */
.salimpick-archive-header__research .search-form {
	display: flex;
	gap: var(--sp-space-1);
}

.salimpick-archive-header__research .search-field {
	width: 180px;
	padding-inline: var(--sp-space-2);
	border: var(--sp-border-width) solid var(--sp-color-border);
	border-radius: var(--sp-radius-sm);
	font-size: var(--sp-font-size-sm);
	min-height: 44px;
}

.salimpick-archive-header__research .search-submit {
	padding-inline: var(--sp-space-3);
	border: var(--sp-border-width) solid var(--sp-color-border);
	border-radius: var(--sp-radius-sm);
	background: var(--sp-color-surface);
	color: var(--sp-color-text-muted);
	font-size: var(--sp-font-size-sm);
	min-height: 44px;
	cursor: pointer;
}

.salimpick-archive-header__research .search-submit:hover {
	border-color: var(--sp-color-primary);
	color: var(--sp-color-primary);
}

/* Empty state */
.salimpick-no-results {
	padding-block: var(--sp-space-6);
}

.salimpick-no-results__message {
	font-size: var(--sp-font-size-lg);
	color: var(--sp-color-text-muted);
	margin: 0 0 var(--sp-space-5);
}

.salimpick-no-results__search .search-form {
	display: flex;
	gap: var(--sp-space-2);
	max-width: 420px;
}

.salimpick-no-results__search .search-field {
	flex: 1;
	padding: var(--sp-space-3);
	border: var(--sp-border-width) solid var(--sp-color-border);
	border-radius: var(--sp-radius-sm);
	font-size: var(--sp-font-size-base);
	min-height: 44px;
}

.salimpick-no-results__search .search-submit {
	padding-inline: var(--sp-space-4);
	border: none;
	border-radius: var(--sp-radius-sm);
	background: var(--sp-color-primary);
	color: var(--sp-color-surface);
	font-weight: 600;
	min-height: 44px;
	cursor: pointer;
}

/* WordPress core pagination (the_posts_pagination()) */
.pagination.navigation {
	margin-top: var(--sp-space-6);
}

.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-space-2);
}

.pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding-inline: var(--sp-space-2);
	border-radius: var(--sp-radius-sm);
	text-decoration: none;
	color: var(--sp-color-text);
	font-size: var(--sp-font-size-sm);
}

.pagination .page-numbers.current {
	background: var(--sp-color-primary-soft);
	font-weight: 700;
}

.pagination a.page-numbers:hover {
	background: var(--sp-color-bg);
}

@media (max-width: 599px) {
	.salimpick-entry-list__item {
		gap: var(--sp-space-3);
	}

	.salimpick-entry-list__thumb {
		width: 96px;
	}

	.salimpick-entry-list__title {
		font-size: var(--sp-font-size-base);
	}

	.salimpick-archive-header__title {
		font-size: var(--sp-font-size-xl);
	}

	.salimpick-archive-header__row {
		align-items: stretch;
	}

	.salimpick-archive-header__research,
	.salimpick-archive-header__research .search-form {
		width: 100%;
	}

	.salimpick-archive-header__research .search-field {
		width: auto;
		flex: 1;
	}
}

/* 2026-10-01 design recovery (archives without thumbnails):
   - on a category's own page every row said the same category name, so
     the label is dropped there (and the "· " separator with it);
   - the excerpt ran ~950px wide at desktop once the thumbnail column was
     gone; it now keeps a reading measure;
   - the category description broke Korean mid-word ("제품 형 / 태나"). */
body.category .salimpick-entry-list__category {
	display: none;
}

body.category .salimpick-entry-list__category + .salimpick-entry-list__date::before {
	content: none;
}

.salimpick-entry-list__excerpt {
	max-width: 46em;
	word-break: keep-all;
	overflow-wrap: break-word;
}

.salimpick-archive-header__desc {
	word-break: keep-all;
	overflow-wrap: break-word;
}

