/* BSP Books: library grid, order form, print form */

.bsp-book-library-filters {
	display: flex;
	gap: 12px;
	align-items: center;
	margin-bottom: 24px;
	flex-wrap: wrap;
}

.bsp-book-library-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 24px;
}

.bsp-book-card {
	display: block;
	text-decoration: none;
	color: inherit;
}

.bsp-book-cover img {
	width: 100%;
	height: auto;
	display: block;
}

.bsp-book-title {
	display: block;
	font-weight: bold;
	margin-top: 8px;
}

.bsp-book-author {
	display: block;
	font-size: 0.9em;
	opacity: 0.8;
}

.bsp-book-page {
	display: flex;
	gap: 32px;
	flex-wrap: wrap;
}

.bsp-book-main {
	flex: 3 1 480px;
}

.bsp-book-page-main-only .bsp-book-main {
	flex-basis: 100%;
}

.bsp-book-sidebar {
	flex: 1 1 220px;
}

.bsp-order-cta {
	display: inline-block;
	margin-top: 8px;
	font-weight: bold;
}

/* Honeypot field: hidden from sighted users, still present for bots to fill in. */
.bsp-hp-field {
	position: absolute !important;
	left: -9999px !important;
	top: -9999px !important;
}

.bsp-order-error {
	color: #b32d2e;
}

.bsp-order-success {
	color: #237a3d;
}

@media print {
	body * {
		visibility: hidden;
	}
	.bsp-order-print,
	.bsp-order-print * {
		visibility: visible;
	}
	.bsp-order-print {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
	}
	.bsp-print-only-controls {
		display: none;
	}
}
