/**
 * SEIK Product Sibling & Size Switcher (Legami-style compact variant selector)
 */

.seik-sibling-switcher {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 14px 0 18px 0;
	padding: 0;
	clear: both;
	width: 100%;
	box-sizing: border-box;
	font-family: "SEIK-font", sans-serif;
}

.seikProduct .seikProductSKU {
	margin-top: 8px !important;
}

.seik-sibling-switcher__group {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.seik-sibling-switcher__header {
	display: flex;
	align-items: baseline;
	gap: 5px;
	font-size: 12.5px;
	line-height: 1.3;
	margin: 0;
}

.seik-sibling-switcher__label {
	color: #766d66;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-size: 11px;
}

.seik-sibling-switcher__value {
	color: #111111;
	font-weight: 600;
	font-size: 12.5px;
	transition: color 0.12s ease;
}

/* Design Thumbnails Row (Legami-style single row, max 6 items) */
.seik-sibling-switcher__thumbs {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 7px;
	overflow-x: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.seik-sibling-switcher__thumbs::-webkit-scrollbar {
	display: none;
}

.seik-sibling-switcher__thumb {
	position: relative;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	display: block;
	overflow: hidden;
	border: 1.5px solid #e2dbd5;
	background: #faf8f6;
	padding: 0;
	text-decoration: none;
	box-sizing: border-box;
	transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
	cursor: pointer;
}

.seik-sibling-switcher__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	margin: 0;
	pointer-events: none;
}

.seik-sibling-switcher__thumb:hover,
.seik-sibling-switcher__thumb:focus-visible {
	border-color: #766d66;
	transform: translateY(-1px);
	outline: none;
}

.seik-sibling-switcher__thumb.is-active {
	border: 2px solid #111111;
	box-shadow: inset 0 0 0 2px #ffffff;
	transform: none;
}

.seik-sibling-switcher__thumb.is-overflow {
	display: none;
}

.seik-sibling-switcher__thumbs.is-expanded {
	flex-wrap: wrap;
}

.seik-sibling-switcher__thumbs.is-expanded .seik-sibling-switcher__thumb.is-overflow {
	display: block;
}

/* More designs expander button (+N / −) */
.seik-sibling-switcher__more-btn {
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #f4ede7;
	border: 1.5px solid #d8d0c9;
	color: #111111;
	font-family: "SEIK-font", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.02em;
	padding: 0;
	margin: 0;
	cursor: pointer;
	box-sizing: border-box;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
	user-select: none;
	outline: none;
}

.seik-sibling-switcher__more-btn:hover,
.seik-sibling-switcher__more-btn:focus-visible {
	background: #111111;
	border-color: #111111;
	color: #ffffff;
	transform: translateY(-1px);
}

/* Size Selector Pills Row */
.seik-sibling-switcher__sizes {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
}

.seik-sibling-switcher__size-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 64px;
	height: 32px;
	padding: 0 13px;
	border: 1.5px solid #d8d0c9;
	background: #ffffff;
	color: #111111;
	font-family: "SEIK-font", sans-serif;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.02em;
	text-decoration: none !important;
	box-sizing: border-box;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
	user-select: none;
	font-variant-numeric: tabular-nums;
}

.seik-sibling-switcher__size-pill:hover,
.seik-sibling-switcher__size-pill:focus-visible {
	border-color: #111111;
	color: #111111;
	outline: none;
}

.seik-sibling-switcher__size-pill.is-active {
	background-color: #111111;
	border-color: #111111;
	color: #ffffff !important;
}

.seik-sibling-switcher__size-pill.is-out-of-stock {
	color: #9e958e;
	border-color: #e6e0db;
	background: linear-gradient(to top left, transparent calc(50% - 1px), #d8d0c9 calc(50% - 0.5px), #d8d0c9 calc(50% + 0.5px), transparent calc(50% + 1px)), #faf8f6;
}

.seik-sibling-switcher__size-pill.is-out-of-stock.is-active {
	background: #333333;
	border-color: #333333;
	color: #ffffff !important;
}

@media (max-width: 549px) {
	.seik-sibling-switcher {
		margin: 8px 0 14px 0;
		gap: 10px;
	}
	.seik-sibling-switcher__thumb {
		width: 44px;
		height: 44px;
		flex: 0 0 44px;
	}
	.seik-sibling-switcher__more-btn {
		width: 44px;
		height: 44px;
		flex: 0 0 44px;
		font-size: 12px;
	}
	.seik-sibling-switcher__size-pill {
		height: 30px;
		min-width: 58px;
		padding: 0 11px;
		font-size: 12px;
	}
}
