.bookmakerReviewListWrapper {
	container-type: inline-size;
	container-name: bookmaker-review-list;
	margin: var(--spacing--16) 0;
}

.bookmakerReviewList {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 16px;
}

.bookmakerReviewList .bookmakerReviewListItem {
	border: thin solid var(--light-gray);
	border-spacing: 0;
	font-size: 16px;
}

.bookmakerReviewList .bookmakerReviewListItem:first-child {
	border: thin solid var(--light-gray);
	border-spacing: 0;
	font-size: 16px;
}

/* ================================================================================
   INSTRUCTION 1: TABLE HEADER STYLING
   ================================================================================ */
.bookmakerReviewList .bookmakerReviewList__header {
    background-color: #2D7AE9;
	margin-bottom: 8px;
}

.bookmakerReviewList .bookmakerReviewList__header th {
    position: relative;
    line-height: 24px;
    color: white;
    font-weight: 700;
    font-size: 16px;
    text-align: left;
}

.bookmakerReviewList .bookmakerReviewList__header th:first-child {
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    padding: 12px 16px;
}

.bookmakerReviewList .bookmakerReviewList__header th:last-child {
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    padding: 12px 16px;
}

.bookmakerReviewList .bookmakerReviewList__header th:not(:first-child):not(:last-child) {
    padding: 12px 16px;
}

.bookmakerReviewList .bookmakerReviewList__header th:not(:last-child)::before {
	display: none;
}

.bookmakerReviewList tbody td:last-child {
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
}

.bookmakerReviewList .bookmakerReviewListItem__col {
    padding-top: 16px;
    padding-bottom: 16px;
    vertical-align: top;
}

/* ================================================================================
   INSTRUCTION 2: COLUMN 1 - LOGO IN COLORED BOX + NAME
   ================================================================================ */
.bookmakerReviewList .bookmakerReviewListItem__col.--logo {
    width: 20%;
    text-align: left;
    padding-left: 16px;
    padding-right: 24px;
}

.bookmakerReviewList .bookmakerReviewListItem__logoLink {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	text-decoration: none;
}

.bookmakerReviewList .bookmakerReviewListItem__logoBox {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 8px;
	background-color: var(--bookmaker-color, #f3f4f6);
	flex-shrink: 0;
	padding: 6px;
}

.bookmakerReviewList .bookmakerReviewListItem__logo {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.bookmakerReviewListItem__name {
    font-weight: 700;
    color: #1A1A1A;
}

/* ================================================================================
   INSTRUCTION 3: COLUMN 2 - RATING PILL
   ================================================================================ */
.bookmakerReviewList .bookmakerReviewListItem__col.--ratings {
    width: 22%;
    padding-left: 12px;
    padding-right: 24px;
}

.bookmakerReviewList .bookmakerReviewListItem__col.--ratings .bookmakerReviewListItem__rating:not(:last-child) {
	margin-bottom: var(--spacing--8);
}

.bookmakerReviewList .bookmakerReviewListItem__rating {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 14px;
    background-color: #F3FDEC;
    border-radius: 8px;
    padding: 8px;
    gap: 12px;
    border: 1px solid #D9F8C3;
}

.bookmakerRating__circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 2px solid #5DA62C;
	flex-shrink: 0;
	position: relative;
	background: white;
}

.bookmakerRating__circle::before {
	content: '';
	position: absolute;
	inset: -2px;
	border-radius: 50%;
	padding: 3px;
	background: conic-gradient(
		#37621A 0deg,
		#37621A calc(var(--percentage, 0) * 3.6deg),
		transparent calc(var(--percentage, 0) * 3.6deg)
	);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask-composite: exclude;
	pointer-events: none;
}

.bookmakerRating__circleValue {
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	color: #37621A;
}

.bookmakerReviewList .bookmakerReviewListItem__ratingLabel {
	font-weight: 600;
	color: var(--black);
	line-height: 1.25;
	font-size: 14px;
}

.bookmakerReviewList .bookmakerReviewListItem__ratingLabel a {
	font-weight: 400;
	color: var(--black);
}

.bookmakerReviewList .bookmakerReviewListItem__ratingLabel a:hover {
	text-decoration: none;
}

/* ================================================================================
   COLUMN 3 - DESCRIPTION & ACTIONS
   ================================================================================ */
.bookmakerReviewList .bookmakerReviewListItem__col.--perex {
	width: 58%;
	padding-left: var(--spacing--16);
	padding-right: var(--spacing--16);
	vertical-align: top;
}

.bookmakerReviewList .bookmakerReviewListItem__description {
	margin: 0 0 1rem 0;
}

/* ================================================================================
   INSTRUCTION 4: BUTTONS STYLING
   ================================================================================ */
.bookmakerReviewList .bookmakerReviewListItem__linksBlock {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.bookmakerReviewListWrapper .bookmakerReviewList .bookmakerReviewListItem__linksBlock:not(:empty) {
	margin-top: 1rem;
}

/* Blue Outline Button (Review) */
.bookmakerReviewList .btn-outline-primary {
	background-color: white;
	border: 2px solid #177ce9;
	color: #177ce9;
	border-radius: 8px;
	padding: 10px 20px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.bookmakerReviewList .btn-outline-primary:hover {
	background-color: #177ce9;
	color: white;
}

.bookmakerReviewList .btn-outline-primary svg {
	color: #177ce9;
}

.bookmakerReviewList .btn-outline-primary:hover svg {
	color: white;
}

/* Blue Solid Button (Promo) */
.bookmakerReviewList .btn-primary {
	background-color: #177ce9;
	border: 2px solid #177ce9;
	color: white;
	border-radius: 8px;
	padding: 10px 20px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.bookmakerReviewList .btn-primary:hover {
	background-color: #1262b8;
	border-color: #1262b8;
}

.bookmakerReviewList .btn-primary svg {
	color: white;
}

.bookmakerReviewList .bookmakerReviewListItem__linksBlock .more_info_link {
	color: var(--darker-green);
	font-size: 16px;
	font-weight: normal;
	text-decoration: underline;
	text-decoration-color: inherit;
}

.bookmakerReviewList .bookmakerReviewListItem__linksBlock .more_info_link:hover {
	text-decoration: none;
}

/* ================================================================================
   SPACER ROWS
   ================================================================================ */
.bookmakerReviewList .bookmakerReviewListItem__spacer {
	display: none;
	visibility: hidden;
	height: var(--spacing--16);
}

.bookmakerReviewList .bookmakerReviewListItem__spacer:last-child {
	display: none;
}

/* ================================================================================
   RESPONSIVE: TABLET
   ================================================================================ */
@container bookmaker-review-list (max-width: 1024px) {
	.bookmakerReviewList .bookmakerReviewListItem__linksBlock .btn-outline-primary,
	.bookmakerReviewList .bookmakerReviewListItem__linksBlock .btn-primary,
	.bookmakerReviewList .bookmakerReviewListItem__linksBlock .btn-secondary {
		width: 100%;
		justify-content: center;
	}
}


/* ================================================================================
   RESPONSIVE: MOBILE
   ================================================================================ */
@container bookmaker-review-list (max-width: 468px) {
	.bookmakerReviewList .bookmakerReviewListItem .bookmakerReviewListItem__col.--ratings .bookmakerReviewListItem__rating {
		width: 100%;
	}

	.bookmakerReviewList .bookmakerReviewListItem .bookmakerReviewListItem__col.--ratings {
		flex-direction: column;
	}

	.bookmakerReviewList .bookmakerReviewListItem .bookmakerReviewListItem__col {
		padding-left: var(--spacing--16);
		padding-right: var(--spacing--16);
		padding-bottom: var(--spacing--16);
		padding-top: var(--spacing--16);
	}

	.bookmakerReviewList .bookmakerReviewListItem__linksBlock {
		flex-direction: column;
		width: 100%;
	}

	.bookmakerReviewList .btn-outline-primary,
	.bookmakerReviewList .btn-primary {
		width: 100%;
		justify-content: center;
	}
}

/* ================================================================================
   MOBILE ONLY - CONVERT TABLE TO STACKED LAYOUT
   ================================================================================ */
@media (max-width: 767px) {
	/* Hide table header */
	.bookmakerReviewList .bookmakerReviewList__header {
		display: none;
	}

	/* Convert table to block layout */
	.bookmakerReviewList,
	.bookmakerReviewList tbody,
	.bookmakerReviewList .bookmakerReviewListItem {
		display: block;
		width: 100%;
	}

	/* Stack all columns vertically */
	.bookmakerReviewList .bookmakerReviewListItem__col {
		display: block;
		width: 100% !important;
		padding: var(--spacing--16) !important;
		border-radius: 0 !important;
	}

	/* First column gets top border radius */
	.bookmakerReviewList .bookmakerReviewListItem__col:first-child {
		border-top-left-radius: 8px !important;
		border-top-right-radius: 8px !important;
	}

	/* Last column gets bottom border radius */
	.bookmakerReviewList .bookmakerReviewListItem__col:last-child {
		border-bottom-left-radius: 8px !important;
		border-bottom-right-radius: 8px !important;
	}

	/* Remove spacer rows */
	.bookmakerReviewList .bookmakerReviewListItem__spacer {
		display: block;
        height: 16px;
	}

	/* Add spacing between items */
	.bookmakerReviewList .bookmakerReviewListItem {
		margin-bottom: 16px;
		border: 1px solid #E8E8E8;
		border-radius: var(--radius-md);
		padding: 16px;
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.bookmakerReviewList .bookmakerReviewListItem:not(:has(+ tr.bookmakerReviewListItem)) {
		margin-bottom: 0 !important;
	}

	/* Ensure all content is full width */
	.bookmakerReviewList .bookmakerReviewListItem__rating,
	.bookmakerReviewList .bookmakerReviewListItem__description,
	.bookmakerReviewList .bookmakerReviewListItem__linksBlock {
		width: 100%;
	}
}
