/**
 * Styling for the [wpex] FAQ expander shortcode.
 *
 * Replaces the discontinued third-party "Expander" plugin, which also used the
 * `[wpex]` shortcode tag but no longer works with the block theme. See
 * tbv_blocks_register_shortcodes() — this shortcode only registers itself when
 * `wpex` isn't already taken, so the legacy plugin (if ever reactivated) wins.
 */

.tbv-expander {
    margin-top: var(--wp--preset--spacing--30);
}

.tbv-expander + hr {
	display: none;
}

.tbv-expander__heading {
	margin: 0;
	box-shadow: 0 var(--wp--custom--stroke--hairline) var(--wp--preset--color--border);
}

.tbv-expander__heading:hover {
	box-shadow: 0 var(--wp--custom--stroke--default) var(--wp--preset--color--border);
}

.tbv-expander.is-open .tbv-expander__heading {
	box-shadow: 0 var(--wp--custom--stroke--default) var(--wp--preset--color--border);
}

.tbv-expander__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	padding: 0 0 var(--wp--preset--spacing--10);
	background: none;
	border: 0;
	cursor: pointer;
	font: inherit;
	text-align: left;
}

.tbv-expander__title {
    font-family: var(--wp--preset--font-family--ibm-plex-sans);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.6;
	color: var(--wp--preset--color--info);
}

.tbv-expander__heading:hover .tbv-expander__title {
    color: color-mix( in srgb, var( --wp--preset--color--info ) 80%,#000000 20% );
}

.tbv-expander__icon {
	display: inline-flex;
	flex: 0 0 auto;
	color: var(--wp--preset--color--info);
	transform: rotate(-90deg);
	transition: transform 250ms ease;
}

.tbv-expander.is-open .tbv-expander__icon {
	color: #1a56db;
	transform: rotate(0deg);
}

.tbv-expander__panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 300ms ease;
}

.tbv-expander.is-open .tbv-expander__panel {
	grid-template-rows: 1fr;
}

.tbv-expander__content {
	overflow: hidden;
	min-height: 0;
}

.tbv-expander__content-inner {
    padding-top: var(--wp--preset--spacing--10);
	line-height: 1.6;
}

.tbv-expander__content-inner > :first-child {
	margin-top: 0;
}

.tbv-expander__content-inner > :last-child {
	margin-bottom: 0;
}
