/* SEO FAQ – etusivun tyylit. Neutraalit oletukset, perii teeman fontit. */

.pmfaq {
	/* Läpikuultavat neutraalit värit mukautuvat sekä light- että dark-moodiin
	   automaattisesti: harmaa sävy näkyy haaleana sekä vaalealla että tummalla
	   taustalla. Teksti perii teeman värin (--pmfaq-q-color: inherit). */
	--pmfaq-border: rgba(127, 127, 127, 0.3);
	--pmfaq-accent: #3b8fde;
	--pmfaq-bg: rgba(127, 127, 127, 0.08);
	--pmfaq-bg-hover: rgba(127, 127, 127, 0.14);
	--pmfaq-q-color: inherit;
	margin: 1.5em 0;
}

.pmfaq-search {
	margin-bottom: 1em;
}

.pmfaq-search-input {
	width: 100%;
	padding: 0.6em 0.8em;
	border: 1px solid var(--pmfaq-border);
	border-radius: 6px;
	font-size: 1em;
	box-sizing: border-box;
}

.pmfaq-item {
	border: 1px solid var(--pmfaq-border);
	border-radius: 6px;
	margin-bottom: 0.5em;
	background: var(--pmfaq-bg);
	overflow: hidden;
}

.pmfaq-q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75em;
	padding: 0.9em 1.1em;
	font-weight: 600;
	cursor: pointer;
	color: var(--pmfaq-q-color);
	list-style: none;
	position: relative;
}

/* Piilota selaimen oletusnuoli */
.pmfaq-q::-webkit-details-marker {
	display: none;
}

.pmfaq-q:hover {
	color: var(--pmfaq-accent);
	background: var(--pmfaq-bg-hover);
}

.pmfaq-item[open] > .pmfaq-q {
	background: var(--pmfaq-bg-hover);
}

.pmfaq-q:focus-visible {
	outline: 2px solid var(--pmfaq-accent);
	outline-offset: -2px;
}

.pmfaq-q-text {
	flex: 1 1 auto;
}

/* +/- ikoni */
.pmfaq-icon {
	flex: 0 0 auto;
	width: 14px;
	height: 14px;
	position: relative;
}

.pmfaq-icon::before,
.pmfaq-icon::after {
	content: "";
	position: absolute;
	background: currentColor;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

.pmfaq-icon::before {
	top: 6px;
	left: 0;
	width: 14px;
	height: 2px;
}

.pmfaq-icon::after {
	top: 0;
	left: 6px;
	width: 2px;
	height: 14px;
}

.pmfaq-item[open] .pmfaq-icon::after {
	transform: scaleY(0);
	opacity: 0;
}

.pmfaq-a {
	padding: 0 1.1em 1.1em;
	line-height: 1.6;
}

.pmfaq-a > :first-child {
	margin-top: 0;
}

.pmfaq-a > :last-child {
	margin-bottom: 0;
}

/* Lista-tyyli: ei klikkausta, kaikki auki */
.pmfaq--list .pmfaq-q {
	cursor: default;
}

.pmfaq--list .pmfaq-icon {
	display: none;
}

.pmfaq-noresults {
	color: #777;
	font-style: italic;
}
