/********************************************************/
/*
/*      FAQs CSS
/*
/********************************************************/
.wp-block-cke-faqs {
	position: relative;
	display: flex;
	flex-direction: column;
	max-width: var(--wp--style--global--content-size) !important;
	padding: var(--wp--preset--spacing--50) 0;
	margin: 0 auto;
	box-sizing: border-box;
}

.wp-block-post-content > .wp-block-cke-faqs:last-child {
	margin-bottom: var(--wp--preset--spacing--40);
}

.wp-block-cke-faqs.has-background {
	padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--70);
}

.wp-block-cke-faqs .wp-block-cke-faqs {
	padding: 0 !important;
	margin: 0 !important;
}

body.single-cke_produit .wp-block-cke-faqs {
	width: 100%;
	padding: var(--wp--preset--spacing--30) 0;
	box-sizing: border-box;
}

.wp-block-cke-faqs:not(.has-filters):has(#no-faq-found) {
	display: none !important;
}

/* Filters */
#faq-filter-form {
	position: relative;
	margin-bottom: calc(var(--wp--preset--spacing--60) * 2);
}

#faq-filter-form.disabled {
	pointer-events: none !important;
}

#faq-filter-form .faq-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	row-gap: .25rem;
}

#faq-filter-form .faq-filters > h6 {
	width: 100%;
	text-align: center;
	margin: var(--wp--preset--spacing--20) 0;
}

#faq-filter-form .faq-filter:not(:last-child) {
	border-right: 1px solid var(--wp--preset--color--black);
}

#faq-filter-form .faq-filter label {
	display: block;
	height: 1.5rem;
	line-height: 1.5rem;
	font-weight: 500;
	cursor: pointer;
	color: var(--wp--preset--color--black);
	background: transparent;
	padding: .25rem .75rem;
	transition: background .25s, color .25s;
}

#faq-filter-form .faq-filter input:checked + label {
	color: var(--wp--preset--color--white);
	background: var(--wp--preset--color--black);
}

/* Items */
#faq-items {
	position: relative;
	display: flex;
	flex-direction: column;
	opacity: 1;
	transition: opacity .4s;
}

body:is(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items {
	/* margin-top: var(--wp--preset--spacing--40); */
	padding-bottom: 0;
}

body:not(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item.is-subcategory {
	padding-left: var(--wp--preset--spacing--30);
	border-left: 1px solid var(--wp--preset--color--black);
}

html.sr > body:not(.wp-admin, .single-cke_produit) .wp-block-cke-faqs.has-filters #faq-items .wp-block-cke-accordeon-item {
	visibility: hidden;
}

body:not(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item.is-subcategory .wp-block-cke-accordeon-item:last-child {
	margin-block-end: 0 !important;
}

body:not(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item:not(.is-subcategory) + .faq-item.is-subcategory {
	margin-top: var(--wp--preset--spacing--20);
}

body:not(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item:not(.is-subcategory):has(.wp-block-cke-accordeon-item) + .faq-item.is-subcategory {
	margin-top: calc(var(--wp--preset--spacing--60) * -1);
}

body:not(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item.is-subcategory + .faq-item:not(.is-subcategory) {
	margin-top: var(--wp--preset--spacing--60);
}

body:not(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item.is-subcategory + .faq-item.is-subcategory {
	padding-top: var(--wp--preset--spacing--40);
}

body:is(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item.is-subcategory .faq-group-title {
	font-size: 0;
}

body:is(.single-cke_produit, .wp-admin.post-type-cke_produit) #faq-items .faq-item.is-subcategory .faq-group-title::before {
	content: 'FAQ';
	font-size: var(--wp--preset--font-size--4-x-large);
}

#faq-items .faq-item:last-child .wp-block-cke-accordeon-item:last-child {
	margin-block-end: 0 !important;
}

/* No FAQ found message & Spinner */
#no-faq-found {
	padding: var(--wp--preset--spacing--40) 0;
	margin: 0 auto;
}

#spinner {
	display: none;
	position: absolute;
	top: 50vh;
	left: 50%;
	width: 12rem;
	height: auto;
	aspect-ratio: 1;
	translate: -50% -50%;
	z-index: 1;
}

.htmx-request + #spinner {
	display: block;
}

/* Backend specific styles */
body.wp-admin #faq-filter-form {
	pointer-events: none !important;
}

body.wp-admin #faq-filter-form input {
	display: none !important;
}

body.wp-admin #faq-items .faq-item.is-subcategory .wp-block-cke-accordeon-item:last-child {
	margin-block-end:  var(--wp--preset--spacing--50) !important;
}

@media screen and (max-width: 1505px) {
	.wp-block-cke-faqs { width: 100% !important; max-width: 100% !important; padding-inline: var(--wp--custom--outer-pad) !important; box-sizing: border-box; }
}

@media screen and (max-width: 1000px) {
	.wp-block-cke-faqs { padding: 0 0 var(--wp--preset--spacing--50); }
	#faq-filter-form { margin-bottom: var(--wp--preset--spacing--60); }
}