/* HoloDock Core frontend UI: product status, metadata and edition highlights. */
.stock-badge {
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	font-size: 9px;
	line-height: 1.25;
	font-weight: 850;
	letter-spacing: .045em;
	text-transform: uppercase;
	background: #eee;
	color: #424242;
	border: 1px solid #ddd;
	border-radius: 999px;
	box-shadow: 0 2px 7px rgba(0,0,0,.09);
	pointer-events: none;
}
.stock-badge::before {
	content: "";
	width: 6px;
	height: 6px;
	flex: 0 0 6px;
	border-radius: 50%;
	background: currentColor;
}
.stock-badge--instock,
.stock-badge--available { background: #e7f8eb; border-color: #9ad8a8; color: #12632a; }
.stock-badge--supplier { background: #fff0cf; border-color: #e3ba62; color: #694400; }
.stock-badge--incoming,
.stock-badge--preorder { background: #e7efff; border-color: #a9bee9; color: #173f83; }
.stock-badge--coming { background: #f0ebff; border-color: #c9b8f1; color: #4d2c86; }
.stock-badge--catalog { background: #f0f0f0; border-color: #d2d2d2; color: #454545; }
.stock-badge--outofstock { background: #fff0f0; border-color: #e4b4b4; color: #7b2525; }
.stock-badge--sale { background: var(--yellow, #ffdc2e); border-color: #d8b70f; color: var(--ink, #111); }

.product-type-label,
.store-card__meta > span:first-child,
.language-label {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 4px 8px;
	border: 1px solid #dedede;
	border-radius: 999px;
	line-height: 1.15;
	letter-spacing: .01em;
}
.product-type-label,
.store-card__meta > span:first-child { background: #f2f2f2; color: #3f3f3f; }
.language-label { background: #fff6ca; border-color: #ead474; color: #554300; letter-spacing: 0; }
.single-product .stock.in-stock {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 11px;
	border: 1px solid #9ad8a8;
	border-radius: 999px;
	background: #e7f8eb;
	color: #12632a;
	font-size: 11px;
	font-weight: 850;
}
.single-product .stock.out-of-stock {
	display: inline-flex;
	padding: 7px 11px;
	border: 1px solid #e4b4b4;
	border-radius: 999px;
	background: #fff0f0;
	color: #7b2525;
	font-size: 11px;
	font-weight: 850;
}

.hd-edition-highlights {
	grid-column: 1/-1;
	min-width: 0;
	margin-top: 34px;
	padding: 48px 0 15px;
	border-top: 1px solid var(--line, #dedede);
}
.hd-edition-highlights__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 12px;
}
.hd-edition-highlights__header .eyebrow { color: #666; font-size: 10px; margin-bottom: 7px; }
.hd-edition-highlights__header h2 { font-size: 34px; letter-spacing: -.04em; }
.hd-edition-highlights__set {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 7px 12px;
	border: 1px solid var(--ink, #111);
	border-radius: 999px;
	background: var(--yellow, #ffdc2e);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .035em;
	text-align: center;
}
.hd-edition-highlights__intro { max-width: 760px; margin-bottom: 30px; font-size: 13px; line-height: 1.7; }
.hd-edition-highlights__grid {
	display: grid;
	grid-template-columns: repeat(6,minmax(0,1fr));
	gap: 22px 17px;
	align-items: start;
}
.hd-highlight-card {
	min-width: 0;
	margin: 0;
	padding: 10px 10px 12px;
	border: 1px solid #dedede;
	border-radius: 8px;
	background: #f8f8f8;
	transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
	transform-origin: center bottom;
	outline: none;
}
.hd-highlight-card__image {
	aspect-ratio: 460/642;
	display: grid;
	place-items: center;
	min-width: 0;
	overflow: hidden;
	border-radius: 6px;
	background: linear-gradient(145deg,#fff,#ededed);
}
.hd-highlight-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 5px 7px rgba(0,0,0,.16));
	transition: transform .22s ease;
}
.hd-highlight-card figcaption {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto;
	gap: 2px 8px;
	padding: 10px 2px 0;
	line-height: 1.25;
}
.hd-highlight-card figcaption strong { min-width: 0; font-size: 11px; letter-spacing: -.01em; overflow-wrap: anywhere; }
.hd-highlight-card figcaption span { font-size: 9px; font-weight: 750; color: #666; }
.hd-highlight-card figcaption small { grid-column: 1/-1; font-size: 8px; color: #777; }
.hd-highlight-card:hover,
.hd-highlight-card:focus-visible {
	z-index: 2;
	transform: translateY(-8px) scale(1.035);
	border-color: #aaa;
	box-shadow: 0 16px 28px rgba(0,0,0,.17);
}
.hd-highlight-card:hover .hd-highlight-card__image img,
.hd-highlight-card:focus-visible .hd-highlight-card__image img { transform: scale(1.025); }
.hd-highlight-card:focus-visible { outline: 3px solid #936800; outline-offset: 3px; }

@media (max-width: 1100px) {
	.hd-edition-highlights__grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 800px) {
	.hd-edition-highlights { padding-top: 40px; }
	.hd-edition-highlights__header h2 { font-size: 29px; }
	.hd-edition-highlights__grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px 13px; }
}
@media (max-width: 560px) {
	.stock-badge { top: 7px; left: 7px; padding: 4px 6px; font-size: 8px; }
	.product-type-label,
	.store-card__meta > span:first-child,
	.language-label { min-height: 20px; padding: 3px 6px; font-size: 8px; }
	.hd-edition-highlights { margin-top: 24px; padding-top: 32px; }
	.hd-edition-highlights__header { align-items: flex-start; flex-direction: column; gap: 12px; }
	.hd-edition-highlights__header h2 { font-size: 27px; }
	.hd-edition-highlights__set { min-height: 30px; padding: 6px 10px; font-size: 9px; }
	.hd-edition-highlights__intro { margin-bottom: 22px; font-size: 11px; }
	.hd-edition-highlights__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 11px; }
	.hd-highlight-card { padding: 7px 7px 10px; border-radius: 6px; }
	.hd-highlight-card figcaption { padding-top: 8px; }
	.hd-highlight-card figcaption strong { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
	.hd-highlight-card:hover,
	.hd-highlight-card:focus-visible,
	.hd-highlight-card:hover .hd-highlight-card__image img,
	.hd-highlight-card:focus-visible .hd-highlight-card__image img { transform: none; }
}
