.rep-meals {
	display: grid;
	gap: 14px;
	margin-top: 16px;
}

.rep-meal {
	border: 1px solid #d8dde3;
	border-left-width: 6px;
	border-radius: 8px;
	padding: 14px;
	background: #fbfcfd;
}

.rep-status-green {
	border-left-color: #1f8a5b;
}

.rep-status-yellow {
	border-left-color: #c98712;
}

.rep-status-red {
	border-left-color: #c7362f;
}

.rep-meal-top {
	display: grid;
	grid-template-columns: minmax(160px, 1fr) 150px auto auto auto;
	gap: 10px;
	align-items: center;
}

.rep-meal-label {
	font-weight: 800;
}

.rep-reorder {
	display: flex;
	gap: 6px;
	justify-content: flex-end;
}

.rep-reorder button,
.rep-meal-top-actions button {
	min-width: 40px;
	padding-inline: 10px;
	text-decoration: none !important;
}

.rep-reorder button:disabled {
	cursor: default;
	opacity: 0.45;
}

.rep-meal-top-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	justify-content: flex-end;
}

.rep-meal-top > [data-rep-auto-adjust] {
	white-space: nowrap;
}

.rep-danger {
	background: #fff5f5 !important;
	border-color: #b42318 !important;
	color: #b42318 !important;
}

.rep-danger:hover,
.rep-danger:focus {
	background: #b42318 !important;
	color: #fff !important;
}

.rep-food-row-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.rep-meal-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 12px 0;
	max-width: 520px;
	border: 1px solid #d8dde3;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}

.rep-meal-stats span {
	border: 0;
	padding: 8px 10px;
	background: transparent;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
}

.rep-meal-stats span + span {
	border-left: 1px solid #d8dde3;
}

.rep-meal-stats strong {
	display: block;
	font-size: 18px;
}

.rep-meal-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-top: 12px;
}

.rep-recommendations {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 10px;
}

.rep-recommendations-header {
	display: flex;
	grid-column: 1 / -1;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.rep-recommendations span {
	color: #52616f;
	font-size: 13px;
	font-weight: 700;
}

.rep-recommendations button {
	min-height: 38px;
	border: 1px solid #c8d0d8;
	border-radius: 6px;
	padding: 8px 10px;
	background: #fff;
	color: #1f2933;
	font-weight: 700;
	cursor: pointer;
	overflow-wrap: anywhere;
}

.rep-recommendations-header button {
	min-height: 32px;
	padding: 6px 10px;
	font-size: 12px;
}

.rep-recommendations-header .rep-refresh-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	min-width: 38px;
	min-height: 38px;
	padding: 8px;
}

.rep-recommendations button:hover {
	border-color: #246b5f;
	color: #246b5f;
}

@media (max-width: 720px) {
	.rep-meal-stats {
		grid-template-columns: 1fr;
	}

	.rep-meal-stats span + span {
		border-top: 1px solid #d8dde3;
		border-left: 0;
	}

	.rep-recommendations {
		grid-template-columns: 1fr;
	}
}
