.rev-entry-lists-section {
	padding: 18px;
	background: #fff;
	border: 1px solid #f0d4d7;
	border-radius: 12px;
	box-shadow: 0 4px 14px rgba(25, 25, 25, 0.05);
	color: #333;
}

.rev-entry-lists-section .rev-ticket-section__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 8px;
}

.rev-entry-lists-section h3 {
	margin: 0;
	font-size: 18px;
	color: #7f0f18;
	font-weight: 700;
}

.rev-entry-lists-section .rev-ticket-section__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 9px;
	border-radius: 999px;
	background: #c1121f;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
}

.rev-entry-lists-tools {
	display: flex;
	gap: 10px;
	align-items: center;
	margin: 10px 0 6px;
	justify-content: flex-start;
}

.rev-entry-search-input {
	flex: 0 1 360px;
	min-width: 180px;
	max-width: 360px;
	height: 40px;
	border-radius: 999px;
	border: 1px solid #efefef;
	padding: 0 14px;
	background: #fff;
	color: #333;
}

.rev-entry-search-input:focus {
	outline: none;
	border-color: #c1121f;
}

.rev-entry-search-clear {
	border-radius: 999px !important;
	padding: 8px 14px !important;
	line-height: 1.2 !important;
}

.rev-entry-cards {
	display: grid;
	gap: 12px;
	grid-template-columns: 1fr;
}

@media (min-width: 980px) {
	.rev-entry-cards {
		grid-template-columns: 1fr 1fr;
	}
}

.rev-entry-card {
	display: grid;
	grid-template-columns: 150px 1fr;
	gap: 14px;
	padding: 14px;
	border: 1px solid #efefef;
	background: #fafafa;
	border-radius: 12px;
}

.rev-entry-card__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	width: 150px;
	height: 150px;
	padding: 0;
	overflow: hidden;
	background: #fff;
	border: 1px solid #efefef;
}

.rev-entry-card__thumb img {
	width: 150px;
	height: 150px;
	max-width: 150px;
	max-height: 150px;
	object-fit: contain;
	display: block;
	transform: scale(1);
	transition: transform 140ms ease;
}

/*
 * Desktop-only preview: zoom the 150x150 image to ~250x250 on hover/focus.
 * Keep layout stable (transform doesn't reflow) and don't enable on touch devices.
 */
@media (hover: hover) and (pointer: fine) {
	.rev-entry-card__thumb {
		position: relative;
	}

	.rev-entry-card__thumb:hover,
	.rev-entry-card__thumb:focus {
		overflow: visible;
		z-index: 20;
	}

	.rev-entry-card__thumb:hover img,
	.rev-entry-card__thumb:focus img {
		transform: scale(1.6667);
	}
}

.rev-entry-card__title {
	margin: 0 0 8px;
	font-size: 17px;
	line-height: 1.25;
}

.rev-entry-card__title a {
	text-decoration: none;
	color: #333;
}

.rev-entry-card__title a:hover {
	color: #7f0f18;
}

.rev-entry-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}

.rev-entry-card__btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 999px !important;
	padding: 8px 14px !important;
	line-height: 1.2 !important;
	background: #c1121f !important;
	border-color: #c1121f !important;
	color: #fff !important;
	font-weight: 600 !important;
}

.rev-entry-card__btn:hover {
	background: #a30f1a !important;
	border-color: #a30f1a !important;
	color: #fff !important;
	text-decoration: none !important;
}

.rev-entry-card__btn:focus,
.rev-entry-card__btn:active {
	color: #fff !important;
	text-decoration: none !important;
}

.rev-ticket-pill {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	border-radius: 999px;
	background: #f7f7f7;
	border: 1px solid #ececec;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
}

.rev-ticket-pagination {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.rev-ticket-pagination--top {
	padding-bottom: 12px;
	border-bottom: 1px solid #efefef;
	margin-bottom: 10px;
}

.rev-ticket-pagination--bottom {
	padding-top: 12px;
	border-top: 1px solid #efefef;
	margin-top: 10px;
}

.rev-ticket-pagination__status {
	font-size: 13px;
	color: #555;
	min-width: 110px;
	text-align: center;
}

.rev-ticket-page-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 999px !important;
	padding: 6px 14px !important;
	line-height: 1.2 !important;
	background: #c1121f !important;
	border: 1px solid #c1121f !important;
	color: #fff !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.rev-ticket-page-btn:hover {
	background: #a30f1a !important;
	border-color: #a30f1a !important;
	color: #fff !important;
}

.rev-ticket-page-btn--disabled {
	opacity: .5;
	pointer-events: none;
}

.rev-ticket-page-btn--disabled,
.rev-ticket-page-btn--disabled:hover {
	background: #efefef !important;
	border-color: #efefef !important;
	color: #555 !important;
}

@media (max-width: 520px) {
	.rev-entry-card {
		grid-template-columns: 1fr;
	}
	.rev-ticket-pagination {
		justify-content: space-between;
	}
	.rev-ticket-pagination__status {
		flex: 1 0 100%;
		order: 2;
		margin-top: 6px;
		min-width: 0;
		text-align: left;
	}
}


/*
 * Style the bottom "Past Entry Lists" link on /ticket-numbers/.
 * We add this class in PHP to avoid affecting header/menu links and pagination URLs.
 */
.rev-entry-lists-bottom-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 999px !important;
	padding: 8px 14px !important;
	line-height: 1.2 !important;
	background: #c1121f !important;
	border: 1px solid #c1121f !important;
	color: #fff !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	min-height: 36px;
}

.rev-entry-lists-bottom-link:hover {
	background: #a30f1a;
	border-color: #a30f1a;
	color: #fff;
}

/*
 * On past-entry-lists/ there are three top page buttons (Live / Auto / Credit).
 * If they are Gutenberg buttons, make them consistent.
 */
.page .content .wp-block-buttons .wp-block-button__link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 999px !important;
	padding: 8px 14px !important;
	line-height: 1.2 !important;
	background: #c1121f !important;
	border: 1px solid #c1121f !important;
	color: #fff !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	min-height: 36px;
}

.page .content .wp-block-buttons .wp-block-button__link:hover {
	background: #a30f1a !important;
	border-color: #a30f1a !important;
	color: #fff !important;
}
