.faq-generator-block {
	margin: 2em 0;
	padding: 1.5em;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	background: #f8fafc;
}

.faq-generator-title {
	margin: 0 0 1em;
	font-size: 1.4em;
	font-weight: 700;
	color: #1a202c;
}

.faq-item {
	margin-bottom: 0.5em;
	border: 1px solid #e2e8f0;
	border-radius: 4px;
	background: #fff;
	overflow: hidden;
}

.faq-item:last-child {
	margin-bottom: 0;
}

.faq-question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.9em 1em;
	font-weight: 600;
	font-size: 0.97em;
	color: #2d3748;
	cursor: pointer;
	list-style: none;
	user-select: none;
}

.faq-question::-webkit-details-marker {
	display: none;
}

.faq-question::after {
	content: '+';
	font-size: 1.2em;
	font-weight: 400;
	color: #718096;
	flex-shrink: 0;
	margin-left: 1em;
	transition: transform 0.2s ease;
}

.faq-item[open] > .faq-question::after {
	content: '−';
}

.faq-answer {
	margin: 0;
	padding: 0 1em 1em;
	font-size: 0.95em;
	color: #4a5568;
	line-height: 1.7;
}
