/*
Block defaults that theme.json cannot express, plus the registered style
variations. Loaded on the front end and inside the editor canvas, so every value
here is a theme.json preset property. A --driveline-* property is a Customizer
bridge and always carries its token as the fallback, because the editor canvas
never loads main.css, where those properties are declared.

theme.json borders and corner radii are physical, so anything that must mirror in
RTL is declared here with logical properties instead.
*/

.wp-block-quote {
	border-left: 0;
	border-inline-start: var(--wp--custom--stroke--rule) solid var(--driveline-rule, var(--wp--preset--color--gold));
	border-end-end-radius: var(--wp--custom--radius--md);
	border-start-end-radius: var(--wp--custom--radius--md);
	padding-left: 0;
}

.wp-block-quote > :last-child {
	margin-block-end: 0;
}

.wp-block-separator {
	background-color: currentColor;
	border: 0;
	block-size: var(--wp--custom--stroke--hairline);
	margin-inline: 0;
	max-inline-size: 100%;
	opacity: 1;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
	block-size: var(--wp--custom--stroke--rule);
	inline-size: 4.5rem;
}

.wp-block-separator.alignwide,
.wp-block-separator.alignfull {
	inline-size: 100%;
}

.wp-block-separator.aligncenter {
	margin-inline: auto;
}

.wp-block-separator.is-style-dots {
	background: none;
	block-size: auto;
}

.wp-block-table table {
	border-collapse: collapse;
	inline-size: 100%;
}

.wp-block-table th,
.wp-block-table td {
	border: var(--wp--custom--stroke--hairline) solid var(--wp--preset--color--outline);
	padding-block: var(--wp--preset--spacing--30);
	padding-inline: var(--wp--preset--spacing--40);
	text-align: start;
}

.wp-block-table thead {
	border-block-end: var(--wp--custom--stroke--rule) solid var(--driveline-rule, var(--wp--preset--color--gold));
}

.wp-block-table thead th {
	background-color: var(--driveline-accent, var(--wp--preset--color--navy));
	border-color: var(--driveline-accent, var(--wp--preset--color--navy));
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 600;
	letter-spacing: var(--wp--custom--tracking--wider);
	text-transform: uppercase;
}

.wp-block-table.is-style-stripes {
	border-block-end-color: var(--wp--preset--color--outline);
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
	background-color: var(--wp--preset--color--surface);
}

.wp-block-table.is-style-stripes th,
.wp-block-table.is-style-stripes td {
	border-color: transparent;
}

.wp-block-group.is-style-driveline-card {
	background-color: var(--wp--preset--color--base);
	border: var(--wp--custom--stroke--hairline) solid var(--wp--preset--color--outline);
	border-radius: var(--wp--custom--radius--lg);
	box-shadow: var(--wp--custom--shadow--low);
	padding: var(--wp--preset--spacing--50);
	position: relative;
}

.wp-block-group.is-style-driveline-card::before {
	background-color: var(--driveline-rule, var(--wp--preset--color--gold));
	block-size: var(--wp--custom--stroke--rule);
	content: "";
	inline-size: 4.5rem;
	inset-block-start: calc(var(--wp--custom--stroke--rule) * -1);
	inset-inline-start: var(--wp--preset--spacing--50);
	position: absolute;
}

.wp-block-button.is-style-driveline-outline .wp-block-button__link {
	background-color: transparent;
	box-shadow: inset 0 0 0 2px currentColor;
	color: var(--driveline-accent, var(--wp--preset--color--navy));
}

.wp-block-button.is-style-driveline-outline .wp-block-button__link:hover {
	background-color: var(--driveline-accent, var(--wp--preset--color--navy));
	box-shadow: inset 0 0 0 2px var(--driveline-accent, var(--wp--preset--color--navy));
	color: var(--wp--preset--color--base);
}

.wp-block-image.is-style-driveline-framed img {
	background-color: var(--wp--preset--color--base);
	border: var(--wp--custom--stroke--hairline) solid var(--wp--preset--color--outline);
	border-radius: var(--wp--custom--radius--md);
	padding: var(--wp--preset--spacing--20);
}
