/**
 * FAQ accordion styles for Yoast and Rank Math FAQ blocks.
 */

.wp-block-yoast-faq-block,
#rank-math-faq,
.wp-block-rank-math-faq-block {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.schema-faq-section,
#rank-math-faq .rank-math-list-item,
.wp-block-rank-math-faq-block .rank-math-list-item {
	background-color: var(--wp--preset--color--light-gray);
	border-radius: 8px;
	padding: 0 var(--wp--preset--spacing--30);
	box-shadow: var(--wp--preset--shadow--card);
	overflow: hidden;
	list-style: none;
	margin: 0;
	transition: box-shadow var(--cam-duration) var(--cam-ease);

	&:hover {
		box-shadow: var(--wp--preset--shadow--card-hover);
	}

	&.is-open {
		.schema-faq-answer,
		.rank-math-answer {
			padding-bottom: var(--wp--preset--spacing--30);
			opacity: 1;
		}
	}
}

.schema-faq-question,
.rank-math-question {
	display: block;
	font-weight: 700;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--medium-large);
	line-height: 1.8;
	letter-spacing: 0.36px;
	cursor: pointer;
	position: relative;
	padding: 22px 40px 22px 0;
	margin: 0;
}

.rank-math-question {
	font-family: inherit;
	appearance: none;
	-webkit-appearance: none;
	background: transparent;
	border: 0;
	text-align: left;
}

.schema-faq-question::after,
.rank-math-question::after {
	content: "";
	position: absolute;
	right: 2px;
	top: 50%;
	display: block;
	width: 10px;
	height: 10px;
	border-right: 2px solid #64748b;
	border-bottom: 2px solid #64748b;
	transform: translateY(-60%) rotate(45deg);
	transform-origin: center;
	transition: transform 0.35s var(--cam-ease);
	pointer-events: none;
}

.schema-faq-section.is-open .schema-faq-question::after,
#rank-math-faq .rank-math-list-item.is-open .rank-math-question::after,
.wp-block-rank-math-faq-block .rank-math-list-item.is-open .rank-math-question::after {
	transform: translateY(-45%) rotate(225deg);
}

.schema-faq-answer,
.rank-math-answer {
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.43;
	margin: 0;
	padding-bottom: 0;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: max-height 0.35s var(--cam-ease),
	            opacity 0.25s var(--cam-ease),
	            padding-bottom 0.35s var(--cam-ease);
}

#rank-math-faq .rank-math-list,
.wp-block-rank-math-faq-block .rank-math-list {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	list-style: none;
	padding: 0;
	margin: 0;
}

#rank-math-faq .rank-math-answer > :first-child,
.wp-block-rank-math-faq-block .rank-math-answer > :first-child {
	margin-top: 0;
}

#rank-math-faq .rank-math-answer > :last-child,
.wp-block-rank-math-faq-block .rank-math-answer > :last-child {
	margin-bottom: 0;
}
