/**
 * core/heading - Kicker
 */

:is(.wp-block-heading, .wp-block-post-title):is(.is-style-kicker, .is-style-small-kicker, .is-style-large-kicker) {
	/* Kicker with background color */
	&.has-background {
		inline-size: fit-content;
		padding: 0.66em;
		border-radius: var(--wp--preset--border-radius--small);
	}

	& + * {
		margin-block-start: var(--wp--custom--kicker--default--margin-bottom);
	}

	/* Add margin to the next heading if it has the xx-large font size */
	& + :where(.wp-block-heading, .wp-block-post-title).has-xx-large-font-size {
		margin-block-start: var(--wp--preset--spacing--40);
	}
}

/* Large */
:is(.wp-block-heading, .wp-block-post-title):is(.is-style-large-kicker) {
	margin-block-end: var(--wp--custom--kicker--large--margin-bottom);
	font-family: var(--wp--custom--kicker--large--font-family);
	font-size: var(--wp--custom--kicker--large--font-size);
	font-weight: var(--wp--custom--kicker--large--font-weight);
	letter-spacing: var(--wp--custom--kicker--large--letter-spacing);
	line-height: var(--wp--custom--kicker--large--line-height);
	text-transform: var(--wp--custom--kicker--large--text-transform);
}

/* Small */
:is(.wp-block-heading, .wp-block-post-title):is(.is-style-small-kicker) {
	margin-block-end: var(--wp--custom--kicker--small--margin-bottom);
	font-family: var(--wp--custom--kicker--small--font-family);
	font-size: var(--wp--custom--kicker--small--font-size);
	font-weight: var(--wp--custom--kicker--small--font-weight);
	letter-spacing: var(--wp--custom--kicker--small--letter-spacing);
	line-height: var(--wp--custom--kicker--small--line-height);
	text-transform: var(--wp--custom--kicker--small--text-transform);

	&.has-background {
		padding: 4px;
	}
}

/* Default */
:is(.wp-block-heading, .wp-block-post-title):is(.is-style-kicker) {
	margin-block-end: var(--wp--custom--kicker--default--margin-bottom);
	font-family: var(--wp--custom--kicker--default--font-family);
	font-size: var(--wp--custom--kicker--default--font-size);
	font-weight: var(--wp--custom--kicker--default--font-weight);
	letter-spacing: var(--wp--custom--kicker--default--letter-spacing);
	line-height: var(--wp--custom--kicker--default--line-height);
	text-transform: var(--wp--custom--kicker--default--text-transform);

	&:not(.has-background) {
		color: var(--wp--preset--color--primary);
	}
}
