/* Koliziejus product description styling
   Added by WPVibe. Scoped to kz- classes so nothing else is affected. */

.woocommerce-Tabs-panel--description .kz-specs,
.woocommerce-product-details__short-description .kz-specs,
.kz-specs {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 12px;
	margin: 20px 0 28px;
	padding: 0;
	list-style: none;
}

.kz-spec {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 16px 16px 16px 52px;
	position: relative;
	background: #faf8f4;
	border-radius: 10px;
}

.kz-spec::before {
	content: "";
	position: absolute;
	top: 16px;
	left: 16px;
	width: 22px;
	height: 22px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 22px 22px;
	opacity: .55;
}

.kz-spec-label {
	font-size: 12px;
	line-height: 1.3;
	letter-spacing: .02em;
	text-transform: uppercase;
	color: #8a8175;
}

.kz-spec-value {
	font-size: 15px;
	line-height: 1.4;
	font-weight: 500;
	color: #2f2b26;
}

.kz-spec--brand::before   { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='6'/%3E%3Cpath d='M9 14.5 8 21l4-2 4 2-1-6.5'/%3E%3C/svg%3E"); }
.kz-spec--name::before    { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7h10M7 12h10M7 17h6'/%3E%3C/svg%3E"); }
.kz-spec--taste::before   { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c4 0 7 3.2 7 7.2S16 21 12 21 5 14.2 5 10.2 8 3 12 3z'/%3E%3Cpath d='M12 3v5'/%3E%3C/svg%3E"); }
.kz-spec--weight::before  { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4a2 2 0 1 0 0 4 2 2 0 0 0 0-4z'/%3E%3Cpath d='M6.5 8h11l2 12h-15z'/%3E%3C/svg%3E"); }
.kz-spec--origin::before  { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-5.6 7-11a7 7 0 1 0-14 0c0 5.4 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.kz-spec--pack::before    { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 8 4.5v9L12 21l-8-4.5v-9z'/%3E%3Cpath d='m4 7.5 8 4.5 8-4.5M12 12v9'/%3E%3C/svg%3E"); }
.kz-spec--gluten::before  { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21V9'/%3E%3Cpath d='M12 12c0-3 2-5 5-5 0 3-2 5-5 5zM12 12c0-3-2-5-5-5 0 3 2 5 5 5z'/%3E%3C/svg%3E"); }
.kz-spec--beans::before     { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='12' rx='6' ry='8.5' transform='rotate(35 12 12)'/%3E%3Cpath d='M8.4 15.6c1.4-1.2 1.9-3 1.3-4.7-.6-1.7-.1-3.5 1.3-4.7'/%3E%3C/svg%3E"); }
.kz-spec--intensity::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 17a9 9 0 1 1 17 0'/%3E%3Cpath d='m12 17 4-5.5'/%3E%3C/svg%3E"); }
.kz-spec--roast::before     { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c3.5 4 5.5 6.5 5.5 9.5A5.5 5.5 0 0 1 12 18a5.5 5.5 0 0 1-5.5-5.5C6.5 9.5 8.5 7 12 3z'/%3E%3Cpath d='M12 18v3'/%3E%3C/svg%3E"); }
.kz-spec--profile::before   { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%235f5849' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19V9M9.3 19V5M14.7 19v-7M20 19v-4'/%3E%3C/svg%3E"); }


.kz-note {
	margin: 14px 0;
	padding: 14px 16px;
	border-radius: 10px;
	font-size: 14px;
	line-height: 1.6;
}

.kz-note--allergen {
	background: #fdf4ec;
	border-left: 3px solid #d99b5c;
	border-radius: 0 10px 10px 0;
}

.kz-note--storage {
	background: #f3f5f1;
	border-left: 3px solid #9aab8e;
	border-radius: 0 10px 10px 0;
}

table.kz-nutrition {
	width: 100%;
	max-width: 460px;
	border-collapse: collapse;
	margin: 16px 0 8px;
	font-size: 14px;
}

table.kz-nutrition th,
table.kz-nutrition td {
	padding: 10px 14px;
	text-align: left;
	border: 0;
	border-bottom: 1px solid #ece7de;
}

table.kz-nutrition thead th {
	font-size: 12px;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #8a8175;
	font-weight: 500;
}

table.kz-nutrition td:last-child {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

table.kz-nutrition tr.kz-sub td {
	padding-left: 28px;
	font-style: italic;
	color: #6f6a61;
}

table.kz-nutrition tbody tr:last-child td {
	border-bottom: 0;
}

@media (max-width: 768px) {
	.kz-specs { grid-template-columns: 1fr 1fr; gap: 8px; }
	.kz-spec  { padding: 12px 12px 12px 12px; }
	.kz-spec::before { position: static; display: block; margin-bottom: 6px; }
	table.kz-nutrition th,
	table.kz-nutrition td { padding: 9px 10px; }
}

@media (max-width: 400px) {
	.kz-specs { grid-template-columns: 1fr; }
}

/* --- Variable products: avoid showing two prices at once --- */

/* Once a variation is chosen, hide the summary price above the dropdown
   so only the selected variation's price remains. */
.product-type-variable .summary:has(.woocommerce-variation-price .price) > .price,
.product-type-variable .wd-single-price:has(~ form .woocommerce-variation-price .price) {
	display: none;
}

/* Give the variation price the weight the main price had */
.product-type-variable .woocommerce-variation-price .price {
	font-size: 26px;
	line-height: 1.2;
	font-weight: 600;
}

/* Tidy the variation selector row */
.product-type-variable table.variations {
	margin-bottom: 14px;
}

.product-type-variable table.variations .label label {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #6f6a61;
}

.product-type-variable .reset_variations {
	font-size: 13px;
}

