/*
 * Phase 8B：資格探索（[qlm_qualification_finder]）専用の見た目。すべて .qlm-finder 配下に
 * scopeしており、既存の資格詳細ページ・クイズ・資格情報等のCSSには影響しない。
 * スマホ優先（1画面で4項目に回答して送信するシンプルな構成）。
 */

.qlm-finder {
	max-width: 640px;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1.6;
	box-sizing: border-box;
}

.qlm-finder * {
	box-sizing: border-box;
	max-width: 100%;
	overflow-wrap: anywhere;
}

.qlm-finder-field {
	border: 1px solid #e6edf3;
	border-radius: 10px;
	padding: 1em 1.1em;
	margin: 0 0 1em;
}

.qlm-finder-field legend {
	font-weight: 600;
	padding: 0 0.4em;
}

.qlm-finder-genre-list,
.qlm-finder-purpose-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em 1.2em;
	margin-bottom: 0.75em;
}

.qlm-finder-purpose-option {
	display: inline-flex;
	align-items: center;
	gap: 0.35em;
}

.qlm-finder-genre-option,
.qlm-finder-undecided-option {
	display: inline-flex;
	align-items: center;
	gap: 0.35em;
}

.qlm-finder-undecided-option {
	padding-top: 0.5em;
	border-top: 1px dashed #dbe2e8;
	width: 100%;
}

.qlm-finder-field select {
	width: 100%;
	max-width: 320px;
	padding: 0.5em;
}

.qlm-finder-error {
	color: #b3261e;
	font-weight: 600;
	margin: 0 0 0.75em;
}

.qlm-finder-submit {
	width: 100%;
	padding: 0.8em 1em;
	font-size: 1.05rem;
	font-weight: 700;
	cursor: pointer;
}

.qlm-finder-results {
	margin-top: 1.5em;
}

.qlm-finder-no-results {
	font-weight: 600;
}

.qlm-finder-no-results-hint {
	color: #556370;
}

.qlm-finder-comparison-heading {
	margin-top: 1.5em;
	font-size: 1.05rem;
}

/* Phase 8D-4：job/income目的でmarket rankingを使った/使わなかった場合の注記。 */
.qlm-finder-market-notice {
	background: #f8f8f6;
	border-left: 3px solid #ddd;
	padding: 0.6em 0.9em;
	border-radius: 0 6px 6px 0;
	margin: 0 0 1em;
	font-size: 0.88em;
	color: #5b6670;
}

.qlm-finder-income-disclaimer {
	margin-top: 0.5em;
}

.qlm-finder-card {
	background: #f6f9fc;
	border: 1px solid #e6edf3;
	border-radius: 10px;
	padding: 1em 1.1em;
	margin-bottom: 1em;
}

.qlm-finder-card-heading {
	font-size: 0.85em;
	font-weight: 700;
	color: #3858e9;
	margin: 0 0 0.4em;
}

.qlm-finder-card-title {
	font-size: 1.1rem;
	margin: 0 0 0.6em;
}

.qlm-finder-card-facts {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 160px, 1fr ) );
	gap: 0.4em 0.75em;
	margin: 0 0 0.75em;
}

.qlm-finder-card-facts dt {
	font-size: 0.8em;
	font-weight: 600;
	color: #556370;
	margin: 0;
}

.qlm-finder-card-facts dd {
	margin: 0;
	font-weight: 600;
}

.qlm-finder-reasons {
	margin: 0 0 0.75em;
	padding-left: 1.2em;
	font-size: 0.92em;
	color: #3a4650;
}

.qlm-finder-card-cta a {
	font-weight: 600;
}

.qlm-finder-compare-cta {
	margin-top: 1.5em;
	text-align: center;
}

.qlm-finder-compare-cta a {
	display: inline-block;
	font-weight: 700;
	padding: 0.7em 1.4em;
	border-radius: 999px;
	background: #eef3ff;
	border: 1px solid #c7d6f7;
}

@media ( max-width: 380px ) {
	.qlm-finder-card-facts {
		grid-template-columns: 1fr;
	}
}
