.faq-item-editor {
	border: 1px solid #ddd;
	border-radius: 4px;
	margin-bottom: 1em;
	background: #fff;
}

.faq-item-editor .faq-question-editor {
	display: flex;
	align-items: center;
	padding: 1em;
	gap: 0.5em;
	background: #f9f9f9;
	border-bottom: 1px solid #ddd;
}

.faq-item-editor .faq-toggle {
	border: none;
	background: none;
	cursor: pointer;
	padding: 0;
	display: flex;
	align-items: center;
	color: #1e1e1e;
}

.faq-item-editor .faq-question-text {
	flex: 1;
	font-weight: 600;
}

.faq-item-editor .faq-answer-editor {
	padding: 1em;
}

/* Frontend styles */
.faq-item {
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	margin-bottom: 1em;
	overflow: hidden;
	background: #fff;
}

.faq-item .faq-question {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1.25em 1.5em;
	background: #f8f9fa;
	border: none;
	cursor: pointer;
	text-align: left;
	font-size: 1.1em;
	font-weight: 600;
	color: #1e1e1e;
	transition: background 0.2s ease;
}

.faq-item .faq-question:hover {
	background: #e9ecef;
}

.faq-item .faq-icon {
	display: flex;
	transition: transform 0.3s ease;
	color: #555;
}

.faq-item .faq-answer {
	display: none;
}

.faq-item .faq-answer-content {
	padding: 0 1.5em;
}

.faq-item .faq-answer-content > *:first-child {
	margin-top: 1em;
}

.faq-item .faq-answer-content > *:last-child {
	margin-bottom: 1.5em;
}

.faq-item[data-open="true"] .faq-question .faq-icon {
	transform: rotate(180deg);
}

.faq-item[data-open="true"] .faq-answer {
	max-height: 2000px;
}