/**
 * PDP-038: canonical Details shell, one source model for Desktop and responsive accordion.
 */
.zz-details,
.zz-details *,
.zz-details *::before,
.zz-details *::after,
.zz-details-reviews,
.zz-details-reviews * {
	box-sizing: border-box;
}

.zz-details {
	margin: 24px 0 0;
	min-width: 0;
	font-family: Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	color: #2f2f2f;
}

@media (min-width: 1024px) {
	.zz-details {
		margin-top: 40px;
	}
}

.zz-details__heading,
.zz-details-reviews__heading {
	margin: 0 0 18px;
	font: 700 24px/1.25 Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	color: #2f2f2f;
}

.zz-details__items {
	display: grid;
	grid-template-columns: 272px minmax(0, 1fr);
	align-items: stretch;
	min-width: 0;
	border: 1px solid var(--border-default, #e5e7eb);
	border-radius: var(--zz-pd-radius, 16px);
	overflow: hidden;
}

.zz-details__nav {
	grid-column: 1;
	min-width: 0;
	padding: 10px 0;
	background: var(--surface-sunken, #f7f8fa);
	border-right: 1px solid var(--border-divider, #edf0f4);
}

.zz-details__panels {
	grid-column: 2;
	min-width: 0;
	background: #fff;
}

.zz-details__item {
	display: block;
	min-width: 0;
}

.zz-details__trigger {
	grid-column: 1;
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 56px;
	margin: 0;
	padding: 14px 18px;
	border: 0;
	border-left: 2px solid transparent;
	background: transparent;
	color: #2f2f2f;
	font: inherit;
	letter-spacing: normal;
	text-align: left;
	text-transform: none;
	cursor: pointer;
}

.zz-details__trigger[aria-selected="true"] {
	border-left-color: #1f1f1f;
	background: #fff;
}

.zz-details__trigger:focus-visible,
.zz-details__description-toggle:focus-visible,
.zz-details-reviews__heading:focus-visible {
	outline: 2px solid #ed0678;
	outline-offset: -2px;
}

.zz-details__icon {
	display: inline-block;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	background-color: currentColor;
	color: var(--text-muted, #6b7280);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
}

.zz-details__icon[data-zz-icon="file-text"] {
	-webkit-mask-image: url("../icons/pdp-details/file-text.svg");
	mask-image: url("../icons/pdp-details/file-text.svg");
}

.zz-details__icon[data-zz-icon="sliders-horizontal"] {
	-webkit-mask-image: url("../icons/pdp-details/sliders-horizontal.svg");
	mask-image: url("../icons/pdp-details/sliders-horizontal.svg");
}

.zz-details__icon[data-zz-icon="truck"] {
	-webkit-mask-image: url("../icons/pdp-details/truck.svg");
	mask-image: url("../icons/pdp-details/truck.svg");
}

.zz-details__icon[data-zz-icon="credit-card"] {
	-webkit-mask-image: url("../icons/pdp-details/credit-card.svg");
	mask-image: url("../icons/pdp-details/credit-card.svg");
}

.zz-details__icon[data-zz-icon="rotate-ccw"] {
	-webkit-mask-image: url("../icons/pdp-details/rotate-ccw.svg");
	mask-image: url("../icons/pdp-details/rotate-ccw.svg");
}

.zz-details__trigger[aria-selected="true"] .zz-details__icon {
	color: var(--text-heading, #2f2f2f);
}

.zz-details__label {
	min-width: 0;
	flex: 1 1 auto;
	font: 500 15px/1.3 Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	color: #2f2f2f;
}

.zz-details__trigger[aria-selected="true"] .zz-details__label {
	font-weight: 600;
}

.zz-details__chevron {
	display: none;
}

.zz-details__panel {
	min-width: 0;
	padding: 28px 32px 32px;
	background: #fff;
}

.zz-details__panel[hidden] {
	display: none;
}

.zz-details__panel-content {
	min-width: 0;
}

/* Native Woo panel chrome must not leak through the new host. Inner zz-* widgets retain their own CSS. */
.zz-details__panel-content > .widget,
.zz-details__panel-content > .widget > .textwidget {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.zz-details__panel-content > .woocommerce-product-attributes {
	margin-top: 0;
}

.zz-details .woocommerce-product-attributes-item--sku > th,
.zz-details .woocommerce-product-attributes-item--sku > td {
	position: relative;
	border-radius: 0;
}

.zz-details .woocommerce-product-attributes-item--sku > th::before,
.zz-details .woocommerce-product-attributes-item--sku > td::after {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 12px;
	background: rgba(253, 200, 0, 0.14);
	content: "";
	pointer-events: none;
}

.zz-details .woocommerce-product-attributes-item--sku > th::before {
	right: 100%;
	border-radius: 10px 0 0 10px;
}

.zz-details .woocommerce-product-attributes-item--sku > td::after {
	left: 100%;
	border-radius: 0 10px 10px 0;
}

.zz-details__description-copy {
	min-width: 0;
}

.zz-details__description-copy.is-collapsed {
	position: relative;
	max-height: var(--zz-details-description-preview-height, none);
	overflow: hidden;
}

.zz-details__description-copy.is-collapsed::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 44px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
	content: "";
	pointer-events: none;
}

.zz-details__description-toggle {
	display: none;
	align-items: center;
	gap: 4px;
	margin: 6px 0 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--text-muted, #6b7280);
	font: 500 13px/1.2 Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	letter-spacing: normal;
	text-transform: none;
	cursor: pointer;
}

.zz-details__description-toggle[data-zz-description-ready="1"] {
	display: inline-flex;
}

.zz-details__description-icon {
	display: inline-block;
	flex: 0 0 14px;
	width: 14px;
	height: 14px;
	background-color: currentColor;
	color: currentColor;
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
}

.zz-details__description-icon[data-zz-icon="chevron-up"] {
	-webkit-mask-image: url("../icons/pdp-details/chevron-up.svg");
	mask-image: url("../icons/pdp-details/chevron-up.svg");
}

.zz-details__description-icon[data-zz-icon="chevron-down"] {
	-webkit-mask-image: url("../icons/pdp-details/chevron-down.svg");
	mask-image: url("../icons/pdp-details/chevron-down.svg");
}

.zz-details-reviews {
	margin: 48px 0 0;
	min-width: 0;
	font-family: Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

.zz-details-reviews__source {
	min-width: 0;
}

@media (max-width: 899.98px) {
	.zz-details__heading,
	.zz-details-reviews__heading {
		margin-bottom: 14px;
		font-size: 20px;
	}

	.zz-details__items {
		display: block;
		background: #fff;
	}

	.zz-details__nav {
		display: contents;
	}

	.zz-details__panels {
		display: none;
	}

	.zz-details__item {
		display: block;
	}

	.zz-details__nav > .zz-details__trigger:not(:first-child) {
		position: relative;
	}

	.zz-details__nav > .zz-details__trigger:not(:first-child)::before {
		position: absolute;
		top: 0;
		right: 0;
		left: 46px;
		height: 1px;
		background: rgba(15, 23, 42, .08);
		content: "";
	}

	.zz-details__trigger {
		min-height: 56px;
		padding: 15px 16px;
		border-left: 0;
	}

	.zz-details__trigger[aria-selected="true"] {
		border-left: 0;
		background: transparent;
	}

	.zz-details__chevron {
		display: inline-flex;
		flex: 0 0 18px;
		width: 18px;
		height: 18px;
		color: #9ca3af;
	}

	.zz-details__chevron-up,
	.zz-details__chevron-down {
		display: inline-block;
		width: 18px;
		height: 18px;
		background-color: currentColor;
		-webkit-mask-position: center;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		mask-position: center;
		mask-repeat: no-repeat;
		mask-size: contain;
	}

	.zz-details__chevron-up {
		-webkit-mask-image: url("../icons/pdp-details/chevron-up.svg");
		mask-image: url("../icons/pdp-details/chevron-up.svg");
	}

	.zz-details__chevron-down {
		-webkit-mask-image: url("../icons/pdp-details/chevron-down.svg");
		mask-image: url("../icons/pdp-details/chevron-down.svg");
	}

	.zz-details__chevron-up {
		display: none;
	}

	.zz-details__trigger[aria-expanded="true"] .zz-details__chevron {
		color: #2f2f2f;
	}

	.zz-details__trigger[aria-expanded="true"] .zz-details__chevron-up {
		display: inline-flex;
	}

	.zz-details__trigger[aria-expanded="true"] .zz-details__chevron-down {
		display: none;
	}

	.zz-details__panel {
		padding: 0 16px 18px 46px;
	}

	.zz-details__description-copy.is-collapsed {
		height: 132px;
		max-height: 132px;
	}

	.zz-details-reviews {
		margin-top: 36px;
	}
}
