/* ForgePress Component: Core Blocks
 * Styling for frequently-used Gutenberg core blocks. */

.wp-block-separator {
	border: none;
	border-top: 1px solid var(--fp-color-border);
	margin: 2rem auto;
	max-width: var(--fp-content);
}

.wp-block-quote {
	border-left: 4px solid var(--fp-color-primary);
	padding-left: 1.5rem;
	margin: 1.5rem 0;
	font-style: italic;
}

.wp-block-quote cite {
	display: block;
	margin-top: 0.5rem;
	font-size: 0.875rem;
	font-style: normal;
	color: var(--fp-color-muted);
}

.wp-block-pullquote {
	border-top: 4px solid var(--fp-color-primary);
	border-bottom: 4px solid var(--fp-color-primary);
	padding: 2rem 0;
	margin: 2rem 0;
	text-align: center;
}

.wp-block-pullquote blockquote {
	border: none;
	padding: 0;
	font-size: 1.5rem;
	font-weight: 700;
}

.wp-block-code {
	background: var(--fp-color-surface);
	padding: 1.25rem;
	border-radius: var(--fp-radius, 6px);
	overflow-x: auto;
	font-size: 0.9rem;
}

.wp-block-code code {
	background: none;
	padding: 0;
}

.wp-block-table {
	width: 100%;
	margin: 1.5rem 0;
}

.wp-block-table th,
.wp-block-table td {
	padding: 0.75rem 1rem;
	border: 1px solid var(--fp-color-border);
	text-align: left;
}

.wp-block-table th {
	background: var(--fp-color-surface);
	font-weight: 700;
}

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

/* Gallery. */
.wp-block-gallery {
	margin: 1.5rem 0;
}

.wp-block-gallery .blocks-gallery-item figcaption {
	background: rgba(0,0,0,0.7);
	color: #fff;
	padding: 0.5rem;
	font-size: 0.8rem;
}

/* Image caption. */
.wp-block-image figcaption,
.wp-block-embed figcaption {
	color: var(--fp-color-muted);
	font-size: 0.85rem;
	text-align: center;
	margin-top: 0.5rem;
}

/* Columns responsive. */
.wp-block-columns {
	gap: 1.5rem;
}

@media (max-width: 599px) {
	.wp-block-columns {
		flex-direction: column;
	}
	.wp-block-column {
		width: 100% !important;
		flex-basis: 100% !important;
	}
}

/* Cover block. */
.wp-block-cover {
	border-radius: var(--fp-radius, 6px);
	overflow: hidden;
}

/* Post meta. */
.fp-post-meta {
	gap: 1rem;
	font-size: 0.85rem;
	color: var(--fp-color-muted);
	flex-wrap: wrap;
}

.fp-post-meta a {
	color: var(--fp-color-muted);
}

.fp-post-meta a:hover {
	color: var(--fp-color-primary);
}

/* Pagination. */
.wp-block-query-pagination,
.wp-block-comments-pagination {
	display: flex;
	gap: 0.5rem;
	justify-content: center;
	margin-top: 2rem;
	flex-wrap: wrap;
}

.wp-block-query-pagination .page-numbers,
.wp-block-comments-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 0.5rem;
	border: 1px solid var(--fp-color-border);
	border-radius: var(--fp-radius, 6px);
	font-size: 0.875rem;
	color: var(--fp-color-foreground);
	text-decoration: none;
	transition: background-color var(--fp-transition-fast, 150ms ease);
}

.wp-block-query-pagination .page-numbers:hover,
.wp-block-comments-pagination .page-numbers:hover {
	background: var(--fp-color-surface);
}

.wp-block-query-pagination .page-numbers.current,
.wp-block-comments-pagination .page-numbers.current {
	background: var(--fp-color-primary);
	border-color: var(--fp-color-primary);
	color: #fff;
}
