.wcp-profile {
	box-sizing: border-box;
	background: var(--wcp-bg, #f7f3ee);
	color: var(--wcp-text, #3d2b1f);
	border: 1px solid var(--wcp-border, #e2d5c5);
	border-radius: var(--wcp-radius, 16px);
	padding: calc(var(--wcp-gap, 20px) * 0.9) var(--wcp-gap, 20px);
	margin: 1.25rem 0;
	display: grid;
	gap: var(--wcp-gap, 20px);
	font-family: inherit;
	direction: inherit;
}

.wcp-profile *,
.wcp-profile *::before,
.wcp-profile *::after {
	box-sizing: border-box;
}

.wcp-block-title {
	margin: 0 0 0.55rem;
	font-size: var(--wcp-font-title, 16px);
	font-weight: 700;
	color: var(--wcp-text, #3d2b1f);
}

.wcp-blend-labels,
.wcp-scale-head,
.wcp-caffeine-row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 0.75rem;
	margin-bottom: 0.45rem;
	font-size: var(--wcp-font-label, 12px);
	color: var(--wcp-label, #6b5b4f);
}

.wcp-value {
	font-size: var(--wcp-font-value, 13px);
	font-weight: 700;
	color: var(--wcp-value, #3d2b1f);
}

.wcp-bar {
	position: relative;
	display: flex;
	justify-content: flex-start;
	height: var(--wcp-bar-h, 10px);
	background: var(--wcp-track, #e8ddd0);
	border-radius: 999px;
	overflow: hidden;
}

.wcp-bar-fill {
	height: 100%;
	border-radius: inherit;
	flex: 0 0 auto;
	width: 0;
}

.wcp-bar--blend .wcp-bar-fill {
	background: var(--wcp-blend, #6b4f3a);
}

.wcp-bar--caffeine .wcp-bar-fill {
	background: var(--wcp-caffeine, #4a3728);
}

.wcp-bar--bitterness .wcp-bar-fill {
	background: var(--wcp-bitterness, #5c4033);
}

.wcp-bar--sweetness .wcp-bar-fill {
	background: var(--wcp-sweetness, #c17f3a);
}

.wcp-bar--body .wcp-bar-fill {
	background: var(--wcp-body, #7a5c45);
}

.wcp-bar--knob {
	overflow: visible;
}

.wcp-bar-knob {
	position: absolute;
	top: 50%;
	width: calc(var(--wcp-bar-h, 10px) + 6px);
	height: calc(var(--wcp-bar-h, 10px) + 6px);
	border-radius: 50%;
	background: var(--wcp-value, #3d2b1f);
	border: 2px solid var(--wcp-bg, #f7f3ee);
	transform: translateY(-50%);
	margin-inline-start: calc(-0.5 * (var(--wcp-bar-h, 10px) + 6px));
	inset-inline-start: 0;
	box-shadow: 0 0 0 1px var(--wcp-border, #e2d5c5);
}

.wcp-acidity-track {
	position: relative;
	display: grid;
	gap: 0;
	padding: 1.7rem 0 1.55rem;
}

.wcp-acidity-line {
	position: absolute;
	inset-inline: 0.75rem;
	top: 50%;
	height: var(--wcp-stroke, 2px);
	background: var(--wcp-acidity-line, #8b6914);
	transform: translateY(-50%);
}

.wcp-acidity-points {
	position: relative;
	display: grid;
	grid-template-columns: repeat(var(--wcp-acidity-count, 5), minmax(0, 1fr));
	z-index: 1;
}

.wcp-acidity-point {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.35rem;
}

.wcp-acidity-name,
.wcp-acidity-val {
	font-size: var(--wcp-font-label, 12px);
	color: var(--wcp-label, #6b5b4f);
	line-height: 1.2;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.wcp-acidity-val {
	font-size: var(--wcp-font-value, 13px);
	font-weight: 700;
	color: var(--wcp-value, #3d2b1f);
}

.wcp-acidity-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--wcp-acidity-dot, #c45c26);
	border: 2px solid var(--wcp-bg, #f7f3ee);
	box-shadow: 0 0 0 2px var(--wcp-acidity-dot, #c45c26);
	flex: 0 0 auto;
}

.wcp-origins-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.85rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.wcp-origin {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: var(--wcp-font-label, 12px);
	color: var(--wcp-text, #3d2b1f);
}

.wcp-origin-flag {
	width: 1.35rem;
	height: 0.9rem;
	object-fit: cover;
	border-radius: 2px;
	display: block;
	box-shadow: 0 0 0 1px var(--wcp-border, #e2d5c5);
}

.wcp-origin-emoji {
	font-size: 1.1rem;
	line-height: 1;
}

@media (max-width: 640px) {
	.wcp-acidity-name {
		font-size: 10px;
	}
}

.wcp-card-flags {
	display: none !important;
	box-sizing: border-box;
}

.product-card-wrapper .product-card--image {
	position: relative !important;
}

.product-card-wrapper .product-card--image > .wcp-card-flags,
.wcb-card-media > .wcp-card-flags {
	display: flex !important;
	align-items: center;
	gap: 3px;
	position: absolute !important;
	top: 8px !important;
	inset-inline-start: 8px !important;
	inset-inline-end: auto !important;
	bottom: auto !important;
	left: auto;
	right: auto;
	z-index: 5 !important;
	width: auto !important;
	height: auto !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 3px 5px !important;
	background: rgba(255, 253, 249, 0.94) !important;
	border-radius: 999px !important;
	box-shadow: 0 1px 6px rgba(61, 43, 31, 0.14);
	pointer-events: none;
	line-height: 0;
}

.product-card-wrapper .product-card--image > .wcp-card-flags .wcp-card-flag,
.wcb-card-media > .wcp-card-flags .wcp-card-flag {
	display: inline-block !important;
	width: 22px !important;
	height: 14px !important;
	min-width: 22px !important;
	min-height: 14px !important;
	max-width: 22px !important;
	max-height: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 2px !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	box-shadow: 0 0 0 1px rgba(61, 43, 31, 0.12);
	flex: 0 0 auto;
}

.product-card-wrapper .product-card--image > .wcp-card-flags .wcp-card-flag-emoji,
.wcb-card-media > .wcp-card-flags .wcp-card-flag-emoji {
	display: inline-block !important;
	font-size: 14px !important;
	line-height: 1 !important;
	width: auto !important;
	height: auto !important;
}

/* Fit inside ishop .product-main-content__details */
.product-main-content__details .wcp-profile {
	display: grid;
	position: relative;
	z-index: 1;
	margin: 0 0 0.75rem;
	width: 100%;
	max-width: 100%;
	overflow: visible;
}
