@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Instrument+Serif:ital@0;1&display=swap');

:root {
	--wsb-bg: #eef3fb;
	--wsb-surface: rgba(255, 255, 255, 0.88);
	--wsb-surface-strong: #ffffff;
	--wsb-surface-dark: #0f172a;
	--wsb-text: #162033;
	--wsb-text-soft: #5f6b85;
	--wsb-primary: #1367ff;
	--wsb-primary-deep: #0a49be;
	--wsb-accent: #ffb54a;
	--wsb-success: #1f9d62;
	--wsb-border: rgba(120, 139, 173, 0.2);
	--wsb-shadow-xl: 0 28px 70px rgba(23, 37, 84, 0.16);
	--wsb-shadow-md: 0 14px 34px rgba(15, 23, 42, 0.1);
	--wsb-shadow-sm: 0 8px 20px rgba(15, 23, 42, 0.08);
	--wsb-radius-xl: 28px;
	--wsb-radius-lg: 20px;
	--wsb-radius-md: 14px;
}

.wsb-shop,
.wsb-product,
.wsb-dashboard,
.wsb-login,
.wsb-register,
.wsb-auth-shell {
	font-family: 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
	color: var(--wsb-text);
}

.wsb-shop,
.wsb-product,
.wsb-dashboard {
	max-width: 1200px;
	margin: 28px auto;
	padding: 28px;
	border-radius: var(--wsb-radius-xl);
	background:
		radial-gradient(circle at top right, rgba(255, 181, 74, 0.2), transparent 22%),
		radial-gradient(circle at left top, rgba(19, 103, 255, 0.16), transparent 28%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 250, 255, 0.94));
	border: 1px solid rgba(255, 255, 255, 0.6);
	box-shadow: var(--wsb-shadow-xl);
	backdrop-filter: blur(18px);
	position: relative;
	overflow: hidden;
}

.wsb-shop::after,
.wsb-product::after,
.wsb-dashboard::after {
	content: '';
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(19, 103, 255, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(19, 103, 255, 0.03) 1px, transparent 1px);
	background-size: 28px 28px;
	opacity: 0.35;
	pointer-events: none;
}

.wsb-shop > *,
.wsb-product > *,
.wsb-dashboard > * {
	position: relative;
	z-index: 1;
}

.wsb-appbar,
.wsb-shop-header,
.wsb-product-header,
.wsb-dashboard-header,
.wsb-hero-panel {
	display: flex;
	justify-content: space-between;
	gap: 22px;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom: 24px;
}

.wsb-appbar-copy,
.wsb-hero-copy {
	flex: 1 1 540px;
}

.wsb-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 12px;
	border-radius: 999px;
	background: rgba(19, 103, 255, 0.08);
	color: var(--wsb-primary-deep);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.wsb-appbar h1,
.wsb-hero-copy h1,
.wsb-login h2,
.wsb-register h2,
.wsb-section h2,
.wsb-side-card h2 {
	margin: 14px 0 10px;
	line-height: 1.02;
	letter-spacing: -0.04em;
}

.wsb-appbar h1,
.wsb-hero-copy h1,
.wsb-product-header h1 {
	font-size: clamp(2.1rem, 5vw, 3.5rem);
	font-weight: 800;
}

.wsb-login h2,
.wsb-register h2 {
	font-size: clamp(1.8rem, 4vw, 2.5rem);
	font-weight: 800;
}

.wsb-appbar p,
.wsb-hero-copy p,
.wsb-section-text,
.wsb-side-card p,
.wsb-login p,
.wsb-register p,
.wsb-empty-state,
.wsb-inline-meta {
	color: var(--wsb-text-soft);
	font-size: 0.98rem;
	line-height: 1.7;
}

.wsb-dashboard-links,
.wsb-contact,
.wsb-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.wsb-link {
	color: var(--wsb-primary-deep);
	font-weight: 700;
	text-decoration: none;
}

.wsb-link-soft {
	padding: 12px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.74);
	border: 1px solid var(--wsb-border);
	box-shadow: var(--wsb-shadow-sm);
}

.wsb-link.wsb-danger {
	color: #c0392b;
}

.wsb-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 18px;
	border-radius: 14px;
	border: none;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.95rem;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

.wsb-btn:hover {
	transform: translateY(-2px);
}

.wsb-btn-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 10px;
	flex: 0 0 18px;
}

.wsb-btn-icon svg {
	width: 18px;
	height: 2px;
	display: block;
}

.wsb-btn-label {
	white-space: nowrap;
}

.wsb-btn-primary,
.wsb-btn-call {
	background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
	color: #fff;
	box-shadow: 0 18px 24px rgba(19, 103, 255, 0.24);
}

.wsb-btn-whatsapp {
	background: linear-gradient(135deg, #26d367, #139a4b);
	color: #fff;
	box-shadow: 0 18px 24px rgba(19, 154, 75, 0.24);
}

.wsb-btn-chat {
	background: linear-gradient(135deg, #18263f, #0f172a);
	color: #fff;
	box-shadow: 0 18px 24px rgba(15, 23, 42, 0.24);
}

.wsb-metrics {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 16px;
	margin-bottom: 24px;
}

.wsb-metric-card,
.wsb-hero-stat,
.wsb-side-card,
.wsb-section,
.wsb-filter,
.wsb-card,
.wsb-login,
.wsb-register,
.wsb-auth-panel {
	background: var(--wsb-surface);
	border: 1px solid var(--wsb-border);
	box-shadow: var(--wsb-shadow-md);
	backdrop-filter: blur(18px);
}

.wsb-metric-card,
.wsb-hero-stat {
	padding: 18px;
	border-radius: var(--wsb-radius-lg);
}

.wsb-metric-label {
	display: block;
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--wsb-text-soft);
}

.wsb-metric-value {
	display: block;
	margin-top: 10px;
	font-size: clamp(1.8rem, 4vw, 2.6rem);
	font-weight: 800;
	letter-spacing: -0.06em;
}

.wsb-metric-note {
	display: block;
	margin-top: 8px;
	color: var(--wsb-text-soft);
	font-size: 0.92rem;
}

.wsb-hero-aside,
.wsb-product-side {
	flex: 0 1 320px;
	display: grid;
	gap: 16px;
	align-content: start;
}

.wsb-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(255px, 1fr));
	gap: 14px;
}

.wsb-card {
	padding: 14px;
	border-radius: 22px;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.wsb-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 34px rgba(15, 23, 42, 0.12);
}

.wsb-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.wsb-card-thumb {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	margin-bottom: 14px;
}

.wsb-card-thumb img {
	width: 100%;
	height: 210px;
	object-fit: cover;
	transition: transform 0.28s ease;
}

.wsb-card:hover .wsb-card-thumb img {
	transform: scale(1.04);
}

.wsb-card h2 {
	margin: 0 0 10px;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.wsb-card-meta,
.wsb-product-summary {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-bottom: 14px;
}

.wsb-price {
	display: inline-flex;
	align-items: center;
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(19, 103, 255, 0.08);
	color: var(--wsb-primary-deep);
	font-weight: 800;
}

.wsb-status-chip {
	display: inline-flex;
	align-items: center;
	padding: 8px 11px;
	border-radius: 999px;
	background: rgba(31, 157, 98, 0.12);
	color: var(--wsb-success);
	font-size: 0.86rem;
	font-weight: 700;
}

.wsb-inline-meta {
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(22, 32, 51, 0.06);
}

.wsb-filter,
.wsb-section,
.wsb-side-card {
	padding: 18px;
	border-radius: 22px;
}

.wsb-filter-row,
.wsb-form .wsb-field-row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 12px;
}

.wsb-form {
	display: grid;
	gap: 14px;
}

.wsb-field label {
	display: block;
	margin-bottom: 7px;
	font-size: 0.9rem;
	font-weight: 700;
}

.wsb-field input,
.wsb-field textarea,
.wsb-field select,
.wsb-filter input,
.wsb-filter select {
	width: 100%;
	padding: 12px 14px;
	border-radius: 14px;
	border: 1px solid rgba(120, 139, 173, 0.26);
	background: rgba(255, 255, 255, 0.96);
	color: var(--wsb-text);
	font: inherit;
	box-sizing: border-box;
}

.wsb-field input:focus,
.wsb-field textarea:focus,
.wsb-field select:focus,
.wsb-filter input:focus,
.wsb-filter select:focus {
	outline: none;
	border-color: rgba(19, 103, 255, 0.45);
	box-shadow: 0 0 0 4px rgba(19, 103, 255, 0.11);
}

.wsb-table-wrap {
	overflow-x: auto;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.72);
}

.wsb-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 640px;
}

.wsb-table th,
.wsb-table td {
	padding: 14px 16px;
	text-align: left;
	border-bottom: 1px solid rgba(120, 139, 173, 0.14);
}

.wsb-table th {
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--wsb-text-soft);
}

.wsb-empty-state {
	padding: 18px;
	border-radius: 18px;
	background: rgba(19, 103, 255, 0.05);
	border: 1px dashed rgba(19, 103, 255, 0.2);
}

.wsb-product-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
	gap: 20px;
	align-items: start;
}

.wsb-product-main,
.wsb-product-side {
	display: grid;
	gap: 18px;
}

.wsb-product-featured img,
.wsb-gallery-item img {
	width: 100%;
	border-radius: 22px;
	box-shadow: var(--wsb-shadow-sm);
}

.wsb-gallery-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 12px;
}

.wsb-product-content {
	color: var(--wsb-text-soft);
	line-height: 1.8;
}

.wsb-product-content > *:first-child {
	margin-top: 0;
}

.wsb-custom-fields {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wsb-custom-fields li {
	padding: 11px 0;
	border-bottom: 1px dashed rgba(120, 139, 173, 0.24);
	color: var(--wsb-text-soft);
}

.wsb-custom-fields li strong {
	color: var(--wsb-text);
}

.wsb-video iframe,
.wsb-video video,
.wsb-video embed {
	width: 100%;
	min-height: 340px;
	border: 0;
	border-radius: 18px;
}

.wsb-auth-shell {
	max-width: 1120px;
	margin: 38px auto;
	display: grid;
	grid-template-columns: minmax(280px, 0.95fr) minmax(320px, 0.9fr);
	gap: 20px;
	align-items: stretch;
}

.wsb-auth-panel {
	padding: 30px;
	border-radius: 28px;
}

.wsb-auth-panel-dark {
	background:
		radial-gradient(circle at top right, rgba(255, 181, 74, 0.25), transparent 24%),
		linear-gradient(160deg, #10203b, #0a1630 55%, #0f172a);
	color: #fff;
}

.wsb-auth-panel-dark .wsb-eyebrow {
	background: rgba(255, 255, 255, 0.12);
	color: #dfe9ff;
}

.wsb-auth-panel-dark h2,
.wsb-auth-panel-dark p {
	color: #fff;
}

.wsb-login,
.wsb-register {
	max-width: none;
	margin: 0;
}

.wsb-login-register {
	margin: 2px 0 0;
}

.wsb-notice {
	padding: 14px 16px;
	border-radius: 16px;
	background: rgba(19, 103, 255, 0.08);
	border: 1px solid rgba(19, 103, 255, 0.14);
	color: var(--wsb-primary-deep);
	box-shadow: var(--wsb-shadow-sm);
}

.wsb-notice-error {
	background: rgba(192, 57, 43, 0.1);
	border-color: rgba(192, 57, 43, 0.18);
	color: #b42318;
}

.wsb-notice-warning {
	background: rgba(255, 181, 74, 0.14);
	border-color: rgba(255, 181, 74, 0.25);
	color: #8a5a00;
}

.wsb-thumb-preview,
.wsb-gallery-preview {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wsb-thumb img,
.wsb-thumb-preview img {
	width: 74px;
	height: 74px;
	object-fit: cover;
	border-radius: 12px;
}

.wsb-pagination {
	margin-top: 22px;
	display: flex;
	justify-content: center;
}

.wsb-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	margin: 0 4px;
	padding: 0 12px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid var(--wsb-border);
	text-decoration: none;
	color: var(--wsb-text);
	font-weight: 700;
}

.wsb-pagination .current {
	background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
	color: #fff;
	border-color: transparent;
}

.wsb-card,
.wsb-section,
.wsb-filter,
.wsb-auth-panel,
.wsb-metric-card,
.wsb-side-card {
	animation: wsb-rise 0.45s ease both;
}

@keyframes wsb-rise {
	from {
		opacity: 0;
		transform: translateY(12px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (max-width: 980px) {
	.wsb-auth-shell,
	.wsb-product-layout {
		grid-template-columns: 1fr;
	}

	.wsb-appbar,
	.wsb-shop-header,
	.wsb-product-header,
	.wsb-dashboard-header,
	.wsb-hero-panel {
		flex-direction: column;
	}
}

@media (max-width: 720px) {
	.wsb-shop,
	.wsb-product,
	.wsb-dashboard {
		padding: 18px;
		margin: 16px auto;
		border-radius: 22px;
	}

	.wsb-card-thumb img {
		height: 180px;
	}

	.wsb-btn,
	.wsb-link-soft {
		width: 100%;
	}

	.wsb-dashboard-links,
	.wsb-contact,
	.wsb-actions {
		align-items: stretch;
	}

	.wsb-filter-row,
	.wsb-form .wsb-field-row,
	.wsb-metrics {
		grid-template-columns: 1fr;
	}
}


body.wsb-sidebar-lock {
	overflow: hidden;
}

.wsb-workspace {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 22px;
	align-items: start;
	position: relative;
	transition: grid-template-columns 0.24s ease;
}

.wsb-sidebar-overlay {
	display: none;
}

.wsb-sidebar {
	position: sticky;
	top: 24px;
	padding: 20px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(14, 25, 46, 0.98), rgba(9, 16, 31, 0.96));
	color: #e8efff;
	box-shadow: 0 22px 50px rgba(8, 15, 31, 0.34);
	display: grid;
	gap: 18px;
	z-index: 5;
	transition: padding 0.24s ease, transform 0.28s ease, width 0.24s ease;
}

.wsb-sidebar .wsb-eyebrow {
	background: rgba(255, 255, 255, 0.1);
	color: #dbe7ff;
}

.wsb-sidebar-brand {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

.wsb-sidebar-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 16px;
	background: linear-gradient(135deg, rgba(255, 181, 74, 0.95), rgba(19, 103, 255, 0.75));
	color: #ffffff;
	font-size: 1.1rem;
	font-weight: 800;
	letter-spacing: -0.04em;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16);
}

.wsb-sidebar-brand-copy {
	min-width: 0;
}

.wsb-sidebar-brand h2 {
	margin: 14px 0 8px;
	font-size: 1.55rem;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.04em;
}

.wsb-sidebar-brand p {
	margin: 0;
	color: rgba(232, 239, 255, 0.72);
	font-size: 0.94rem;
	line-height: 1.7;
}

.wsb-sidebar-nav {
	display: grid;
	gap: 8px;
}

.wsb-sidebar-link {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 14px;
	border-radius: 16px;
	text-decoration: none;
	font-weight: 700;
	color: #edf3ff;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.06);
	transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.wsb-sidebar-link-main {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.wsb-sidebar-label {
	white-space: nowrap;
}

.wsb-sidebar-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
}

.wsb-sidebar-icon svg {
	width: 20px;
	height: 20px;
}

.wsb-sidebar-link:hover {
	transform: translateX(3px);
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(255, 255, 255, 0.14);
}

.wsb-sidebar-link.is-active {
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.32), rgba(10, 73, 190, 0.28));
	border-color: rgba(129, 174, 255, 0.36);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06), 0 10px 24px rgba(7, 18, 41, 0.22);
}

.wsb-sidebar-link.is-logout {
	color: #ffd9d4;
}

.wsb-sidebar-stats {
	display: grid;
	gap: 10px;
	padding-top: 8px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.wsb-sidebar-stat {
	padding: 12px 14px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.05);
}

.wsb-sidebar-stat strong {
	display: block;
	margin-top: 8px;
	font-size: 1.25rem;
	letter-spacing: -0.04em;
}

.wsb-dashboard-main {
	min-width: 0;
}

.wsb-sidebar-toggle,
.wsb-sidebar-desktop-toggle {
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 12px 16px;
	border-radius: 14px;
	border: 1px solid var(--wsb-border);
	background: rgba(255, 255, 255, 0.86);
	color: var(--wsb-text);
	font: inherit;
	font-weight: 700;
	box-shadow: var(--wsb-shadow-sm);
	cursor: pointer;
}

.wsb-sidebar-toggle {
	display: none;
}

.wsb-sidebar-desktop-toggle {
	display: inline-flex;
}

.wsb-sidebar-toggle .wsb-sidebar-icon,
.wsb-sidebar-desktop-toggle .wsb-sidebar-icon {
	width: 18px;
	height: 18px;
	flex-basis: 18px;
}

.wsb-sidebar-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
	font-style: normal;
	font-size: 0.78rem;
	font-weight: 800;
}

.wsb-sidebar-badge[data-role="new-leads"] {
	background: linear-gradient(135deg, #ff7a59, #ff3d6e);
	box-shadow: 0 10px 18px rgba(255, 61, 110, 0.28);
}

.wsb-section[id],
.wsb-section-profile,
#wsb-overview {
	scroll-margin-top: 28px;
}

@media (min-width: 981px) {
	.wsb-dashboard.is-sidebar-collapsed .wsb-workspace {
		grid-template-columns: 94px minmax(0, 1fr);
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar {
		padding-left: 14px;
		padding-right: 14px;
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-brand {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-brand-copy,
	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-stats,
	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-label {
		display: none;
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-nav {
		justify-items: center;
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-link {
		justify-content: center;
		padding-left: 0;
		padding-right: 0;
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-link-main {
		justify-content: center;
	}

	.wsb-dashboard.is-sidebar-collapsed .wsb-sidebar-badge {
		position: absolute;
		top: 8px;
		right: 8px;
		min-width: 10px;
		height: 10px;
		padding: 0;
		font-size: 0;
		line-height: 0;
	}
}

@media (max-width: 980px) {
	.wsb-workspace {
		grid-template-columns: 1fr;
	}

	.wsb-sidebar-toggle {
		display: inline-flex;
	}

	.wsb-sidebar-desktop-toggle {
		display: none;
	}

	.wsb-sidebar-overlay {
		display: block;
		position: fixed;
		inset: 0;
		background: rgba(7, 13, 26, 0.55);
		backdrop-filter: blur(6px);
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.24s ease, visibility 0.24s ease;
		z-index: 25;
	}

	.wsb-sidebar {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: min(86vw, 340px);
		max-width: 340px;
		border-radius: 0 24px 24px 0;
		overflow-y: auto;
		transform: translateX(calc(-100% - 18px));
		transition: transform 0.28s ease;
		z-index: 35;
	}

	.wsb-dashboard.is-sidebar-open .wsb-sidebar {
		transform: translateX(0);
	}

	.wsb-dashboard.is-sidebar-open .wsb-sidebar-overlay {
		opacity: 1;
		visibility: visible;
	}
}

@media (max-width: 720px) {
	.wsb-sidebar-link {
		padding: 13px 14px;
	}
}


.wsb-shop {
	max-width: none;
	width: 100vw;
	min-height: 100vh;
	margin: 0 calc(50% - 50vw);
	padding: clamp(24px, 3vw, 42px) clamp(18px, 4vw, 52px) clamp(42px, 5vw, 64px);
	border-radius: 0;
	border-left: 0;
	border-right: 0;
	box-shadow: none;
	background:
		radial-gradient(circle at top right, rgba(255, 255, 255, 0.6), transparent 18%),
		radial-gradient(circle at left top, rgba(226, 232, 240, 0.48), transparent 24%),
		radial-gradient(circle at bottom left, rgba(203, 213, 225, 0.36), transparent 24%),
		linear-gradient(180deg, #f8fafc 0%, #eef2f6 42%, #e3e8ee 100%);
}

.wsb-shop::after {
	background-image: linear-gradient(rgba(100, 116, 139, 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(100, 116, 139, 0.06) 1px, transparent 1px);
	opacity: 0.2;
}

.wsb-shop .wsb-shop-header,
.wsb-shop .wsb-shop-summary,
.wsb-shop .wsb-filter,
.wsb-shop .wsb-pagination,
.wsb-shop > p {
	max-width: 1600px;
	margin-left: auto;
	margin-right: auto;
}



.wsb-shop .wsb-shop-summary {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: clamp(22px, 4vw, 34px);
	align-items: stretch;
	position: relative;
	z-index: 4;
	overflow: hidden;
	margin-top: clamp(-54px, -5vw, -30px);
	padding: clamp(24px, 3vw, 34px);
	border-radius: 30px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.74), rgba(243, 248, 255, 0.62));
	backdrop-filter: blur(22px) saturate(145%);
	-webkit-backdrop-filter: blur(22px) saturate(145%);
	border: 1px solid rgba(255, 255, 255, 0.58);
	box-shadow: 0 28px 62px rgba(23, 37, 84, 0.16);
}

.wsb-shop .wsb-shop-summary .wsb-hero-copy,
.wsb-shop .wsb-shop-summary .wsb-hero-aside {
	position: relative;
}

.wsb-shop .wsb-shop-summary::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top left, rgba(255, 255, 255, 0.58), transparent 34%),
		radial-gradient(circle at bottom right, rgba(19, 103, 255, 0.1), transparent 28%);
	pointer-events: none;
}

.wsb-shop .wsb-shop-summary .wsb-hero-copy {
	max-width: none;
}

.wsb-shop .wsb-shop-summary .wsb-hero-copy h1 {
	font-size: clamp(2.2rem, 4.8vw, 4rem);
}

.wsb-shop .wsb-shop-summary .wsb-hero-copy p {
	max-width: 64ch;
}

.wsb-shop .wsb-shop-summary .wsb-hero-aside {
	display: grid;
	gap: 16px;
	align-content: start;
}

.wsb-shop .wsb-shop-header {
	align-items: stretch;
	gap: 28px;
	padding: clamp(24px, 3vw, 38px);
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(245, 249, 255, 0.86)),
		radial-gradient(circle at top right, rgba(255, 181, 74, 0.2), transparent 30%);
	border: 1px solid rgba(255, 255, 255, 0.72);
	box-shadow: 0 24px 60px rgba(23, 37, 84, 0.12);
}

.wsb-shop .wsb-hero-copy {
	flex: 1 1 680px;
	max-width: 860px;
}

.wsb-shop .wsb-hero-copy h1 {
	font-size: clamp(2.6rem, 6vw, 5rem);
}

.wsb-shop .wsb-hero-copy p {
	max-width: 62ch;
	font-size: 1.04rem;
}

.wsb-shop .wsb-hero-aside {
	flex: 0 1 360px;
	align-content: stretch;
}

.wsb-shop .wsb-hero-stat,
.wsb-shop .wsb-contact {
	height: 100%;
}

.wsb-shop .wsb-filter {
	padding: 20px;
	border-radius: 24px;
}

.wsb-shop .wsb-filter-row {
	grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(150px, 1fr)) auto auto;
	align-items: center;
}

.wsb-shop .wsb-grid {
	max-width: 1600px;
	margin: 0 auto;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 24px;
}

.wsb-shop .wsb-card {
	padding: 16px;
	border-radius: 24px;
}

.wsb-shop .wsb-card-thumb {
	margin-bottom: 16px;
}

.wsb-shop .wsb-card-thumb img {
	height: clamp(220px, 24vw, 310px);
}

.wsb-shop .wsb-card h2 {
	font-size: 1.16rem;
}

.wsb-shop .wsb-card-actions .wsb-contact {
	width: 100%;
}

.wsb-shop .wsb-card-actions .wsb-btn {
	flex: 1 1 0;
}

@media (max-width: 1200px) {
	.wsb-shop .wsb-filter-row {
		grid-template-columns: repeat(3, minmax(180px, 1fr));
	}
}

@media (max-width: 900px) {
	.wsb-shop {
		padding-left: 16px;
		padding-right: 16px;
	}

	.wsb-shop .wsb-shop-header {
		padding: 16px;
	}

	.wsb-shop .wsb-shop-summary {
		grid-template-columns: 1fr;
		margin-top: -24px;
		padding: 22px;
	}

	.wsb-shop .wsb-grid {
		grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	}

	.wsb-shop .wsb-filter-row {
		grid-template-columns: repeat(2, minmax(160px, 1fr));
	}
}

@media (max-width: 640px) {
	.wsb-shop {
		margin: 0;
		width: 100%;
		min-height: auto;
		padding: 16px 14px 32px;
	}

	.wsb-shop .wsb-shop-header,
	.wsb-shop .wsb-filter {
		border-radius: 22px;
	}

	.wsb-shop .wsb-shop-header {
		padding: 18px;
	}

	.wsb-shop .wsb-shop-summary {
		margin-top: 14px;
		padding: 18px;
		border-radius: 22px;
	}

	.wsb-shop .wsb-filter-row,
	.wsb-shop .wsb-grid {
		grid-template-columns: 1fr;
	}

	.wsb-shop .wsb-card-thumb img {
		height: 220px;
	}
}


.wsb-shop .wsb-filter {
	position: sticky;
	top: 16px;
	z-index: 12;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(18px);
}

.wsb-shop .wsb-shop-chips,
.wsb-shop #wsb-catalog-grid {
	max-width: 1600px;
	margin-left: auto;
	margin-right: auto;
}

.wsb-shop .wsb-shop-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 22px;
}

.wsb-shop .wsb-shop-chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid rgba(120, 139, 173, 0.18);
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.06);
	color: var(--wsb-text);
	font-weight: 700;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.wsb-shop .wsb-shop-chip:hover {
	transform: translateY(-2px);
	background: rgba(255, 255, 255, 0.96);
}

.wsb-shop .wsb-shop-chip.is-active {
	background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
	border-color: transparent;
	color: #fff;
	box-shadow: 0 18px 28px rgba(19, 103, 255, 0.24);
}

.wsb-shop .wsb-shop-banner-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 24px;
	align-items: center;
}

.wsb-shop .wsb-shop-banner-card {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 14px;
	border-radius: 20px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.42));
	backdrop-filter: blur(18px) saturate(140%);
	-webkit-backdrop-filter: blur(18px) saturate(140%);
	border: 1px solid rgba(255, 255, 255, 0.62);
	box-shadow: 0 14px 28px rgba(23, 37, 84, 0.08);
}

.wsb-shop .wsb-shop-banner-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 18px;
	overflow: hidden;
	background: linear-gradient(135deg, rgba(255, 181, 74, 0.94), rgba(19, 103, 255, 0.76));
	color: #fff;
	font-size: 1.35rem;
	font-weight: 800;
	letter-spacing: -0.04em;
	box-shadow: 0 10px 20px rgba(19, 103, 255, 0.12);
}

.wsb-shop .wsb-shop-banner-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wsb-shop .wsb-shop-banner-meta {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-self: center;
	min-height: 64px;
}

.wsb-shop .wsb-shop-banner-meta .wsb-metric-label {
	margin-bottom: 3px;
	font-size: 0.72rem;
}

.wsb-shop .wsb-shop-banner-meta strong {
	display: block;
	margin-top: 0;
	font-size: 1.08rem;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.wsb-shop .wsb-shop-banner-meta p {
	margin: 4px 0 0;
	font-size: 0.88rem;
	color: var(--wsb-text-soft);
	line-height: 1.45;
}

.wsb-shop .wsb-shop-banner-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(120px, 1fr));
	gap: 10px;
}

.wsb-shop .wsb-shop-banner-stats .wsb-hero-stat {
	padding: 12px 14px;
	border-radius: 18px;
}

.wsb-shop .wsb-shop-banner-stats .wsb-metric-label {
	font-size: 0.72rem;
}

.wsb-shop .wsb-shop-banner-stats .wsb-metric-value {
	margin-top: 6px;
	font-size: clamp(1.2rem, 2.4vw, 1.55rem);
}

.wsb-shop .wsb-hero-aside {
	gap: 16px;
}


.wsb-shop .wsb-shop-banner-actions .wsb-contact {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.wsb-shop .wsb-shop-banner-actions .wsb-contact .wsb-btn {
	padding: 13px 18px;
	border-radius: 16px;
	box-shadow: 0 16px 30px rgba(15, 23, 42, 0.12);
}

.wsb-shop .wsb-shop-banner-actions .wsb-contact .wsb-btn:hover {
	transform: translateY(-3px);
}

.wsb-shop .wsb-shop-banner-actions > .wsb-btn-primary {
	padding: 14px 20px;
	border-radius: 16px;
	box-shadow: 0 18px 34px rgba(19, 103, 255, 0.22);
}

.wsb-shop .wsb-shop-banner-actions .wsb-btn-icon {
	width: 20px;
	height: 20px;
	padding: 4px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
}

.wsb-shop .wsb-shop-banner-actions .wsb-btn-icon svg {
	width: 100%;
	height: 100%;
}

@media (max-width: 900px) {
	.wsb-shop .wsb-filter {
		top: 10px;
	}

	.wsb-shop .wsb-shop-summary {
		grid-template-columns: 1fr;
		margin-top: -24px;
	}

	.wsb-shop .wsb-shop-banner-card {
		grid-template-columns: 72px minmax(0, 1fr);
	}

	.wsb-shop .wsb-shop-banner-avatar {
		width: 72px;
		height: 72px;
		border-radius: 20px;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-filter {
		position: static;
	}

	.wsb-shop .wsb-shop-banner-card,
	.wsb-shop .wsb-shop-banner-stats {
		grid-template-columns: 1fr;
	}

	.wsb-shop .wsb-shop-banner-actions,
	.wsb-shop .wsb-shop-banner-actions .wsb-contact {
		align-items: stretch;
	}

	.wsb-shop .wsb-shop-chip {
		width: 100%;
	}
}

body.wsb-shop-lock {
	overflow: hidden;
}

.wsb-btn-secondary {
	background: rgba(255, 255, 255, 0.92);
	color: var(--wsb-text);
	border: 1px solid rgba(120, 139, 173, 0.24);
	box-shadow: var(--wsb-shadow-sm);
}

.wsb-media-upload {
	gap: 12px;
}

.wsb-media-preview {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 132px;
	padding: 12px;
	border-radius: 18px;
	border: 1px dashed rgba(120, 139, 173, 0.28);
	background: rgba(255, 255, 255, 0.72);
	color: var(--wsb-text-soft);
	text-align: center;
	overflow: hidden;
}

.wsb-media-preview.is-banner {
	min-height: 170px;
}

.wsb-media-preview img {
	width: 100%;
	height: 100%;
	max-height: 240px;
	object-fit: cover;
	border-radius: 14px;
}

.wsb-checkbox {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 0.92rem;
	color: var(--wsb-text-soft);
}

.wsb-checkbox input[type="checkbox"],
.wsb-category-option input[type="checkbox"] {
	width: 15px;
	height: 15px;
	min-width: 15px;
	accent-color: var(--wsb-primary);
}


.wsb-inline-toggle {
	margin-top: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	align-self: flex-start;
	gap: 8px;
	width: fit-content;
	max-width: max-content;
	padding: 4px 8px;
	border-radius: 11px;
	border: 1px solid rgba(120, 139, 173, 0.12);
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,248,255,0.95));
	box-shadow: 0 5px 10px rgba(15, 23, 42, 0.035);
	font-weight: 700;
	font-size: 0.8rem;
	color: var(--wsb-text);
}

.wsb-inline-toggle span {
	flex: 0 1 auto;
}

.wsb-inline-toggle input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	width: 28px;
	height: 15px;
	min-width: 28px;
	border-radius: 999px;
	border: none;
	background: rgba(148, 163, 184, 0.45);
	transition: background 0.18s ease;
	cursor: pointer;
}

.wsb-inline-toggle input[type="checkbox"]::after {
	content: '';
	position: absolute;
	top: 1.5px;
	left: 1.5px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 3px 6px rgba(15, 23, 42, 0.18);
	transition: transform 0.18s ease;
}

.wsb-inline-toggle input[type="checkbox"]:checked {
	background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
}

.wsb-inline-toggle input[type="checkbox"]:checked::after {
	transform: translateX(13px);
}

.wsb-product-form-grid > .wsb-field {
	position: relative;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(120, 139, 173, 0.16);
}

.wsb-product-form-grid > .wsb-field::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 1px;
	background: linear-gradient(90deg, rgba(255,255,255,0), rgba(120, 139, 173, 0.26), rgba(255,255,255,0));
}

.wsb-product-form-grid > .wsb-field:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

.wsb-product-form-grid > .wsb-field:last-child::after {
	display: none;
}

.wsb-shop .wsb-shop-header.has-banner {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.wsb-shop .wsb-mobile-filter-toggle {
	display: none;
}

.wsb-shop .wsb-filter-mobile-bar {
	display: none;
}

.wsb-shop .wsb-mobile-filter-overlay {
	display: none;
}

.wsb-shop .wsb-card-actions {
	display: grid;
	gap: 12px;
}

.wsb-shop .wsb-card-actions .wsb-contact {
	width: 100%;
}

.wsb-shop .wsb-card-actions .wsb-contact .wsb-btn,
.wsb-shop .wsb-card-actions .wsb-btn-secondary {
	width: 100%;
}

.wsb-shop .wsb-card-primary-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	width: 100%;
}

.wsb-shop .wsb-card-primary-actions .wsb-card-action-btn {
	width: 100%;
	min-height: 46px;
	padding: 0 16px;
	border-radius: 16px;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.wsb-shop .wsb-card-primary-actions .wsb-card-action-btn .wsb-btn-icon {
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
}

.wsb-shop .wsb-card-primary-actions .wsb-card-action-btn .wsb-btn-icon svg {
	width: 16px;
	height: 16px;
}

.wsb-shop .wsb-card-primary-actions .wsb-card-action-quick {
	border: 1px solid rgba(19, 103, 255, 0.16);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(243, 247, 255, 0.96));
	color: var(--wsb-primary-deep);
	box-shadow: 0 12px 22px rgba(15, 23, 42, 0.08);
}

.wsb-shop .wsb-card-primary-actions .wsb-card-action-detail {
	border: 1px solid rgba(19, 103, 255, 0.16);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(243, 247, 255, 0.96));
	color: var(--wsb-primary-deep);
	box-shadow: 0 12px 22px rgba(15, 23, 42, 0.08);
}

.wsb-shop .wsb-card-primary-actions .wsb-card-action-btn:hover {
	transform: translateY(-2px);
}

.wsb-action-btn {
	width: 100%;
	min-height: 46px;
	padding: 0 16px;
	border-radius: 16px;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.wsb-action-btn .wsb-btn-icon {
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
}

.wsb-action-btn .wsb-btn-icon svg {
	width: 16px;
	height: 16px;
}

.wsb-action-btn-secondary {
	border: 1px solid rgba(19, 103, 255, 0.16);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(243, 247, 255, 0.96));
	color: var(--wsb-primary-deep);
	box-shadow: 0 12px 22px rgba(15, 23, 42, 0.08);
}

.wsb-action-btn-primary {
	border: 1px solid rgba(19, 103, 255, 0.24);
	background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
	color: #fff;
	box-shadow: 0 16px 24px rgba(19, 103, 255, 0.22);
}

.wsb-action-btn:hover {
	transform: translateY(-2px);
}

.wsb-quick-view-template {
	display: none;
}

.wsb-quick-view-modal {
	position: fixed;
	inset: 0;
	z-index: 70;
}

.wsb-quick-view-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(7, 13, 26, 0.68);
	backdrop-filter: blur(8px);
}

.wsb-quick-view-dialog {
	position: relative;
	max-width: min(1080px, calc(100vw - 32px));
	max-height: calc(100vh - 40px);
	margin: 20px auto;
	padding: 22px;
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,249,255,0.96));
	box-shadow: 0 30px 70px rgba(7, 18, 41, 0.28);
	overflow: auto;
}

.wsb-quick-view-close,
.wsb-shop .wsb-mobile-filter-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(120, 139, 173, 0.22);
	background: rgba(255, 255, 255, 0.92);
	color: var(--wsb-text);
	cursor: pointer;
	box-shadow: var(--wsb-shadow-sm);
}

.wsb-quick-view-close {
	position: sticky;
	top: 0;
	margin-left: auto;
	width: 42px;
	height: 42px;
	border-radius: 999px;
	font-size: 1.8rem;
	line-height: 1;
	z-index: 2;
}

.wsb-quick-view-layout {
	display: grid;
	grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1fr);
	gap: 22px;
	align-items: start;
}

.wsb-quick-view-media .wsb-card-media-main img,
.wsb-quick-view-placeholder {
	width: 100%;
	min-height: 360px;
	border-radius: 24px;
}

.wsb-quick-view-media .wsb-card-media-main img {
	object-fit: cover;
	box-shadow: var(--wsb-shadow-md);
}

.wsb-quick-view-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, rgba(255, 181, 74, 0.95), rgba(19, 103, 255, 0.78));
	color: #fff;
	font-size: 4rem;
	font-weight: 800;
}

.wsb-quick-view-body h2 {
	margin: 14px 0 12px;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.05;
	letter-spacing: -0.05em;
}

.wsb-quick-view-text {
	color: var(--wsb-text-soft);
	line-height: 1.75;
	margin-bottom: 18px;
}

@media (max-width: 900px) {
	.wsb-quick-view-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-mobile-filter-toggle {
		display: inline-flex;
		position: fixed;
		left: 16px;
		right: 16px;
		bottom: 16px;
		justify-content: center;
		padding: 14px 18px;
		border: none;
		border-radius: 999px;
		background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
		color: #fff;
		font: inherit;
		font-weight: 800;
		box-shadow: 0 24px 40px rgba(19, 103, 255, 0.34);
		z-index: 45;
	}

	.wsb-shop .wsb-mobile-filter-overlay {
		display: block;
		position: fixed;
		inset: 0;
		background: rgba(7, 13, 26, 0.52);
		backdrop-filter: blur(6px);
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.24s ease, visibility 0.24s ease;
		z-index: 44;
	}

	.wsb-shop .wsb-filter {
		position: fixed;
		left: 12px;
		right: 12px;
		bottom: 12px;
		max-height: calc(100vh - 90px);
		margin: 0;
		padding: 18px;
		border-radius: 24px;
		overflow: auto;
		transform: translateY(calc(100% + 30px));
		transition: transform 0.28s ease;
		z-index: 46;
	}

	.wsb-shop.is-filter-open .wsb-mobile-filter-overlay {
		opacity: 1;
		visibility: visible;
	}

	.wsb-shop.is-filter-open .wsb-filter {
		transform: translateY(0);
	}

	.wsb-shop .wsb-filter-mobile-bar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-bottom: 16px;
	}

	.wsb-shop .wsb-mobile-filter-close {
		padding: 10px 14px;
		border-radius: 999px;
	}

	.wsb-shop .wsb-shop-banner-actions .wsb-contact .wsb-btn,
	.wsb-shop .wsb-shop-banner-actions .wsb-btn-primary {
		width: 100%;
	}

	.wsb-quick-view-dialog {
		max-width: calc(100vw - 20px);
		max-height: calc(100vh - 20px);
		margin: 10px auto;
		padding: 18px;
		border-radius: 22px;
	}

	.wsb-quick-view-media .wsb-card-media-main img,
	.wsb-quick-view-placeholder {
		min-height: 240px;
	}
}


/* Interactive storefront upgrades */
.wsb-media-dropzone {
	position: relative;
	display: grid;
	gap: 14px;
	padding: 18px;
	border-radius: 24px;
	border: 1px dashed rgba(59, 130, 246, 0.28);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(243, 248, 255, 0.92));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 18px 36px rgba(15, 23, 42, 0.06);
	cursor: pointer;
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.wsb-media-dropzone:hover,
.wsb-media-dropzone.is-dragover {
	transform: translateY(-2px);
	border-color: rgba(19, 103, 255, 0.48);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(232, 243, 255, 0.98));
	box-shadow: 0 24px 46px rgba(19, 103, 255, 0.12);
}

.wsb-media-dropzone.has-preview {
	border-style: solid;
}

.wsb-media-dropzone-copy {
	display: grid;
	gap: 4px;
	justify-items: start;
}

.wsb-media-dropzone-copy strong {
	font-size: 1rem;
	letter-spacing: -0.02em;
	color: var(--wsb-text);
}

.wsb-media-dropzone-copy p {
	margin: 0;
	color: var(--wsb-text-soft);
	font-size: 0.92rem;
}

.wsb-media-input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.wsb-shop .wsb-shop-header.has-slider {
	position: relative;
	display: grid;
	align-items: stretch;
	min-height: clamp(340px, 56svh, 520px);
	padding: 0;
	overflow: hidden;
	border-radius: 0 0 40px 40px;
	max-width: none;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	box-shadow: 0 24px 48px rgba(8, 15, 35, 0.16);
	background: #0b1220;
}

.wsb-shop .wsb-shop-header.has-slider::before {
	display: none;
}

.wsb-shop .wsb-shop-hero-slider {
	position: absolute;
	inset: 0;
	overflow: hidden;
	background: #0b1220;
}

.wsb-shop .wsb-shop-hero-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	visibility: hidden;
	transform: scale(1.02);
	transition: opacity 0.55s ease, transform 0.9s ease, visibility 0.55s ease;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.wsb-shop .wsb-shop-hero-slide.is-active {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
}

.wsb-shop .wsb-shop-hero-slide.is-fallback {
	background: radial-gradient(circle at top left, rgba(255, 181, 74, 0.34), transparent 32%), linear-gradient(135deg, #061121 0%, #12386d 42%, #2563eb 100%);
}

.wsb-shop .wsb-shop-hero-slide-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(110deg, rgba(5, 12, 26, 0.82) 0%, rgba(7, 13, 26, 0.6) 38%, rgba(7, 13, 26, 0.24) 100%);
}

.wsb-shop .wsb-shop-hero-slide-inner,
.wsb-shop .wsb-shop-hero-controls {
	position: relative;
	z-index: 2;
	width: min(1600px, calc(100% - 48px));
	margin: 0 auto;
}

.wsb-shop .wsb-shop-hero-slide-inner {
	height: 100%;
	display: flex;
	align-items: flex-end;
	padding: clamp(24px, 4vw, 38px) 0 clamp(82px, 10vw, 116px);
}

.wsb-shop .wsb-shop-hero-slide-copy {
	max-width: min(440px, 100%);
	display: grid;
	gap: 10px;
	padding: 18px 20px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.09));
	backdrop-filter: blur(16px);
	border: 1px solid rgba(255, 255, 255, 0.16);
	box-shadow: 0 20px 40px rgba(6, 12, 26, 0.2);
	color: #fff;
}

.wsb-shop .wsb-shop-hero-slide-copy .wsb-eyebrow {
	width: fit-content;
	background: rgba(255, 255, 255, 0.14);
	color: rgba(255, 255, 255, 0.92);
}

.wsb-shop .wsb-shop-hero-slide-copy strong {
	font-size: clamp(1.45rem, 3vw, 2.1rem);
	line-height: 1.05;
	letter-spacing: -0.05em;
}

.wsb-shop .wsb-shop-hero-slide-copy p {
	margin: 0;
	max-width: 38ch;
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.82);
	line-height: 1.6;
}

.wsb-shop .wsb-shop-hero-controls {
	position: absolute;
	left: 50%;
	bottom: clamp(18px, 3vw, 28px);
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	pointer-events: none;
}

.wsb-shop .wsb-shop-hero-controls-left,
.wsb-shop .wsb-shop-hero-controls-right {
	display: flex;
	align-items: center;
	gap: 12px;
	pointer-events: auto;
}

.wsb-shop .wsb-shop-hero-progress {
	width: clamp(120px, 18vw, 190px);
	height: 6px;
	border-radius: 999px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.2);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.wsb-shop .wsb-shop-hero-progress-bar {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgba(255, 181, 74, 0.94), rgba(255, 255, 255, 0.96));
}

.wsb-shop .wsb-shop-hero-nav {
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	font-size: 1.25rem;
	line-height: 1;
	backdrop-filter: blur(14px);
	transform: none;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.wsb-shop .wsb-shop-hero-nav:hover {
	background: rgba(255, 255, 255, 0.2);
	border-color: rgba(255, 255, 255, 0.32);
	transform: translateY(-1px);
}

.wsb-shop .wsb-shop-hero-nav.is-prev,
.wsb-shop .wsb-shop-hero-nav.is-next {
	left: auto;
	right: auto;
}

.wsb-shop .wsb-shop-hero-dots {
	position: static;
	display: flex;
	align-items: center;
	gap: 8px;
	transform: none;
}

.wsb-shop .wsb-shop-hero-dot {
	width: 10px;
	height: 10px;
	padding: 0;
	border: none;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.42);
	cursor: pointer;
	transition: transform 0.2s ease, background 0.2s ease, width 0.2s ease;
}

.wsb-shop .wsb-shop-hero-dot.is-active {
	width: 24px;
	background: #fff;
	transform: none;
}

@media (max-width: 1200px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: clamp(320px, 52svh, 460px);
	}
}

@media (max-width: 980px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: 380px;
		border-radius: 0 0 32px 32px;
	}

	.wsb-shop .wsb-shop-hero-slide-inner,
	.wsb-shop .wsb-shop-hero-controls {
		width: min(100%, calc(100% - 28px));
	}

	.wsb-shop .wsb-shop-hero-slide-inner {
		padding: 24px 0 94px;
	}

	.wsb-shop .wsb-shop-hero-slide-copy {
		max-width: min(420px, 100%);
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: 320px;
		border-radius: 0 0 26px 26px;
	}

	.wsb-shop .wsb-shop-hero-slide-inner,
	.wsb-shop .wsb-shop-hero-controls {
		width: min(100%, calc(100% - 24px));
	}

	.wsb-shop .wsb-shop-hero-slide-inner {
		padding: 18px 0 76px;
		align-items: flex-end;
	}

	.wsb-shop .wsb-shop-hero-slide-copy {
		max-width: 100%;
		padding: 16px;
		border-radius: 22px;
	}

	.wsb-shop .wsb-shop-hero-slide-copy strong {
		font-size: clamp(1.28rem, 6vw, 1.6rem);
	}

	.wsb-shop .wsb-shop-hero-slide-copy p {
		font-size: 0.9rem;
	}

	.wsb-shop .wsb-shop-hero-controls {
		bottom: 14px;
		gap: 12px;
		align-items: flex-end;
	}

	.wsb-shop .wsb-shop-hero-controls-left {
		flex: 1 1 auto;
		gap: 10px;
	}

	.wsb-shop .wsb-shop-hero-progress {
		width: 92px;
	}

	.wsb-shop .wsb-shop-hero-nav {
		width: 40px;
		height: 40px;
	}
}

.wsb-shop .wsb-shop-header-content-unused {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
	gap: clamp(24px, 4vw, 44px);
	align-items: end;
	width: min(1600px, calc(100% - 48px));
	margin: auto;
	padding: clamp(34px, 5vw, 60px) 0;
}

.wsb-shop .wsb-shop-header.has-slider .wsb-hero-copy-unused,
.wsb-shop .wsb-shop-header.has-slider .wsb-hero-aside-unused {
	position: relative;
}

.wsb-shop .wsb-shop-header.has-slider .wsb-hero-copy-unused {
	padding: clamp(28px, 5vw, 48px);
	border-radius: 34px;
	background: linear-gradient(180deg, rgba(6, 16, 34, 0.8), rgba(14, 34, 68, 0.48));
	border: 1px solid rgba(255, 255, 255, 0.14);
	backdrop-filter: blur(18px);
	box-shadow: 0 28px 60px rgba(8, 15, 35, 0.24);
}

.wsb-shop .wsb-shop-header.has-slider .wsb-hero-copy-unused h1,
.wsb-shop .wsb-shop-header.has-slider .wsb-hero-copy-unused p,
.wsb-shop .wsb-shop-header.has-slider .wsb-hero-copy-unused .wsb-eyebrow {
	color: #fff;
}

.wsb-shop .wsb-shop-header.has-slider .wsb-hero-copy-unused p {
	color: rgba(255, 255, 255, 0.82);
}

.wsb-shop .wsb-shop-header.has-slider .wsb-shop-banner-card-unused,
.wsb-shop .wsb-shop-header.has-slider .wsb-hero-stat-unused {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(18px);
	box-shadow: 0 24px 48px rgba(8, 15, 35, 0.16);
	color: #fff;
}

.wsb-shop .wsb-shop-header.has-slider .wsb-shop-banner-meta-unused p,
.wsb-shop .wsb-shop-header.has-slider .wsb-metric-label-unused,
.wsb-shop .wsb-shop-header.has-slider .wsb-metric-value-unused {
	color: rgba(255, 255, 255, 0.88);
}

.wsb-quick-view-gallery {
	display: grid;
	gap: 14px;
}

.wsb-quick-view-gallery-frame {
	position: relative;
	border-radius: 26px;
	overflow: hidden;
	background: linear-gradient(135deg, rgba(226, 236, 250, 0.9), rgba(241, 246, 255, 0.9));
	box-shadow: var(--wsb-shadow-md);
}

.wsb-quick-view-gallery-main {
	position: relative;
	min-height: 420px;
}

.wsb-quick-view-slide {
	display: none;
	margin: 0;
}

.wsb-quick-view-slide.is-active {
	display: block;
}

.wsb-quick-view-slide img {
	width: 100%;
	height: 420px;
	object-fit: cover;
	display: block;
}

.wsb-quick-view-gallery-nav {
	position: absolute;
	top: 50%;
	z-index: 2;
	width: 46px;
	height: 46px;
	border: none;
	border-radius: 999px;
	background: rgba(7, 13, 26, 0.58);
	color: #fff;
	font-size: 1.4rem;
	transform: translateY(-50%);
	cursor: pointer;
}

.wsb-quick-view-gallery-nav.is-prev {
	left: 16px;
}

.wsb-quick-view-gallery-nav.is-next {
	right: 16px;
}

.wsb-quick-view-thumbs {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(78px, 1fr));
	gap: 10px;
}

.wsb-quick-view-thumb {
	padding: 0;
	border: 2px solid transparent;
	border-radius: 18px;
	overflow: hidden;
	background: #fff;
	cursor: pointer;
	box-shadow: 0 14px 26px rgba(15, 23, 42, 0.08);
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.wsb-quick-view-thumb:hover,
.wsb-quick-view-thumb.is-active {
	transform: translateY(-2px);
	border-color: rgba(19, 103, 255, 0.42);
	box-shadow: 0 20px 32px rgba(19, 103, 255, 0.14);
}

.wsb-quick-view-thumb img {
	width: 100%;
	height: 86px;
	object-fit: cover;
	display: block;
}

@media (max-width: 1200px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: clamp(340px, 56svh, 560px);
	}
}

@media (max-width: 980px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: auto;
		border-radius: 0 0 32px 32px;
	}

	.wsb-shop .wsb-shop-header-content-unused {
		grid-template-columns: 1fr;
		align-items: stretch;
		padding: 72px 0 28px;
	}

	.wsb-shop .wsb-shop-hero-slide {
		align-items: flex-start;
		padding-top: 90px;
	}
}

@media (max-width: 640px) {
	.wsb-media-dropzone {
		padding: 16px;
		border-radius: 20px;
	}

	.wsb-shop .wsb-shop-header.has-slider {
		border-radius: 0 0 26px 26px;
	}

	.wsb-shop .wsb-shop-header-content-unused {
		width: min(100%, calc(100% - 28px));
		padding: 68px 0 22px;
	}

	.wsb-shop .wsb-shop-hero-slide {
		padding: 72px 16px 68px;
	}

	.wsb-shop .wsb-shop-hero-slide-copy {
		padding: 18px;
		border-radius: 22px;
	}

	.wsb-shop .wsb-shop-hero-nav {
		display: none;
	}

	.wsb-shop .wsb-shop-hero-dots {
		bottom: 16px;
	}

	.wsb-quick-view-gallery-main,
	.wsb-quick-view-slide img {
		height: 280px;
		min-height: 280px;
	}

	.wsb-quick-view-gallery-nav {
		width: 40px;
		height: 40px;
	}
}


/* Motion and mobile media refinements */
.wsb-media-dropzone.is-multi {
	gap: 18px;
}

.wsb-media-dropzone.is-multi [data-preview] {
	align-items: flex-start;
	justify-content: flex-start;
	min-height: 152px;
}

.wsb-media-dropzone.is-multi .wsb-thumb,
.wsb-media-dropzone.is-multi .wsb-thumb img {
	width: 86px;
	height: 86px;
	border-radius: 16px;
}

.wsb-media-dropzone.is-multi .wsb-thumb {
	overflow: hidden;
	box-shadow: 0 14px 28px rgba(15, 23, 42, 0.1);
}

.wsb-shop .wsb-shop-hero-slide-copy > * {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.45s ease, transform 0.55s ease;
}

.wsb-shop .wsb-shop-hero-slide.is-active .wsb-shop-hero-slide-copy > * {
	opacity: 1;
	transform: translateY(0);
}

.wsb-shop .wsb-shop-hero-slide.is-active .wsb-shop-hero-slide-copy > *:nth-child(1) {
	transition-delay: 0.08s;
}

.wsb-shop .wsb-shop-hero-slide.is-active .wsb-shop-hero-slide-copy > *:nth-child(2) {
	transition-delay: 0.18s;
}

.wsb-shop .wsb-shop-hero-slide.is-active .wsb-shop-hero-slide-copy > *:nth-child(3) {
	transition-delay: 0.28s;
}

.wsb-quick-view-gallery-frame {
	touch-action: pan-y;
}

.wsb-shop .wsb-shop-hero-slider {
	touch-action: pan-y;
}

@media (hover: none) {
	.wsb-shop .wsb-shop-hero-slide-copy {
		background: rgba(255, 255, 255, 0.12);
	}
}


/* Gallery manager + hero progress */
.wsb-gallery-manager {
	display: grid;
	gap: 16px;
}

.wsb-gallery-preview.is-managed {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(92px, 1fr));
	gap: 14px;
	padding: 14px;
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(120, 139, 173, 0.16);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.wsb-gallery-preview.is-managed.is-empty {
	display: none;
}

.wsb-gallery-empty {
	margin: 0;
	padding: 16px 18px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px dashed rgba(120, 139, 173, 0.24);
	color: var(--wsb-text-soft);
}

.wsb-thumb.is-gallery-item {
	position: relative;
	width: 100%;
	height: 96px;
	border-radius: 18px;
	overflow: hidden;
	cursor: grab;
	box-shadow: 0 18px 32px rgba(15, 23, 42, 0.12);
	background: #dfe9f7;
}

.wsb-thumb.is-gallery-item.is-dragging {
	opacity: 0.45;
	transform: scale(0.96);
}

.wsb-thumb.is-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wsb-thumb-badge,
.wsb-thumb-remove,
.wsb-thumb-handle {
	position: absolute;
	z-index: 2;
}

.wsb-thumb-badge {
	top: 8px;
	left: 8px;
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(7, 13, 26, 0.64);
	color: #fff;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.wsb-thumb-remove,
.wsb-thumb-handle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: none;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.9);
	color: var(--wsb-text);
	cursor: pointer;
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.14);
}

.wsb-thumb-remove {
	top: 8px;
	right: 8px;
	font-size: 1.1rem;
	line-height: 1;
}

.wsb-thumb-handle {
	right: 8px;
	bottom: 8px;
	font-size: 1rem;
}

.wsb-shop .wsb-shop-hero-progress {
	position: absolute;
	left: 50%;
	bottom: 52px;
	z-index: 3;
	width: min(220px, calc(100vw - 120px));
	height: 4px;
	border-radius: 999px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.24);
	transform: translateX(-50%);
}

.wsb-shop .wsb-shop-hero-progress-bar {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgba(255, 181, 74, 0.96), rgba(255, 255, 255, 0.98));
	transform: scaleX(0);
	transform-origin: left center;
}

.wsb-shop .wsb-shop-hero-progress-bar.is-animating {
	animation: wsbHeroProgress var(--wsb-progress-duration, 5600ms) linear forwards;
}

@keyframes wsbHeroProgress {
	from {
		transform: scaleX(0);
	}
	to {
		transform: scaleX(1);
	}
}

@media (max-width: 640px) {
	.wsb-gallery-preview.is-managed {
		grid-template-columns: repeat(auto-fill, minmax(76px, 1fr));
		gap: 12px;
		padding: 12px;
	}

	.wsb-thumb.is-gallery-item {
		height: 82px;
	}

	.wsb-shop .wsb-shop-hero-progress {
		bottom: 42px;
		width: min(170px, calc(100vw - 120px));
	}
}


/* Touch gallery controls and product lightbox */
body.wsb-modal-lock {
	overflow: hidden;
}

.wsb-thumb-move {
	position: absolute;
	left: 8px;
	bottom: 8px;
	z-index: 2;
	display: inline-flex;
	gap: 6px;
}

.wsb-thumb-move-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: none;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--wsb-text);
	cursor: pointer;
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.14);
}

.wsb-product-gallery-shell {
	display: grid;
	gap: 20px;
}

.wsb-product-gallery-viewer .wsb-quick-view-gallery-frame,
.wsb-product-lightbox-gallery .wsb-quick-view-gallery-frame {
	background: linear-gradient(135deg, rgba(232, 241, 255, 0.94), rgba(247, 250, 255, 0.98));
}

.wsb-product-gallery-viewer .wsb-quick-view-slide,
.wsb-product-gallery-viewer .wsb-quick-view-slide img {
	cursor: zoom-in;
}

.wsb-product-gallery-viewer .wsb-quick-view-slide img {
	height: clamp(320px, 52vw, 620px);
	object-fit: cover;
}

.wsb-product-lightbox {
	position: fixed;
	inset: 0;
	z-index: 85;
}

.wsb-product-lightbox-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 12, 26, 0.82);
	backdrop-filter: blur(10px);
}

.wsb-product-lightbox-dialog {
	position: relative;
	max-width: min(1240px, calc(100vw - 28px));
	max-height: calc(100vh - 28px);
	margin: 14px auto;
	padding: 22px;
	border-radius: 30px;
	background: rgba(8, 15, 35, 0.78);
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34);
	overflow: auto;
}

.wsb-product-lightbox-close {
	position: sticky;
	top: 0;
	margin-left: auto;
	margin-bottom: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: none;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
	backdrop-filter: blur(10px);
}

.wsb-product-lightbox-gallery .wsb-quick-view-slide img {
	height: min(74vh, 860px);
	object-fit: contain;
	background: rgba(4, 8, 20, 0.34);
}

.wsb-product-lightbox-gallery .wsb-quick-view-thumb {
	background: rgba(255, 255, 255, 0.1);
}

.wsb-product-lightbox-gallery .wsb-quick-view-thumb img {
	height: 72px;
}

@media (max-width: 640px) {
	.wsb-thumb-move,
	.wsb-thumb-handle {
		opacity: 1;
	}

	.wsb-product-lightbox-dialog {
		max-width: calc(100vw - 14px);
		max-height: calc(100vh - 14px);
		margin: 7px auto;
		padding: 14px;
		border-radius: 24px;
	}

	.wsb-product-lightbox-gallery .wsb-quick-view-slide img,
	.wsb-product-gallery-viewer .wsb-quick-view-slide img {
		height: 280px;
	}
}


/* Crop editor, gallery metadata, and zoom */
.wsb-gallery-item-meta {
	position: absolute;
	left: 8px;
	right: 8px;
	bottom: 46px;
	z-index: 2;
	display: grid;
	gap: 6px;
}

.wsb-gallery-item-meta input {
	width: 100%;
	padding: 8px 10px;
	border: none;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.14);
	font: inherit;
	font-size: 0.78rem;
}

.wsb-crop-modal {
	position: fixed;
	inset: 0;
	z-index: 95;
}

.wsb-crop-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 12, 26, 0.78);
	backdrop-filter: blur(10px);
}

.wsb-crop-dialog {
	position: relative;
	max-width: min(760px, calc(100vw - 28px));
	margin: 24px auto;
	padding: 24px;
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,249,255,0.96));
	box-shadow: 0 30px 70px rgba(7, 18, 41, 0.28);
}

.wsb-crop-header,
.wsb-crop-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.wsb-crop-header h3 {
	margin: 0;
	font-size: 1.35rem;
}

.wsb-crop-close {
	border: none;
	background: rgba(15, 23, 42, 0.06);
	width: 40px;
	height: 40px;
	border-radius: 999px;
	font-size: 1.8rem;
	line-height: 1;
	cursor: pointer;
}

.wsb-crop-stage {
	margin: 20px 0;
}

.wsb-crop-frame {
	position: relative;
	width: 100%;
	aspect-ratio: var(--wsb-crop-ratio, 1);
	border-radius: 24px;
	overflow: hidden;
	background: linear-gradient(135deg, rgba(226, 236, 250, 0.9), rgba(241, 246, 255, 0.9));
}

.wsb-crop-image {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translate(calc(-50% + var(--wsb-crop-x, 0%)), calc(-50% + var(--wsb-crop-y, 0%))) scale(var(--wsb-crop-zoom, 1));
	transform-origin: center center;
}

.wsb-crop-controls {
	display: grid;
	gap: 12px;
	margin-bottom: 18px;
}

.wsb-crop-controls label {
	display: grid;
	gap: 8px;
	font-weight: 700;
	color: var(--wsb-text);
}

.wsb-crop-controls input[type="range"] {
	width: 100%;
}

.wsb-gallery-caption {
	margin: 0;
	padding: 10px 14px 2px;
	color: var(--wsb-text-soft);
	font-size: 0.94rem;
	line-height: 1.6;
}

.wsb-product-zoom-surface {
	overflow: hidden;
}

.wsb-product-zoom-image {
	transition: transform 0.22s ease;
	transform-origin: var(--wsb-zoom-origin-x, 50%) var(--wsb-zoom-origin-y, 50%);
}

@media (hover: hover) and (pointer: fine) {
	.wsb-product-zoom-surface:hover .wsb-product-zoom-image {
		transform: scale(1.14);
	}
}

@media (max-width: 640px) {
	.wsb-crop-dialog {
		max-width: calc(100vw - 14px);
		margin: 7px auto;
		padding: 16px;
		border-radius: 24px;
	}

	.wsb-gallery-item-meta {
		bottom: 44px;
	}

	.wsb-gallery-item-meta input {
		font-size: 0.74rem;
		padding: 7px 9px;
	}
}


/* Media action helpers */
.wsb-media-inline-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-top: 10px;
}

.wsb-media-inline-actions .wsb-link {
	padding: 10px 0;
}

.wsb-crop-dialog {
	max-height: calc(100vh - 48px);
	overflow: auto;
	display: grid;
	gap: 18px;
}

.wsb-crop-stage {
	margin: 0;
}


/* Advanced crop interactions */
.wsb-crop-hint {
	margin: -4px 0 0;
	color: var(--wsb-text-soft);
	line-height: 1.6;
}

.wsb-crop-frame {
	cursor: grab;
	touch-action: none;
}

.wsb-crop-frame.is-dragging {
	cursor: grabbing;
}

.wsb-crop-grid,
.wsb-crop-focus {
	position: absolute;
	pointer-events: none;
}

.wsb-crop-grid {
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,0.26) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,0.26) 1px, transparent 1px);
	background-size: 33.333% 33.333%;
	border: 1px solid rgba(255,255,255,0.38);
	border-radius: inherit;
}

.wsb-crop-focus {
	left: var(--wsb-crop-focus-x, 50%);
	top: var(--wsb-crop-focus-y, 50%);
	width: 26px;
	height: 26px;
	border: 2px solid rgba(255,255,255,0.92);
	border-radius: 999px;
	box-shadow: 0 0 0 6px rgba(19, 103, 255, 0.18);
	transform: translate(-50%, -50%);
}


/* Rich crop workspace */
.wsb-crop-hints {
	display: grid;
	gap: 4px;
}

.wsb-crop-hint.is-soft {
	font-size: 0.92rem;
	opacity: 0.82;
}

.wsb-crop-stage {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(220px, 0.8fr);
	gap: 18px;
	align-items: start;
}

.wsb-crop-editor {
	min-width: 0;
}

.wsb-crop-frame {
	position: relative;
	cursor: grab;
	touch-action: none;
	user-select: none;
}

.wsb-crop-frame.is-resizing {
	cursor: nwse-resize;
}

.wsb-crop-handle {
	position: absolute;
	z-index: 3;
	width: 18px;
	height: 18px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 999px;
	background: var(--wsb-primary);
	box-shadow: 0 10px 18px rgba(7, 18, 41, 0.24);
	cursor: nwse-resize;
}

.wsb-crop-handle.is-top-left {
	top: 10px;
	left: 10px;
}

.wsb-crop-handle.is-top-right {
	top: 10px;
	right: 10px;
}

.wsb-crop-handle.is-bottom-left {
	left: 10px;
	bottom: 10px;
}

.wsb-crop-handle.is-bottom-right {
	right: 10px;
	bottom: 10px;
}

.wsb-crop-preview-panel {
	display: grid;
	gap: 14px;
}

.wsb-crop-preview-card {
	display: grid;
	gap: 10px;
	padding: 14px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.74);
	border: 1px solid rgba(120, 139, 173, 0.18);
}

.wsb-crop-preview-card span {
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wsb-text-soft);
}

.wsb-crop-preview {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	background: linear-gradient(135deg, rgba(226, 236, 250, 0.9), rgba(241, 246, 255, 0.9));
}

.wsb-crop-preview.is-before {
	aspect-ratio: 1;
}

.wsb-crop-preview.is-after {
	aspect-ratio: var(--wsb-crop-ratio, 1);
}

.wsb-crop-preview img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.wsb-crop-preview-cropped {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translate(calc(-50% + var(--wsb-crop-x, 0%)), calc(-50% + var(--wsb-crop-y, 0%))) scale(var(--wsb-crop-zoom, 1));
	transform-origin: center center;
}

@media (max-width: 820px) {
	.wsb-crop-stage {
		grid-template-columns: 1fr;
	}

	.wsb-crop-preview-panel {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.wsb-crop-preview-panel {
		grid-template-columns: 1fr;
	}

	.wsb-crop-handle {
		width: 20px;
		height: 20px;
	}
}


/* Crop editor refinements */
.wsb-crop-toolbar {
	display: grid;
	gap: 12px;
	margin-bottom: 14px;
}

.wsb-crop-toolbar-label {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wsb-text-soft);
}

.wsb-crop-presets,
.wsb-crop-transforms {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wsb-crop-preset {
	appearance: none;
	border: 1px solid rgba(120, 139, 173, 0.28);
	background: rgba(255, 255, 255, 0.88);
	color: var(--wsb-text);
	border-radius: 999px;
	padding: 9px 14px;
	font-weight: 700;
	cursor: pointer;
	transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.wsb-crop-preset:hover,
.wsb-crop-preset:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(19, 103, 255, 0.35);
	box-shadow: 0 12px 24px rgba(19, 103, 255, 0.14);
	outline: none;
}

.wsb-crop-preset.is-active {
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.15), rgba(19, 103, 255, 0.08));
	border-color: rgba(19, 103, 255, 0.48);
	color: var(--wsb-primary);
}

.wsb-crop-frame::before {
	content: '';
	position: absolute;
	left: var(--wsb-crop-selection-left, 0%);
	top: var(--wsb-crop-selection-top, 0%);
	width: var(--wsb-crop-selection-size, 100%);
	height: var(--wsb-crop-selection-size, 100%);
	border: 2px solid rgba(255, 255, 255, 0.95);
	border-radius: 24px;
	box-shadow: 0 0 0 999px rgba(7, 18, 41, 0.28);
	pointer-events: none;
	z-index: 1;
}

.wsb-crop-grid {
	left: var(--wsb-crop-selection-left, 0%);
	top: var(--wsb-crop-selection-top, 0%);
	width: var(--wsb-crop-selection-size, 100%);
	height: var(--wsb-crop-selection-size, 100%);
	border-radius: 24px;
	z-index: 2;
}

.wsb-crop-focus {
	left: var(--wsb-crop-focus-x, 50%);
	top: var(--wsb-crop-focus-y, 50%);
	z-index: 2;
}

.wsb-crop-image {
	transform: translate(calc(-50% + var(--wsb-crop-x, 0%)), calc(-50% + var(--wsb-crop-y, 0%))) rotate(var(--wsb-crop-rotation, 0deg)) scale(calc(var(--wsb-crop-scale-x, 1) * var(--wsb-crop-zoom, 1)), calc(var(--wsb-crop-scale-y, 1) * var(--wsb-crop-zoom, 1)));
}

.wsb-crop-preview-cropped {
	transform: translate(calc(-50% + var(--wsb-crop-x, 0%)), calc(-50% + var(--wsb-crop-y, 0%))) rotate(var(--wsb-crop-rotation, 0deg)) scale(calc(var(--wsb-crop-scale-x, 1) * var(--wsb-crop-zoom, 1)), calc(var(--wsb-crop-scale-y, 1) * var(--wsb-crop-zoom, 1)));
}

.wsb-crop-handle {
	z-index: 3;
}

.wsb-crop-handle.is-left,
.wsb-crop-handle.is-right {
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 42px;
	border-radius: 999px;
	cursor: ew-resize;
}

.wsb-crop-handle.is-left {
	left: 10px;
}

.wsb-crop-handle.is-right {
	right: 10px;
}

.wsb-crop-handle.is-top,
.wsb-crop-handle.is-bottom {
	left: 50%;
	transform: translateX(-50%);
	width: 42px;
	height: 18px;
	border-radius: 999px;
	cursor: ns-resize;
}

.wsb-crop-handle.is-top {
	top: 10px;
}

.wsb-crop-handle.is-bottom {
	bottom: 10px;
}

@media (max-width: 640px) {
	.wsb-crop-transforms {
		gap: 8px;
	}

	.wsb-crop-transforms .wsb-btn,
	.wsb-crop-preset {
		width: 100%;
		justify-content: center;
	}

	.wsb-crop-handle.is-left,
	.wsb-crop-handle.is-right {
		height: 52px;
	}

	.wsb-crop-handle.is-top,
	.wsb-crop-handle.is-bottom {
		width: 52px;
	}
}


/* Crop handle positioning */
.wsb-crop-handle.is-top-left {
	left: calc(var(--wsb-crop-selection-left, 0%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-top-right {
	left: calc(var(--wsb-crop-selection-left, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-bottom-left {
	left: calc(var(--wsb-crop-selection-left, 0%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-bottom-right {
	left: calc(var(--wsb-crop-selection-left, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-left {
	left: calc(var(--wsb-crop-selection-left, 0%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-right {
	left: calc(var(--wsb-crop-selection-left, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-top {
	left: calc(var(--wsb-crop-selection-left, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	top: calc(var(--wsb-crop-selection-top, 0%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-bottom {
	left: calc(var(--wsb-crop-selection-left, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	top: calc(var(--wsb-crop-selection-top, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	right: auto;
	bottom: auto;
}


/* Final Slider Cleanup */
.wsb-shop .wsb-shop-header.has-slider {
	min-height: clamp(340px, 54svh, 500px);
	border-radius: 0 0 36px 36px;
}

.wsb-shop .wsb-shop-hero-slide-overlay {
	background: linear-gradient(180deg, rgba(5, 12, 26, 0.34) 0%, rgba(7, 13, 26, 0.44) 42%, rgba(7, 13, 26, 0.76) 100%);
}

.wsb-shop .wsb-shop-hero-slide-inner,
.wsb-shop .wsb-shop-hero-controls {
	width: min(1120px, calc(100% - 40px));
}

.wsb-shop .wsb-shop-hero-slide-inner {
	justify-content: center;
	align-items: flex-end;
	padding: clamp(22px, 4vw, 34px) 0 clamp(78px, 9vw, 108px);
}

.wsb-shop .wsb-shop-hero-slide-copy {
	max-width: min(560px, 100%);
	margin: 0 auto;
	justify-items: center;
	text-align: center;
	padding: 18px 22px;
	border-radius: 26px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.08));
	box-shadow: 0 18px 36px rgba(6, 12, 26, 0.18);
}

.wsb-shop .wsb-shop-hero-slide-copy .wsb-eyebrow {
	margin: 0 auto;
}

.wsb-shop .wsb-shop-hero-slide-copy p {
	max-width: 44ch;
}

.wsb-shop .wsb-shop-hero-controls {
	bottom: 20px;
	gap: 14px;
}

.wsb-shop .wsb-shop-hero-controls-left {
	padding: 10px 12px;
	border-radius: 999px;
	background: rgba(7, 13, 26, 0.28);
	backdrop-filter: blur(14px);
}

.wsb-shop .wsb-shop-hero-controls-right {
	padding: 6px;
	border-radius: 999px;
	background: rgba(7, 13, 26, 0.22);
	backdrop-filter: blur(14px);
}

.wsb-shop .wsb-shop-hero-progress {
	position: static;
	width: clamp(120px, 16vw, 180px);
	transform: none;
}

@media (max-width: 980px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: 360px;
	}

	.wsb-shop .wsb-shop-hero-slide-inner,
	.wsb-shop .wsb-shop-hero-controls {
		width: min(100%, calc(100% - 28px));
	}

	.wsb-shop .wsb-shop-hero-slide-copy {
		max-width: min(500px, 100%);
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-header.has-slider {
		min-height: 300px;
		border-radius: 0 0 24px 24px;
	}

	.wsb-shop .wsb-shop-hero-slide-inner,
	.wsb-shop .wsb-shop-hero-controls {
		width: min(100%, calc(100% - 20px));
	}

	.wsb-shop .wsb-shop-hero-slide-inner {
		padding: 16px 0 70px;
	}

	.wsb-shop .wsb-shop-hero-slide-copy {
		padding: 14px 16px;
		border-radius: 20px;
	}

	.wsb-shop .wsb-shop-hero-controls {
		bottom: 12px;
		gap: 10px;
	}

	.wsb-shop .wsb-shop-hero-controls-left {
		padding: 8px 10px;
	}

	.wsb-shop .wsb-shop-hero-controls-right {
		padding: 4px;
	}

	.wsb-shop .wsb-shop-hero-progress {
		width: 84px;
	}
}

/* Final Crop Cleanup */
.wsb-crop-dialog {
	max-width: min(920px, calc(100vw - 24px));
}

.wsb-crop-stage {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(240px, 0.85fr);
	gap: 18px;
	align-items: start;
}

.wsb-crop-frame {
	position: relative;
	isolation: isolate;
	cursor: grab;
	touch-action: none;
	user-select: none;
	border-radius: 24px;
	background: linear-gradient(135deg, rgba(226, 236, 250, 0.9), rgba(241, 246, 255, 0.9));
}

.wsb-crop-frame::before {
	content: '';
	position: absolute;
	left: var(--wsb-crop-selection-left, 0%);
	top: var(--wsb-crop-selection-top, 0%);
	width: var(--wsb-crop-selection-size, 100%);
	height: var(--wsb-crop-selection-size, 100%);
	border: 2px solid rgba(255, 255, 255, 0.96);
	border-radius: 24px;
	box-shadow: 0 0 0 999px rgba(7, 18, 41, 0.3);
	pointer-events: none;
	z-index: 1;
}

.wsb-crop-grid {
	position: absolute;
	left: var(--wsb-crop-selection-left, 0%);
	top: var(--wsb-crop-selection-top, 0%);
	width: var(--wsb-crop-selection-size, 100%);
	height: var(--wsb-crop-selection-size, 100%);
	background-image:
		linear-gradient(rgba(255,255,255,0.26) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,0.26) 1px, transparent 1px);
	background-size: 33.333% 33.333%;
	border: 1px solid rgba(255,255,255,0.38);
	border-radius: 24px;
	pointer-events: none;
	z-index: 2;
}

.wsb-crop-focus {
	z-index: 2;
}

.wsb-crop-image,
.wsb-crop-preview-cropped {
	transform: translate(calc(-50% + var(--wsb-crop-x, 0%)), calc(-50% + var(--wsb-crop-y, 0%))) rotate(var(--wsb-crop-rotation, 0deg)) scale(calc(var(--wsb-crop-scale-x, 1) * var(--wsb-crop-zoom, 1)), calc(var(--wsb-crop-scale-y, 1) * var(--wsb-crop-zoom, 1)));
	transform-origin: center center;
}

.wsb-crop-handle {
	position: absolute;
	z-index: 3;
	background: var(--wsb-primary);
	border: 2px solid #fff;
	box-shadow: 0 10px 18px rgba(7, 18, 41, 0.24);
}

.wsb-crop-handle.is-top-left,
.wsb-crop-handle.is-top-right,
.wsb-crop-handle.is-bottom-left,
.wsb-crop-handle.is-bottom-right {
	width: 18px;
	height: 18px;
	border-radius: 999px;
	cursor: nwse-resize;
}

.wsb-crop-handle.is-top-left {
	left: calc(var(--wsb-crop-selection-left, 0%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-top-right {
	left: calc(var(--wsb-crop-selection-left, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-bottom-left {
	left: calc(var(--wsb-crop-selection-left, 0%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-bottom-right {
	left: calc(var(--wsb-crop-selection-left, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-left,
.wsb-crop-handle.is-right {
	width: 18px;
	height: 42px;
	border-radius: 999px;
	cursor: ew-resize;
}

.wsb-crop-handle.is-left {
	left: calc(var(--wsb-crop-selection-left, 0%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	transform: translateY(-50%);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-right {
	left: calc(var(--wsb-crop-selection-left, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	top: calc(var(--wsb-crop-selection-top, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	transform: translateY(-50%);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-top,
.wsb-crop-handle.is-bottom {
	width: 42px;
	height: 18px;
	border-radius: 999px;
	cursor: ns-resize;
}

.wsb-crop-handle.is-top {
	left: calc(var(--wsb-crop-selection-left, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	top: calc(var(--wsb-crop-selection-top, 0%) - 9px);
	transform: translateX(-50%);
	right: auto;
	bottom: auto;
}

.wsb-crop-handle.is-bottom {
	left: calc(var(--wsb-crop-selection-left, 0%) + (var(--wsb-crop-selection-size, 100%) / 2));
	top: calc(var(--wsb-crop-selection-top, 0%) + var(--wsb-crop-selection-size, 100%) - 9px);
	transform: translateX(-50%);
	right: auto;
	bottom: auto;
}

@media (max-width: 820px) {
	.wsb-crop-stage {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.wsb-crop-dialog {
		max-width: calc(100vw - 14px);
	}

	.wsb-crop-handle.is-left,
	.wsb-crop-handle.is-right {
		height: 52px;
	}

	.wsb-crop-handle.is-top,
	.wsb-crop-handle.is-bottom {
		width: 52px;
	}
}


/* Crop modal visibility hardening */
.wsb-crop-modal[hidden] {
	display: none !important;
}

.wsb-crop-modal:not([hidden]) {
	display: grid;
	place-items: center;
}

.wsb-crop-modal {
	padding: 12px;
}


/* Banner slider manager */
.wsb-banner-slider-builder {
	display: grid;
	gap: 18px;
}

.wsb-banner-slider-toolbar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.wsb-banner-slide-list {
	display: grid;
	gap: 16px;
}

.wsb-banner-slide-item {
	display: grid;
	gap: 14px;
	padding: 18px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid rgba(120, 139, 173, 0.16);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.wsb-banner-slide-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}

.wsb-banner-slide-title {
	font-size: 1rem;
	letter-spacing: -0.02em;
	color: var(--wsb-text);
}

.wsb-banner-slide-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
}

.wsb-banner-slide-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.wsb-banner-image-field {
	display: grid;
	gap: 8px;
}

.wsb-banner-image-dropzone {
	position: relative;
	display: grid;
	gap: 12px;
	padding: 16px;
	border-radius: 22px;
	border: 1px dashed rgba(59, 130, 246, 0.28);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(243, 248, 255, 0.92));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 14px 28px rgba(15, 23, 42, 0.05);
	cursor: pointer;
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.wsb-banner-image-dropzone:hover,
.wsb-banner-image-dropzone.is-dragover {
	transform: translateY(-1px);
	border-color: rgba(19, 103, 255, 0.4);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(232, 243, 255, 0.98));
}

.wsb-banner-image-dropzone .wsb-media-input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.wsb-banner-image-dropzone .wsb-media-preview.is-banner {
	min-height: 168px;
}

.wsb-banner-image-dropzone .wsb-media-preview.is-banner.is-mobile {
	min-height: 220px;
}

.wsb-banner-image-dropzone .wsb-media-preview img {
	max-height: none;
}

.wsb-banner-image-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 10px;
	color: rgba(71, 85, 105, 0.9);
	font-size: 0.8rem;
}

.wsb-banner-image-meta .wsb-link {
	white-space: nowrap;
}

.wsb-shop .wsb-shop-hero-slide.has-image {
	background: #0b1220;
}

.wsb-shop .wsb-shop-hero-media,
.wsb-shop .wsb-shop-hero-media picture,
.wsb-shop .wsb-shop-hero-media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.wsb-shop .wsb-shop-hero-media img {
	display: block;
	object-fit: cover;
}

@media (max-width: 900px) {
	.wsb-banner-slide-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.wsb-banner-slide-item {
		padding: 14px;
		border-radius: 18px;
	}

	.wsb-banner-image-meta {
		flex-direction: column;
		align-items: flex-start;
	}

	.wsb-banner-slide-actions {
		align-items: stretch;
	}

	.wsb-banner-slide-actions .wsb-btn,
	.wsb-banner-slide-actions .wsb-link {
		width: 100%;
		justify-content: center;
	}
}


/* Profile and storefront polish */
.wsb-profile-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wsb-profile-link,
.wsb-shop-meta-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid rgba(120, 139, 173, 0.18);
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.06);
	color: var(--wsb-text);
	font-size: 0.92rem;
	font-weight: 700;
	text-decoration: none;
}

.wsb-profile-link:hover,
.wsb-shop-meta-pill.is-link:hover {
	transform: translateY(-1px);
	box-shadow: 0 14px 24px rgba(15, 23, 42, 0.1);
}

.wsb-map-embed {
	overflow: hidden;
	border-radius: 20px;
	border: 1px solid rgba(120, 139, 173, 0.18);
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 18px 30px rgba(15, 23, 42, 0.08);
}

.wsb-map-embed iframe {
	display: block;
	width: 100%;
	min-height: 240px;
	border: 0;
}

.wsb-shop .wsb-shop-identity-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 6px;
}

.wsb-shop .wsb-shop-social-row {
	margin-top: 16px;
}

.wsb-shop .wsb-shop-map-card {
	display: grid;
	gap: 14px;
	padding: 16px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.74);
	border: 1px solid rgba(120, 139, 173, 0.16);
	box-shadow: 0 16px 28px rgba(15, 23, 42, 0.08);
}

.wsb-shop .wsb-shop-map-card h2 {
	margin: 0;
	font-size: 1.05rem;
	letter-spacing: -0.03em;
}

.wsb-shop .wsb-shop-hero-counter,
.wsb-shop .wsb-shop-hero-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 14px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(14px);
	color: #fff;
	font-size: 0.9rem;
	font-weight: 700;
}

.wsb-shop .wsb-shop-hero-toggle {
	cursor: pointer;
	transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

.wsb-shop .wsb-shop-hero-toggle:hover {
	transform: translateY(-1px);
	background: rgba(255, 255, 255, 0.18);
	border-color: rgba(255, 255, 255, 0.32);
}

.wsb-product-header-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.wsb-product-back-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid rgba(120, 139, 173, 0.2);
	color: var(--wsb-text);
	font-weight: 700;
	text-decoration: none;
}

.wsb-product-builder-pill {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	max-width: 460px;
	padding: 12px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(120, 139, 173, 0.18);
	box-shadow: 0 16px 28px rgba(15, 23, 42, 0.08);
}

.wsb-product-builder-pill img,
.wsb-builder-card-head img {
	width: 54px;
	height: 54px;
	border-radius: 16px;
	object-fit: cover;
	box-shadow: 0 10px 18px rgba(15, 23, 42, 0.12);
}

.wsb-product-builder-pill strong,
.wsb-builder-card-head strong {
	display: block;
	font-size: 1rem;
	line-height: 1.15;
}

.wsb-product-builder-pill span,
.wsb-builder-card-head p,
.wsb-builder-meta-line {
	color: var(--wsb-text-soft);
	font-size: 0.92rem;
	line-height: 1.5;
}

.wsb-builder-card {
	gap: 16px;
}

.wsb-builder-card-head {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
}

.wsb-product-gallery-shell .wsb-section-header {
	align-items: center;
}

.wsb-product-gallery-viewer .wsb-quick-view-gallery-frame {
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(240,246,255,0.96));
	box-shadow: 0 24px 44px rgba(15, 23, 42, 0.12);
}

.wsb-product-gallery-viewer .wsb-quick-view-slide {
	padding: 18px;
}

.wsb-product-gallery-viewer .wsb-quick-view-slide img {
	border-radius: 22px;
	background: #fff;
}

.wsb-product .wsb-custom-fields li {
	display: grid;
	grid-template-columns: minmax(90px, auto) 1fr;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid rgba(120, 139, 173, 0.12);
}

.wsb-product .wsb-custom-fields li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

@media (max-width: 900px) {
	.wsb-shop .wsb-shop-social-row .wsb-profile-links {
		justify-content: flex-start;
	}

	.wsb-product-header-top {
		align-items: flex-start;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-hero-controls-left {
		gap: 8px;
	}

	.wsb-shop .wsb-shop-hero-counter {
		min-width: 74px;
		padding: 0 10px;
	}

	.wsb-shop .wsb-shop-hero-toggle {
		padding: 0 12px;
	}

	.wsb-shop .wsb-shop-identity-meta,
	.wsb-profile-links {
		width: 100%;
	}

	.wsb-profile-link,
	.wsb-shop-meta-pill {
		width: 100%;
	}

	.wsb-product-builder-pill,
	.wsb-builder-card-head {
		grid-template-columns: 46px minmax(0, 1fr);
	}

	.wsb-product-builder-pill img,
	.wsb-builder-card-head img {
		width: 46px;
		height: 46px;
		border-radius: 14px;
	}

	.wsb-map-embed iframe {
		min-height: 200px;
	}
}


/* Builder cover and social icons */
.wsb-screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.wsb-profile-links {
	align-items: center;
}

.wsb-profile-link {
	position: relative;
	width: 44px;
	height: 44px;
	padding: 0;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.92);
}

.wsb-profile-link-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
}

.wsb-profile-link-icon svg {
	width: 100%;
	height: 100%;
}

.wsb-builder-cover {
	position: relative;
	overflow: hidden;
	border-radius: 30px;
	padding: 0;
	background: linear-gradient(135deg, #0b1220 0%, #12386d 48%, #2563eb 100%);
	box-shadow: 0 28px 54px rgba(8, 15, 35, 0.16);
}

.wsb-builder-cover::before {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--wsb-builder-cover, none) center/cover no-repeat;
	opacity: 0.44;
}

.wsb-builder-cover::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(115deg, rgba(6, 12, 26, 0.88) 0%, rgba(7, 13, 26, 0.64) 44%, rgba(7, 13, 26, 0.2) 100%);
}

.wsb-builder-cover-shell {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.9fr);
	gap: 24px;
	padding: 28px;
	align-items: end;
}

.wsb-builder-cover-copy {
	display: grid;
	gap: 14px;
	color: #fff;
}

.wsb-builder-cover-copy h2 {
	margin: 0;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.02;
	letter-spacing: -0.05em;
}

.wsb-builder-cover-copy p {
	margin: 0;
	max-width: 48ch;
	color: rgba(255, 255, 255, 0.82);
	font-size: 1rem;
	line-height: 1.7;
}

.wsb-builder-cover-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.wsb-builder-cover-actions .wsb-contact {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.wsb-builder-cover-card {
	display: grid;
	gap: 16px;
	padding: 18px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(255,255,255,0.2), rgba(255,255,255,0.12));
	backdrop-filter: blur(16px);
	border: 1px solid rgba(255,255,255,0.16);
	box-shadow: 0 18px 36px rgba(6, 12, 26, 0.22);
	color: #fff;
}

.wsb-builder-cover-head {
	display: grid;
	grid-template-columns: 62px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
}

.wsb-builder-cover-head img {
	width: 62px;
	height: 62px;
	border-radius: 18px;
	object-fit: cover;
	box-shadow: 0 12px 22px rgba(6, 12, 26, 0.24);
}

.wsb-builder-cover-head strong {
	display: block;
	font-size: 1.08rem;
	line-height: 1.15;
}

.wsb-builder-cover-head span {
	color: rgba(255,255,255,0.76);
	font-size: 0.92rem;
}

.wsb-builder-cover-about p {
	margin: 0;
	color: rgba(255,255,255,0.86);
	line-height: 1.7;
}

.wsb-builder-cover-social .wsb-profile-link {
	background: rgba(255,255,255,0.16);
	border-color: rgba(255,255,255,0.16);
	color: #fff;
}

.wsb-builder-cover-social .wsb-profile-link:hover {
	background: rgba(255,255,255,0.24);
}

@media (max-width: 900px) {
	.wsb-builder-cover-shell {
		grid-template-columns: 1fr;
		align-items: stretch;
	}
}

@media (max-width: 640px) {
	.wsb-builder-cover-shell {
		padding: 20px;
	}

	.wsb-builder-cover-actions,
	.wsb-builder-cover-actions .wsb-contact {
		align-items: stretch;
	}

	.wsb-builder-cover-actions .wsb-btn,
	.wsb-builder-cover-actions .wsb-contact .wsb-btn {
		width: 100%;
	}
}


/* Product categories and voice search */
.wsb-category-field {
	display: grid;
	gap: 12px;
}

.wsb-category-toolbar {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: nowrap;
}

.wsb-category-toolbar .wsb-inline-meta {
	margin: 0;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wsb-category-toolbar [data-category-open] {
	flex: 0 0 auto;
}

.wsb-category-toolbar [data-category-summary] {
	flex: 1 1 auto;
}

.wsb-category-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	padding: 0 10px;
	border-radius: 999px;
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.12), rgba(19, 103, 255, 0.2));
	color: var(--wsb-primary-deep);
	font-size: 0.86rem;
	font-weight: 800;
	flex: 0 0 auto;
}

.wsb-category-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	max-height: min(52vh, 340px);
	overflow-y: auto;
	padding-right: 4px;
}

.wsb-category-option {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid rgba(120, 139, 173, 0.18);
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
	cursor: pointer;
}

.wsb-category-option input {
	margin: 0;
}

.wsb-category-popup[hidden] {
	display: none !important;
}

.wsb-category-popup {
	position: fixed;
	inset: 0;
	z-index: 120;
	display: grid;
	place-items: center;
	padding: 20px;
	background: rgba(15, 23, 42, 0.38);
	backdrop-filter: blur(10px);
}

.wsb-category-popup-card {
	width: min(720px, 100%);
	max-height: min(78vh, 680px);
	display: grid;
	gap: 16px;
	padding: 18px;
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,249,255,0.97));
	box-shadow: 0 28px 60px rgba(15, 23, 42, 0.22);
	overflow: hidden;
}

.wsb-category-popup-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.wsb-category-popup-head-copy {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.wsb-category-popup-head strong {
	font-size: 1rem;
	font-weight: 800;
	color: var(--wsb-text);
}

.wsb-category-popup-search input {
	width: 100%;
}

body.wsb-modal-open {
	overflow: hidden;
}

@media (max-width: 640px) {
	.wsb-category-toolbar {
		gap: 8px;
	}

	.wsb-category-toolbar .wsb-inline-meta {
		font-size: 0.8rem;
	}

	.wsb-category-popup {
		padding: 12px;
	}

	.wsb-category-popup-card {
		padding: 14px;
		border-radius: 18px;
	}
}

.wsb-sub-label {
	font-size: 0.92rem;
	font-weight: 700;
	color: var(--wsb-text-soft);
}

.wsb-product-search-panel {
	padding: 20px;
	border-radius: 26px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,248,255,0.96));
	box-shadow: 0 20px 38px rgba(15, 23, 42, 0.1);
}

.wsb-product-search-form {
	display: grid;
	gap: 14px;
}

.wsb-product-search-main {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	gap: 12px;
}

.wsb-product-search-main input,
.wsb-product-search-filters select {
	width: 100%;
	padding: 14px 16px;
	border-radius: 16px;
	border: 1px solid rgba(120, 139, 173, 0.2);
	background: rgba(255,255,255,0.92);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
}

.wsb-voice-search-btn.is-listening {
	background: linear-gradient(135deg, #ef4444, #f97316);
	color: #fff;
	border-color: transparent;
}

.wsb-product-category-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

@media (max-width: 640px) {
	.wsb-product-search-main {
		grid-template-columns: 1fr;
	}

	.wsb-product-search-main .wsb-btn {
		width: 100%;
	}
}


/* Category creator and shop top search */
.wsb-category-create-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
}

.wsb-category-pending {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wsb-category-pending-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 999px;
	border: 1px solid rgba(120, 139, 173, 0.2);
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.08), rgba(255, 181, 74, 0.14));
	color: var(--wsb-text);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.wsb-category-pending-item strong {
	font-size: 1rem;
	line-height: 1;
}

.wsb-shop-top-search {
	position: relative;
	z-index: 22;
	width: calc(100% - 24px);
	max-width: 1600px;
	margin: 0 auto 16px;
	padding: 14px 16px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(255,255,255,0.94), rgba(244,248,255,0.92));
	backdrop-filter: blur(18px) saturate(140%);
	-webkit-backdrop-filter: blur(18px) saturate(140%);
	border: 1px solid rgba(120, 139, 173, 0.14);
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08);
	overflow: hidden;
	transition: box-shadow 0.22s ease, border-color 0.22s ease, transform 0.22s ease;
}

.wsb-shop-top-search.is-floating {
	position: fixed;
	top: 14px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 48;
	box-shadow: 0 20px 40px rgba(15, 23, 42, 0.14);
	border-color: rgba(19, 103, 255, 0.16);
}

.wsb-shop-top-search-placeholder {
	height: 0;
}

.wsb-shop-top-search::before {
	content: '';
	position: absolute;
	inset: auto auto -26px -26px;
	width: 120px;
	height: 120px;
	border-radius: 999px;
	background: radial-gradient(circle, rgba(255,181,74,0.18), rgba(255,181,74,0));
	pointer-events: none;
}

.wsb-shop-top-search-form {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	align-items: center;
	justify-items: center;
	max-width: 1320px;
	margin: 0 auto;
}

.wsb-shop-top-search-copy {
	display: grid;
	gap: 4px;
	justify-items: center;
	text-align: center;
}

.wsb-shop-top-search-copy .wsb-eyebrow {
	margin-bottom: 0;
}

.wsb-shop-top-search-copy strong {
	font-size: clamp(1rem, 1.7vw, 1.18rem);
	line-height: 1.15;
	letter-spacing: -0.03em;
}

.wsb-shop-top-search-controls {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr) auto minmax(170px, 0.7fr) auto;
	gap: 10px;
	width: min(1180px, 100%);
	margin: 0 auto;
	padding: 8px;
	border-radius: 20px;
	background: rgba(255,255,255,0.88);
	border: 1px solid rgba(120, 139, 173, 0.14);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 12px 26px rgba(15, 23, 42, 0.05);
}

.wsb-shop-search-select-wrap select {
	width: 100%;
	min-height: 48px;
	padding: 0 14px;
	border-radius: 14px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	background: rgba(248,250,255,0.98);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.86);
}

.wsb-shop-search-input-wrap {
	position: relative;
}

.wsb-shop-search-submit {
	position: absolute;
	right: 6px;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: none;
	border-radius: 12px;
	background: linear-gradient(135deg, var(--wsb-primary), var(--wsb-primary-deep));
	color: #fff;
	box-shadow: 0 12px 20px rgba(19, 103, 255, 0.18);
	transform: translateY(-50%);
	cursor: pointer;
}

.wsb-shop-search-submit .wsb-btn-icon {
	width: 16px;
	height: 16px;
}

.wsb-shop-search-input-icon {
	position: absolute;
	left: 14px;
	top: 50%;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	color: rgba(22, 32, 51, 0.5);
	pointer-events: none;
}

.wsb-shop-search-input-icon svg {
	width: 100%;
	height: 100%;
}

.wsb-shop-top-search-controls input {
	width: 100%;
	min-height: 48px;
	padding: 0 48px 0 42px;
	border-radius: 14px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	background: rgba(248,250,255,0.98);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.86);
}

.wsb-shop-top-search-controls input:focus,
.wsb-shop-search-select-wrap select:focus {
	outline: none;
	border-color: rgba(19, 103, 255, 0.42);
	box-shadow: 0 0 0 4px rgba(19, 103, 255, 0.1);
}

.wsb-shop-top-search-controls .wsb-btn {
	min-height: 48px;
	padding: 0 16px;
	border-radius: 14px;
	white-space: nowrap;
}

.wsb-shop-top-search-controls .wsb-btn-primary {
	box-shadow: 0 14px 28px rgba(19, 103, 255, 0.2);
}

.wsb-voice-search-btn {
	padding: 0;
	width: 48px;
	min-width: 48px;
}

.wsb-voice-search-btn .wsb-btn-icon {
	width: 18px;
	height: 18px;
	padding: 0;
	background: transparent;
}

.wsb-voice-search-btn .wsb-btn-icon svg {
	width: 100%;
	height: 100%;
}

@media (max-width: 900px) {
	.wsb-shop-top-search {
		width: calc(100% - 20px);
	}

	.wsb-shop-top-search-controls {
		grid-template-columns: 44px minmax(0, 1fr) auto minmax(150px, 0.8fr) auto
	}
}

@media (max-width: 640px) {
	.wsb-category-create-row,
	.wsb-shop-top-search-controls {
		grid-template-columns: 1fr;
	}

	.wsb-shop-top-search {
		width: calc(100% - 16px);
		padding: 14px;
	}

	.wsb-shop-top-search.is-floating {
		top: 10px;
	}

	.wsb-shop-top-search-controls .wsb-btn,
	.wsb-category-create-row .wsb-btn {
		width: 100%;
	}

	.wsb-voice-search-btn {
		width: 100%;
	}
}


/* Product category chips */
.wsb-category-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 12px;
}

.wsb-category-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--wsb-category-bg, rgba(19, 103, 255, 0.12));
	color: var(--wsb-category-color, var(--wsb-primary-deep));
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.05);
}

.wsb-category-chip-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
}

.wsb-category-chip-icon svg {
	width: 100%;
	height: 100%;
}

.wsb-shop .wsb-card .wsb-category-chip-row {
	min-height: 34px;
}

.wsb-quick-view-body .wsb-category-chip-row {
	margin-bottom: 14px;
}

/* Shop conversion upgrades */
.wsb-card {
	position: relative;
}

.wsb-card-badge {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(7, 13, 26, 0.78);
	color: #fff;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	backdrop-filter: blur(10px);
}

.wsb-card-featured {
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,249,255,0.98));
	border-color: rgba(19, 103, 255, 0.18);
	box-shadow: 0 24px 42px rgba(19, 103, 255, 0.12);
}

.wsb-featured-products,
.wsb-shop-results-bar {
	margin-top: 18px;
}

.wsb-featured-products-head,
.wsb-shop-results-bar {
	display: grid;
	gap: 18px;
	align-items: center;
}

.wsb-featured-products-head {
	grid-template-columns: minmax(0, 1fr) minmax(280px, 0.55fr);
	margin-bottom: 18px;
}

.wsb-featured-products-head h2 {
	margin: 8px 0 0;
	font-size: clamp(1.55rem, 2.6vw, 2.25rem);
	line-height: 1.08;
	letter-spacing: -0.04em;
}

.wsb-featured-products-head p,
.wsb-shop-results-copy span {
	margin: 0;
	color: var(--wsb-text-soft);
	line-height: 1.65;
}

.wsb-featured-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.wsb-shop-results-bar {
	grid-template-columns: minmax(0, 1fr) auto;
	padding: 18px 20px;
}

.wsb-shop-results-copy {
	display: grid;
	gap: 6px;
}

.wsb-shop-results-copy strong {
	font-size: 1.04rem;
	letter-spacing: -0.02em;
}

.wsb-shop-sort-form {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.wsb-shop-sort-select-wrap select {
	min-width: 220px;
	min-height: 46px;
	padding: 0 16px;
	border-radius: 14px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	background: rgba(248,250,255,0.98);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.86);
}

.wsb-load-more-wrap {
	display: grid;
	justify-items: center;
	gap: 12px;
	margin: 26px 0 10px;
}

.wsb-load-more-status {
	margin: 0;
	color: var(--wsb-text-soft);
	font-size: 0.95rem;
}

.wsb-shop-sticky-contact {
	position: fixed;
	left: 50%;
	bottom: 18px;
	transform: translateX(-50%);
	z-index: 43;
	display: grid;
	grid-template-columns: minmax(220px, auto) minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	width: min(1100px, calc(100vw - 28px));
	padding: 14px 16px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(12, 22, 44, 0.92), rgba(8, 16, 35, 0.94));
	color: #fff;
	box-shadow: 0 26px 48px rgba(7, 13, 26, 0.3);
	backdrop-filter: blur(18px);
}

.wsb-shop-sticky-contact-copy {
	display: grid;
	gap: 4px;
}

.wsb-shop-sticky-contact-copy .wsb-eyebrow,
.wsb-shop-sticky-contact-copy p {
	margin: 0;
	color: rgba(232, 239, 255, 0.78);
}

.wsb-shop-sticky-contact-copy strong {
	font-size: 1rem;
	letter-spacing: -0.02em;
}

.wsb-shop-sticky-contact-actions,
.wsb-shop-sticky-contact-actions .wsb-contact {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.wsb-shop-sticky-contact-actions .wsb-contact {
	width: 100%;
}

.wsb-shop-sticky-contact-actions .wsb-btn {
	min-width: 140px;
	justify-content: center;
	box-shadow: none;
}

.wsb-shop.is-filter-open .wsb-shop-sticky-contact,
.wsb-shop.is-quick-view-open .wsb-shop-sticky-contact {
	opacity: 0;
	pointer-events: none;
	transform: translateX(-50%) translateY(18px);
}

@media (max-width: 980px) {
	.wsb-featured-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wsb-featured-products-head,
	.wsb-shop-results-bar,
	.wsb-shop-sticky-contact {
		grid-template-columns: 1fr;
	}

	.wsb-shop-sort-form,
	.wsb-shop-sticky-contact-actions,
	.wsb-shop-sticky-contact-actions .wsb-contact {
		justify-content: flex-start;
	}
}

@media (max-width: 640px) {
	.wsb-featured-grid {
		grid-template-columns: 1fr;
	}

	.wsb-shop-results-bar {
		padding: 16px;
	}

	.wsb-shop-sort-form,
	.wsb-shop-sort-select-wrap,
	.wsb-shop-sort-select-wrap select {
		width: 100%;
	}

	.wsb-shop-sticky-contact {
		bottom: 86px;
		width: calc(100vw - 16px);
		padding: 14px;
		border-radius: 20px;
	}

	.wsb-shop-sticky-contact-actions .wsb-btn {
		width: 100%;
	}
}

/* Mobile-first intro layout */
.wsb-shop .wsb-shop-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 0.95fr);
	gap: 20px;
	align-items: stretch;
	margin-bottom: 18px;
}

.wsb-shop .wsb-shop-intro .wsb-shop-summary,
.wsb-shop .wsb-shop-intro .wsb-shop-header {
	margin: 0;
	height: 100%;
}

.wsb-shop .wsb-shop-intro .wsb-shop-summary {
	order: 1;
	position: relative;
	z-index: 2;
}

.wsb-shop .wsb-shop-intro .wsb-shop-header {
	order: 2;
	min-height: 100%;
}

.wsb-shop .wsb-shop-intro .wsb-shop-header.has-slider,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-slider,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-slide {
	height: 100%;
	min-height: 100%;
}

.wsb-shop .wsb-shop-intro .wsb-shop-header.has-slider {
	min-height: 540px;
}

.wsb-shop .wsb-shop-intro .wsb-shop-summary {
	padding: 28px;
}

.wsb-shop .wsb-shop-intro .wsb-hero-copy {
	gap: 18px;
}

.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
	padding: 16px;
}

@media (max-width: 980px) {
	.wsb-shop .wsb-shop-intro {
		grid-template-columns: 1fr;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-header.has-slider {
		min-height: 420px;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro {
		grid-template-columns: 1fr;
		gap: 0;
		margin-bottom: 14px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-header {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding: 20px 16px;
		border-radius: 22px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary .wsb-hero-copy {
		order: 2;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary .wsb-hero-aside {
		order: 1;
		gap: 14px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary .wsb-shop-banner-card {
		padding: 14px;
		border-radius: 18px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary .wsb-shop-banner-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary .wsb-shop-map-card {
		display: none;
	}
}

/* Shop intro layout refinement */
.wsb-shop .wsb-shop-intro {
	grid-template-columns: minmax(340px, 0.88fr) minmax(0, 1.12fr);
	gap: 24px;
	align-items: stretch;
}

.wsb-shop .wsb-shop-intro > * {
	min-width: 0;
}

.wsb-shop .wsb-shop-intro .wsb-shop-summary {
	grid-template-columns: 1fr;
	gap: 18px;
	margin-top: 0;
	padding: 24px;
	align-content: start;
}

.wsb-shop .wsb-shop-intro .wsb-hero-copy,
.wsb-shop .wsb-shop-intro .wsb-hero-aside {
	max-width: none;
}

.wsb-shop .wsb-shop-intro .wsb-hero-copy h1 {
	font-size: clamp(2rem, 3.6vw, 3rem);
}

.wsb-shop .wsb-shop-intro .wsb-hero-copy p {
	max-width: none;
}

.wsb-shop .wsb-shop-intro .wsb-hero-aside {
	display: grid;
	gap: 14px;
}

.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.wsb-shop .wsb-shop-intro .wsb-shop-header {
	overflow: hidden;
	padding: 0;
	border-radius: 30px;
	min-height: 520px;
}

.wsb-shop .wsb-shop-intro .wsb-shop-header.has-slider,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-slider,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-slide,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-media,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-media picture,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-media img {
	width: 100%;
	height: 100%;
}

.wsb-shop .wsb-shop-intro .wsb-shop-hero-media img {
	display: block;
	object-fit: cover;
}

.wsb-shop .wsb-shop-intro .wsb-shop-hero-slide-inner,
.wsb-shop .wsb-shop-intro .wsb-shop-hero-slide-copy {
	max-width: none;
}

@media (max-width: 1200px) {
	.wsb-shop .wsb-shop-intro {
		grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.05fr);
		gap: 18px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-header {
		min-height: 460px;
	}
}

@media (max-width: 980px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding: 22px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-header {
		min-height: 400px;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding: 18px 16px;
		gap: 16px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy h1 {
		font-size: clamp(1.8rem, 8vw, 2.35rem);
	}
}

@media (max-width: 640px) {
	.wsb-shop-top-search,
	.wsb-shop-top-search.is-floating {
		position: relative;
		top: auto;
		left: auto;
		transform: none;
		z-index: 12;
	}

	.wsb-shop-top-search-placeholder {
		display: none;
	}
}

/* Mobile filter popup fix */
@media (max-width: 640px) {
	.wsb-shop .wsb-filter {
		position: fixed !important;
		left: 12px;
		right: 12px;
		bottom: 12px;
		top: auto;
		z-index: 46;
		max-height: calc(100vh - 110px);
		margin: 0;
		padding: 18px;
		border-radius: 24px;
		overflow: auto;
		background: rgba(255, 255, 255, 0.98);
		backdrop-filter: blur(16px);
		transform: translateY(calc(100% + 30px));
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: transform 0.28s ease, opacity 0.22s ease, visibility 0.22s ease;
	}

	.wsb-shop.is-filter-open .wsb-filter {
		transform: translateY(0);
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}

/* Mobile compact search + info card */
@media (max-width: 640px) {
	.wsb-shop-top-search {
		padding: 10px 12px;
		margin-bottom: 10px;
		border-radius: 18px;
	}

	.wsb-shop-top-search-form {
		gap: 8px;
	}

	.wsb-shop-top-search-copy strong {
		font-size: 0.92rem;
	}

	.wsb-shop-top-search-controls {
		gap: 8px;
		padding: 6px;
		border-radius: 16px;
	}

	.wsb-shop-search-select-wrap select,
	.wsb-shop-top-search-controls input,
	.wsb-shop-top-search-controls .wsb-btn {
		min-height: 42px;
		font-size: 0.94rem;
	}

	.wsb-shop-top-search-controls input {
		padding-left: 38px;
	}

	.wsb-voice-search-btn {
		min-width: 42px;
		width: 100%;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding: 14px 14px;
		gap: 12px;
		border-radius: 18px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		gap: 12px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy h1 {
		font-size: clamp(1.45rem, 7vw, 2rem);
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy p {
		font-size: 0.92rem;
		line-height: 1.55;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		padding: 12px;
		border-radius: 16px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-avatar {
		width: 56px;
		height: 56px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-meta strong {
		font-size: 0.98rem;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-meta p,
	.wsb-shop .wsb-shop-intro .wsb-shop-identity-meta,
	.wsb-shop .wsb-shop-intro .wsb-shop-social-row {
		font-size: 0.88rem;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats {
		gap: 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-stat {
		padding: 12px 10px;
		border-radius: 14px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		gap: 8px;
	}
}

/* Mobile compact content pass */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-hero-copy > p {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-flow: column;
		align-items: stretch;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-btn,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn,
	.wsb-shop .wsb-shop-sticky-contact-actions .wsb-btn,
	.wsb-shop .wsb-card-actions .wsb-contact .wsb-btn {
		min-height: 38px;
		padding: 0 12px;
		font-size: 0.8rem;
		border-radius: 12px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-btn-icon,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn-icon,
	.wsb-shop .wsb-shop-sticky-contact-actions .wsb-btn-icon,
	.wsb-shop .wsb-card-actions .wsb-contact .wsb-btn-icon {
		width: 16px;
		height: 16px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-btn-label,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn-label,
	.wsb-shop .wsb-shop-sticky-contact-actions .wsb-btn-label,
	.wsb-shop .wsb-card-actions .wsb-contact .wsb-btn-label {
		font-size: 0.8rem;
	}
}

/* Compact identity + single-line mobile search */
.wsb-shop .wsb-shop-banner-title {
	display: block;
	margin: 0;
	font-size: 1rem;
	line-height: 1.1;
	letter-spacing: -0.03em;
}

.wsb-shop .wsb-shop-banner-inline {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	color: var(--wsb-text-soft);
	font-size: 0.86rem;
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
}

.wsb-shop .wsb-shop-banner-inline span {
	overflow: hidden;
	text-overflow: ellipsis;
}

.wsb-shop .wsb-shop-banner-inline span + span {
	position: relative;
	padding-left: 10px;
}

.wsb-shop .wsb-shop-banner-inline span + span::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 4px;
	height: 4px;
	border-radius: 999px;
	background: rgba(120, 139, 173, 0.75);
	transform: translateY(-50%);
}

.wsb-shop .wsb-shop-banner-actions .wsb-contact {
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
}

.wsb-shop .wsb-shop-banner-actions .wsb-contact::-webkit-scrollbar {
	display: none;
}

.wsb-shop .wsb-shop-banner-actions .wsb-contact .wsb-btn {
	flex: 0 0 auto;
}

@media (max-width: 640px) {
	.wsb-shop-top-search-form {
		gap: 0;
	}

	.wsb-shop-top-search-copy {
		display: none;
	}

	.wsb-shop-top-search-controls {
		grid-template-columns: minmax(0, 1fr) 42px;
		align-items: center;
	}

	.wsb-shop-top-search-controls .wsb-btn-primary {
		padding: 0 10px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy h1,
	.wsb-shop .wsb-shop-intro .wsb-shop-identity-meta {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 10px;
		align-items: center;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-avatar {
		width: 52px;
		height: 52px;
		border-radius: 14px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-title {
		font-size: 0.96rem;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-inline {
		font-size: 0.8rem;
		gap: 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-inline span + span {
		padding-left: 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats {
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats .wsb-hero-stat {
		padding: 9px 8px;
		border-radius: 12px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats .wsb-metric-label {
		font-size: 0.64rem;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats .wsb-metric-value {
		margin-top: 3px;
		font-size: 1rem;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		width: 100%;
		flex-wrap: nowrap;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn {
		min-width: max-content;
	}
}

/* Mobile app-header pass */
@media (max-width: 640px) {
	.wsb-shop-top-search {
		padding: 8px 10px;
		margin-bottom: 8px;
		border-radius: 16px;
	}

	.wsb-shop-top-search-controls {
		grid-template-columns: minmax(0, 1fr) 42px;
		grid-template-areas:
			"search voice"
			"category filter";
		gap: 6px;
		padding: 6px;
	}

	.wsb-shop-search-input-wrap {
		grid-area: search;
	}

	.wsb-voice-search-btn {
		grid-area: voice;
		width: 42px;
		min-width: 42px;
		justify-self: stretch;
	}

	.wsb-shop-search-select-wrap {
		grid-area: category;
	}

	.wsb-mobile-filter-toggle-inline {
		grid-area: filter;
		min-height: 42px;
		padding: 0 10px;
	}

	.wsb-shop .wsb-shop-intro {
		margin-bottom: 10px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding: 12px;
		gap: 10px;
		border-radius: 16px;
		box-shadow: 0 14px 28px rgba(23, 37, 84, 0.08);
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		gap: 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		gap: 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		padding: 10px;
		gap: 8px;
		border-radius: 14px;
		box-shadow: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-avatar {
		width: 48px;
		height: 48px;
		border-radius: 12px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-title {
		font-size: 0.92rem;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-inline {
		font-size: 0.76rem;
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-inline span + span {
		padding-left: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-inline span + span::before {
		width: 3px;
		height: 3px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions > .wsb-btn-primary {
		min-height: 36px;
		padding: 0 10px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		flex-wrap: nowrap;
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn {
		min-height: 36px;
		padding: 0 10px;
	}
}

/* Intro before search */
.wsb-shop .wsb-shop-intro {
	max-width: 1380px;
	margin: 0 auto 12px;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro {
		max-width: 760px;
		margin: 0 auto 8px;
	}

	.wsb-shop-top-search {
		max-width: 760px;
		margin-top: 0;
	}
}

/* Mobile info-card contact row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		width: 100%;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact::-webkit-scrollbar {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn {
		width: auto;
		flex: 0 0 auto;
		white-space: nowrap;
	}
}

/* Mobile full-width info card + one-line actions */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro,
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		max-width: none;
		width: 100%;
	}

	.wsb-shop .wsb-shop-intro {
		margin-left: 0;
		margin-right: 0;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		width: 100%;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions::-webkit-scrollbar {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions > .wsb-btn-primary,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact .wsb-btn {
		flex: 0 0 auto;
		width: auto;
		white-space: nowrap;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		margin-left: 0;
	}
}

/* Mobile card alignment + tighter action spacing */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro {
		width: calc(100% - 16px);
		max-width: calc(100% - 16px);
		margin: 0 auto 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		width: 100%;
		max-width: 100%;
		gap: 6px;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		gap: 4px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		margin-top: 0;
		gap: 4px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		gap: 4px;
	}
}

/* Final mobile header width sync */
@media (max-width: 640px) {
	.wsb-shop {
		padding-left: 14px;
		padding-right: 14px;
	}

	.wsb-shop .wsb-shop-intro,
	.wsb-shop .wsb-shop-top-search {
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
		box-sizing: border-box;
	}

	.wsb-shop .wsb-shop-intro {
		margin-bottom: 8px;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary,
	.wsb-shop .wsb-shop-top-search {
		width: 100%;
		max-width: none;
		padding: 10px 12px;
		box-sizing: border-box;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		margin: 0;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy,
	.wsb-shop .wsb-shop-top-search-form {
		width: 100%;
		max-width: none;
		box-sizing: border-box;
	}
}

/* Match mobile info card spacing to search bar */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro {
		width: 100%;
		max-width: none;
		margin: 0 0 8px;
		padding: 0;
		box-sizing: border-box;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary,
	.wsb-shop .wsb-shop-top-search {
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 10px 12px;
		box-sizing: border-box;
		border-radius: 16px;
	}
}

/* Exact mobile width match for info card + search bar */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro,
	.wsb-shop .wsb-shop-top-search {
		width: calc(100% - 16px) !important;
		max-width: calc(100% - 16px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-shop-intro {
		margin-bottom: 8px !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary,
	.wsb-shop .wsb-shop-top-search {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 10px 12px !important;
		box-sizing: border-box !important;
	}
}

/* Final simple mobile width lock */
@media (max-width: 640px) {
	.wsb-shop {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	.wsb-shop .wsb-shop-intro,
	.wsb-shop .wsb-shop-top-search {
		width: 100% !important;
		max-width: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-shop-intro {
		padding: 0 !important;
		margin-bottom: 8px !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary,
	.wsb-shop .wsb-shop-top-search {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 10px 12px !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-shop-top-search-form,
	.wsb-shop .wsb-shop-intro .wsb-hero-copy,
	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}
}

/* Shared mobile shell for info card + search */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 0 8px !important;
		padding: 0 !important;
	}

	.wsb-shop .wsb-mobile-header-shell {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 10px 12px !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-mobile-header-shell .wsb-shop-top-search-form,
	.wsb-shop .wsb-mobile-header-shell .wsb-hero-copy,
	.wsb-shop .wsb-mobile-header-shell .wsb-hero-aside {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}
}

/* Mobile actions under logo row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		display: flex !important;
		flex-direction: column !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		order: 1;
		width: 100%;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		order: 2;
		width: 100%;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		width: 100%;
		margin-top: 6px !important;
		justify-content: center !important;
		align-items: center !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		justify-content: center !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-social-row {
		width: 100%;
		justify-content: center;
	}
}

/* Tighter mobile action gap */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		margin-top: 2px !important;
	}
}

/* Smaller gap between mobile logo row and contact row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		margin-top: 0 !important;
		padding-top: 2px !important;
	}
}

/* Remove parent gap between mobile logo block and action block */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		gap: 0 !important;
		margin: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		gap: 0 !important;
		margin: 2px 0 0 !important;
		padding: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		margin-bottom: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
}

/* Flatten mobile copy wrapper so actions sit directly under logo row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		display: contents !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
		margin: 2px 0 0 !important;
		padding: 0 !important;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions::-webkit-scrollbar {
		display: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-social-row {
		display: none !important;
	}
}

/* Final stable mobile action order */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		order: 1 !important;
		width: 100% !important;
		margin: 0 !important;
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		order: 2 !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
		margin: 2px 0 0 !important;
		padding: 0 !important;
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
		margin: 2px 0 0 !important;
		padding: 0 !important;
		gap: 4px !important;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center !important;
		gap: 4px !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions::-webkit-scrollbar,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions .wsb-contact::-webkit-scrollbar {
		display: none;
	}
}

/* Dedicated mobile action row under logo card */
.wsb-shop .wsb-shop-banner-actions-mobile {
	display: none;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-banner-actions-desktop {
		display: none !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
		margin: 2px 0 0 !important;
		padding: 0 !important;
		gap: 4px !important;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile::-webkit-scrollbar {
		display: none;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile .wsb-contact {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center !important;
		gap: 4px !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile .wsb-btn,
	.wsb-shop .wsb-shop-banner-actions-mobile .wsb-contact .wsb-btn {
		flex: 0 0 auto;
		width: auto;
		min-height: 36px;
		padding: 0 10px;
		white-space: nowrap;
	}
}

/* Restore stable mobile wrapper after action-row split */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 0 !important;
	}
}

/* Hide leftover desktop copy/actions on mobile */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		display: none !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-social-row,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions-desktop {
		display: none !important;
	}
}

/* Tighter bottom space under mobile action row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding-bottom: 6px !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		margin-bottom: 0 !important;
		padding-bottom: 0 !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		margin-bottom: 0 !important;
	}
}

/* Remove remaining bottom padding under mobile action row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		padding-bottom: 0 !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		margin-bottom: 0 !important;
		padding-bottom: 0 !important;
	}
}

/* Remove ghost space in mobile aside stack */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 2px !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats,
	.wsb-shop .wsb-shop-intro .wsb-shop-map-card {
		display: none !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		margin-bottom: 0 !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		margin-top: 0 !important;
	}
}

/* Place mobile action row inside the logo card */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		display: grid !important;
		grid-template-columns: 48px minmax(0, 1fr) !important;
		column-gap: 8px !important;
		row-gap: 2px !important;
		align-items: center !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		grid-column: 1 / -1;
		margin: 0 !important;
	}
}

/* Final trim for mobile logo card bottom space */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		row-gap: 0 !important;
		padding: 10px 10px 4px !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		margin-top: 2px !important;
		align-self: start !important;
	}
}

/* Hard fix: remove mobile logo-card bottom space completely */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		padding-bottom: 0 !important;
		row-gap: 0 !important;
	}

	.wsb-shop .wsb-shop-banner-actions-mobile {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
}

/* Final mobile cleanup for logo card + action row */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		display: grid !important;
		grid-template-columns: 48px minmax(0, 1fr) !important;
		grid-template-areas:
			"avatar meta"
			"actions actions" !important;
		column-gap: 8px !important;
		row-gap: 2px !important;
		padding: 10px 10px 0 !important;
		margin: 0 !important;
		overflow: hidden !important;
		align-items: center !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-avatar {
		grid-area: avatar;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-meta {
		grid-area: meta;
		min-height: 48px !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-meta > * {
		margin-bottom: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions-mobile {
		grid-area: actions;
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
		margin: 2px 0 6px !important;
		padding: 0 !important;
		gap: 4px !important;
		line-height: 1 !important;
		overflow: visible !important;
		scrollbar-width: none !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions-mobile::-webkit-scrollbar {
		display: none !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions-mobile .wsb-contact {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: center !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 4px !important;
		overflow: visible !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions-mobile .wsb-btn,
	.wsb-shop .wsb-shop-intro .wsb-shop-banner-actions-mobile .wsb-contact .wsb-btn {
		margin: 0 !important;
		box-shadow: 0 8px 14px rgba(15, 23, 42, 0.12) !important;
	}
}

/* Hard mobile shell trim for shop info card */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		display: block !important;
		height: auto !important;
		min-height: 0 !important;
		padding: 10px 12px 0 !important;
		margin: 0 !important;
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-hero-aside {
		display: block !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 0 !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-stats,
	.wsb-shop .wsb-shop-intro .wsb-shop-map-card,
	.wsb-shop .wsb-shop-intro .wsb-hero-copy {
		display: none !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-banner-card {
		margin: 0 !important;
		padding: 10px 10px 0 !important;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-mobile-filter-toggle-inline {
		display: inline-flex !important;
		position: static !important;
		left: auto !important;
		right: auto !important;
		bottom: auto !important;
		width: 100% !important;
		min-width: 0 !important;
		border: 1px solid rgba(120, 139, 173, 0.16) !important;
		border-radius: 12px !important;
		background: rgba(248, 250, 255, 0.98) !important;
		box-shadow: inset 0 1px 0 rgba(255,255,255,0.86) !important;
		color: var(--wsb-text) !important;
		padding: 0 10px !important;
		z-index: auto !important;
	}
}

.wsb-filter-field {
	display: grid;
	gap: 6px;
}

.wsb-filter-field label {
	font-size: 0.86rem;
	font-weight: 700;
	color: var(--wsb-text-soft);
}

.wsb-filter-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.wsb-filter-actions .wsb-btn {
	min-height: 46px;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-filter {
		display: block !important;
	}

	.wsb-shop .wsb-filter-row {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.wsb-shop .wsb-filter-field,
	.wsb-shop .wsb-filter-actions {
		width: 100%;
	}

	.wsb-shop .wsb-filter-actions {
		flex-direction: column;
	}

	.wsb-shop .wsb-filter-actions .wsb-btn {
		width: 100%;
	}
}

/* Strong mobile filter-sheet override */
@media (max-width: 640px) {
	.wsb-shop .wsb-filter {
		display: block !important;
		background: rgba(255, 255, 255, 0.99) !important;
		color: var(--wsb-text) !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-mobile-bar {
		display: flex !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-row {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-field {
		display: grid !important;
		gap: 6px !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-field label {
		display: block !important;
		color: var(--wsb-text-soft) !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-field input,
	.wsb-shop .wsb-filter .wsb-filter-field select {
		display: block !important;
		width: 100% !important;
		min-height: 46px !important;
		background: #fff !important;
		color: var(--wsb-text) !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-actions {
		display: flex !important;
		flex-direction: column !important;
		gap: 10px !important;
	}

	.wsb-shop .wsb-filter .wsb-filter-actions .wsb-btn {
		display: inline-flex !important;
		width: 100% !important;
	}
}

/* Dedicated mobile filter sheet */
@media (max-width: 640px) {
	.wsb-shop .wsb-shop-filter-panel {
		position: fixed !important;
		left: 12px !important;
		right: 12px !important;
		bottom: 12px !important;
		top: auto !important;
		display: block !important;
		max-height: calc(100vh - 84px) !important;
		margin: 0 !important;
		padding: 18px !important;
		border-radius: 24px !important;
		background: rgba(255, 255, 255, 0.99) !important;
		backdrop-filter: blur(16px) !important;
		-webkit-backdrop-filter: blur(16px) !important;
		box-shadow: 0 24px 48px rgba(15, 23, 42, 0.2) !important;
		overflow: auto !important;
		transform: translateY(calc(100% + 32px)) !important;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		z-index: 46 !important;
		transition: transform 0.28s ease, opacity 0.22s ease, visibility 0.22s ease !important;
	}

	.wsb-shop.is-filter-open .wsb-shop-filter-panel {
		transform: translateY(0) !important;
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-mobile-bar {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 12px !important;
		margin-bottom: 16px !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-row {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-field {
		display: grid !important;
		gap: 6px !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-field label {
		display: block !important;
		font-size: 0.86rem !important;
		font-weight: 700 !important;
		color: var(--wsb-text-soft) !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-field input,
	.wsb-shop .wsb-shop-filter-panel .wsb-filter-field select {
		display: block !important;
		width: 100% !important;
		min-height: 46px !important;
		background: #fff !important;
		color: var(--wsb-text) !important;
		border: 1px solid rgba(120, 139, 173, 0.18) !important;
		border-radius: 14px !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.wsb-shop .wsb-shop-filter-panel .wsb-filter-actions .wsb-btn,
	.wsb-shop .wsb-shop-filter-panel .wsb-mobile-filter-close {
		width: 100% !important;
		min-height: 44px !important;
	}
}

/* Mobile popup filter sheet reset */
.wsb-shop-filter-panel[hidden] {
	display: none !important;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-filter-panel {
		position: fixed !important;
		inset: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 16px 12px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
		background: transparent !important;
		z-index: 46 !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-shop-filter-sheet {
		width: min(560px, 100%) !important;
		max-height: calc(100vh - 32px) !important;
		max-height: calc(100dvh - 32px) !important;
		margin: 0 !important;
		padding: 18px 18px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
		border-radius: 24px !important;
		background: rgba(255, 255, 255, 0.99) !important;
		backdrop-filter: blur(16px) !important;
		-webkit-backdrop-filter: blur(16px) !important;
		box-shadow: 0 24px 48px rgba(15, 23, 42, 0.2) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		overscroll-behavior: contain !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-mobile-bar {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 12px !important;
		margin-bottom: 16px !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-row {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-field {
		display: grid !important;
		gap: 6px !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-field label {
		display: block !important;
		font-size: 0.86rem !important;
		font-weight: 700 !important;
		color: var(--wsb-text-soft) !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-field input,
	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-field select {
		display: block !important;
		width: 100% !important;
		min-height: 46px !important;
		padding: 12px 14px !important;
		background: #fff !important;
		color: var(--wsb-text) !important;
		border: 1px solid rgba(120, 139, 173, 0.18) !important;
		border-radius: 14px !important;
		box-sizing: border-box !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.wsb-shop .wsb-shop-filter-sheet .wsb-filter-actions .wsb-btn,
	.wsb-shop .wsb-shop-filter-sheet .wsb-mobile-filter-close {
		display: inline-flex !important;
		width: 100% !important;
		min-height: 44px !important;
	}
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-filter-sheet {
		max-width: 560px !important;
		max-height: min(calc(100vh - 32px), 520px) !important;
		max-height: min(calc(100dvh - 32px), 520px) !important;
	}

	.wsb-shop .wsb-shop-results-bar {
		display: none !important;
	}
}

/* Mobile-first shop carousel + reels */
.wsb-shop-strip {
	margin-top: 16px;
	padding: 18px;
	border-radius: 24px;
}

.wsb-shop-strip-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 14px;
}

.wsb-shop-strip-head h2 {
	margin: 6px 0 0;
	font-size: clamp(1.2rem, 3vw, 1.8rem);
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.wsb-shop-strip-head p {
	margin: 6px 0 0;
	color: var(--wsb-text-soft);
	line-height: 1.55;
}

.wsb-shop-strip-nav {
	display: inline-flex;
	gap: 8px;
	flex-shrink: 0;
}

.wsb-shop-strip-nav-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	border-radius: 14px;
	background: rgba(248, 250, 255, 0.98);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.86);
	color: var(--wsb-text);
	cursor: pointer;
}

.wsb-shop-strip-rail {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(240px, 320px);
	gap: 14px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding-bottom: 4px;
}

.wsb-shop-strip-rail::-webkit-scrollbar {
	display: none;
}

.wsb-highlight-card,
.wsb-reel-card {
	scroll-snap-align: start;
}

.wsb-highlight-card {
	display: grid;
	grid-template-rows: auto 1fr;
	min-width: 0;
	border-radius: 22px;
	background: rgba(255,255,255,0.96);
	border: 1px solid rgba(120, 139, 173, 0.14);
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08);
	overflow: hidden;
}

.wsb-highlight-card-media {
	display: block;
	aspect-ratio: 4 / 5;
	background: linear-gradient(135deg, rgba(255, 181, 74, 0.94), rgba(19, 103, 255, 0.76));
}

.wsb-highlight-card-media img,
.wsb-highlight-card-fallback {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	object-fit: cover;
}

.wsb-highlight-card-fallback {
	color: #fff;
	font-size: 3rem;
	font-weight: 800;
}

.wsb-highlight-card-body {
	display: grid;
	gap: 10px;
	padding: 14px;
}

.wsb-highlight-card-body h3 {
	margin: 0;
	font-size: 1rem;
	line-height: 1.2;
}

.wsb-highlight-card-body h3 a {
	color: inherit;
	text-decoration: none;
}

.wsb-highlight-card-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;
}

.wsb-highlight-card-body .wsb-btn {
	width: 100%;
	min-height: 42px;
}

.wsb-shop-reels-rail {
	grid-auto-columns: minmax(220px, 280px);
}

.wsb-reel-card {
	display: grid;
	grid-template-rows: auto 1fr;
	border-radius: 22px;
	background: rgba(255,255,255,0.96);
	border: 1px solid rgba(120, 139, 173, 0.14);
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08);
	overflow: hidden;
}

.wsb-reel-card-media {
	position: relative;
	aspect-ratio: 9 / 16;
	background: #0f172a;
	overflow: hidden;
}

.wsb-reel-card-media iframe,
.wsb-reel-card-media video,
.wsb-reel-card-media .wp-video,
.wsb-reel-card-media .wp-video-shortcode,
.wsb-reel-card-media img {
	width: 100% !important;
	height: 100% !important;
	border: 0;
	object-fit: cover;
}

.wsb-reel-card-fallback {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.wsb-reel-card-play {
	position: absolute;
	left: 12px;
	bottom: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(12, 22, 44, 0.8);
	color: #fff;
	font-weight: 700;
}

.wsb-reel-card-body {
	display: grid;
	gap: 10px;
	padding: 14px;
}

.wsb-reel-card-body strong {
	font-size: 0.98rem;
	line-height: 1.25;
}

.wsb-reel-card-body .wsb-btn {
	width: 100%;
	min-height: 42px;
}

@media (max-width: 640px) {
	.wsb-shop-strip {
		padding: 14px;
		border-radius: 20px;
	}

	.wsb-shop-strip-head {
		align-items: center;
		margin-bottom: 12px;
	}

	.wsb-shop-strip-head p {
		display: none;
	}

	.wsb-shop-strip-nav {
		display: none;
	}

	.wsb-shop-strip-rail {
		grid-auto-columns: 74vw;
		gap: 12px;
	}

	.wsb-shop-reels-rail {
		grid-auto-columns: 68vw;
	}
}

@media (min-width: 641px) {
	.wsb-shop-strip-rail {
		scroll-behavior: smooth;
	}
}

/* Premium carousel + reel polish */
.wsb-shop-carousel-section .wsb-shop-strip-rail {
	grid-auto-columns: minmax(210px, 248px);
}

.wsb-highlight-card {
	border-radius: 24px;
	box-shadow: 0 20px 34px rgba(15, 23, 42, 0.08);
	transform: translateZ(0);
}

.wsb-highlight-card-media {
	position: relative;
	aspect-ratio: 4 / 4.35;
}

.wsb-highlight-card-media::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(8, 15, 32, 0.04), rgba(8, 15, 32, 0.34));
}

.wsb-highlight-card-overlay {
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 12px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.wsb-highlight-card-price {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(8, 16, 35, 0.74);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: #fff;
	font-weight: 800;
	font-size: 0.8rem;
}

.wsb-highlight-card-body {
	gap: 8px;
	padding: 12px;
}

.wsb-highlight-card-body .wsb-category-chip-row {
	margin: 0;
}

.wsb-highlight-card-body .wsb-category-chip {
	padding: 6px 10px;
	font-size: 0.74rem;
	box-shadow: none;
}

.wsb-highlight-card-body h3 {
	font-size: 0.96rem;
	line-height: 1.22;
}

.wsb-highlight-card-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 12px;
	border-radius: 12px;
	background: rgba(19, 103, 255, 0.08);
	color: var(--wsb-primary-deep);
	font-weight: 800;
	text-decoration: none;
}

.wsb-shop-reels-section .wsb-shop-strip-rail {
	grid-auto-columns: minmax(220px, 260px);
}

.wsb-reel-card {
	position: relative;
	border-radius: 28px;
	background: #0f172a;
	box-shadow: 0 22px 40px rgba(8, 16, 35, 0.22);
}

.wsb-reel-card-media {
	position: relative;
	aspect-ratio: 9 / 16;
	min-height: 0;
}

.wsb-reel-native-video,
.wsb-reel-card-media iframe,
.wsb-reel-card-media video,
.wsb-reel-card-media .wp-video,
.wsb-reel-card-media .wp-video-shortcode,
.wsb-reel-card-media img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	display: block;
	border: 0;
	background: #0f172a;
}

.wsb-reel-card-media .wp-video,
.wsb-reel-card-media .wp-video-shortcode {
	max-width: none !important;
}

.wsb-reel-card-gradient {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(8, 16, 35, 0.18) 0%, rgba(8, 16, 35, 0.02) 34%, rgba(8, 16, 35, 0.72) 100%);
	pointer-events: none;
}

.wsb-reel-card-overlay-top,
.wsb-reel-card-overlay-bottom {
	position: absolute;
	left: 12px;
	right: 12px;
	z-index: 2;
	display: grid;
	gap: 8px;
}

.wsb-reel-card-overlay-top {
	top: 12px;
	grid-auto-flow: column;
	justify-content: space-between;
	align-items: start;
}

.wsb-reel-card-overlay-bottom {
	bottom: 12px;
}

.wsb-reel-card-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	padding: 7px 11px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: #fff;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.wsb-reel-card-overlay-bottom strong {
	color: #fff;
	font-size: 1rem;
	line-height: 1.24;
	text-shadow: 0 8px 18px rgba(8, 16, 35, 0.34);
}

.wsb-reel-card-overlay-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;
}

.wsb-reel-card-overlay-meta .wsb-price {
	color: #fff;
	font-weight: 800;
}

.wsb-reel-card-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}

.wsb-reel-card-body {
	display: none;
}

@media (max-width: 640px) {
	.wsb-shop-carousel-section .wsb-shop-strip-rail {
		grid-auto-columns: 58vw;
	}

	.wsb-shop-reels-section .wsb-shop-strip-rail {
		grid-auto-columns: 66vw;
	}

	.wsb-highlight-card {
		border-radius: 22px;
	}

	.wsb-highlight-card-body {
		padding: 10px;
	}

	.wsb-highlight-card-overlay {
		left: 10px;
		right: 10px;
		bottom: 10px;
	}

	.wsb-reel-card {
		border-radius: 24px;
	}

	.wsb-reel-card-overlay-top,
	.wsb-reel-card-overlay-bottom {
		left: 10px;
		right: 10px;
	}
}

/* Reel focus + audio controls */
.wsb-shop-reels-rail {
	scroll-snap-type: x mandatory;
	scroll-padding-inline: 12px;
}

.wsb-shop-reels-rail .wsb-reel-card {
	scroll-snap-align: center;
	transition: transform 0.24s ease, opacity 0.24s ease, box-shadow 0.24s ease;
	opacity: 0.62;
	transform: scale(0.94);
}

.wsb-shop-reels-rail .wsb-reel-card.is-focused {
	opacity: 1;
	transform: scale(1);
	box-shadow: 0 26px 50px rgba(8, 16, 35, 0.28);
}

.wsb-reel-card-top-actions {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	flex-wrap: wrap;
}

.wsb-reel-audio-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: none;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: #fff;
	cursor: pointer;
}

.wsb-reel-audio-toggle svg {
	width: 18px;
	height: 18px;
}

.wsb-reel-audio-icon {
	display: inline-flex;
}

.wsb-reel-audio-toggle.is-muted .wsb-reel-audio-icon.is-on,
.wsb-reel-audio-toggle:not(.is-muted) .wsb-reel-audio-icon.is-off {
	display: none;
}

@media (max-width: 640px) {
	.wsb-shop-reels-rail {
		scroll-padding-inline: 17vw;
	}

	.wsb-shop-reels-rail .wsb-reel-card {
		opacity: 0.5;
		transform: scale(0.92);
	}

	.wsb-shop-reels-rail .wsb-reel-card.is-focused {
		transform: scale(1);
		opacity: 1;
	}
}

/* Strong horizontal rail scrolling fix */
.wsb-shop-strip-rail {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	touch-action: pan-x;
	gap: 14px !important;
}

.wsb-shop-strip-rail > * {
	flex: 0 0 var(--wsb-rail-card-width, 280px);
	min-width: var(--wsb-rail-card-width, 280px);
	max-width: var(--wsb-rail-card-width, 280px);
}

.wsb-shop-carousel-section .wsb-shop-strip-rail {
	--wsb-rail-card-width: 232px;
}

.wsb-shop-reels-section .wsb-shop-strip-rail {
	--wsb-rail-card-width: 260px;
}

@media (max-width: 640px) {
	.wsb-shop-carousel-section .wsb-shop-strip-rail {
		--wsb-rail-card-width: 54vw;
	}

	.wsb-shop-reels-section .wsb-shop-strip-rail {
		--wsb-rail-card-width: 66vw;
	}
}

/* Lock shop strip layout for horizontal rails */
.wsb-shop-strip {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
}

.wsb-shop-strip-head,
.wsb-shop-strip-rail {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

.wsb-shop-strip-rail.is-dragging {
	scroll-snap-type: none !important;
	cursor: grabbing;
}

.wsb-reel-progress {
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 76px;
	height: 4px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.18);
	overflow: hidden;
	z-index: 2;
	pointer-events: none;
}

.wsb-reel-progress-bar {
	display: block;
	width: 0%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgba(255,255,255,0.98), rgba(255, 181, 74, 0.96));
	transform-origin: left center;
	transition: width 0.12s linear;
}

/* Full-width shop strips */
.wsb-shop .wsb-shop-carousel-section,
.wsb-shop .wsb-shop-reels-section {
	position: relative;
	left: 50%;
	right: auto;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: -50vw !important;
	margin-right: 0 !important;
	transform: none !important;
	box-sizing: border-box;
	border-radius: 0;
	padding-left: 16px;
	padding-right: 16px;
}

.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head,
.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head,
.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail,
.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
	max-width: none !important;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-carousel-section,
	.wsb-shop .wsb-shop-reels-section {
		padding-left: 8px;
		padding-right: 8px;
	}

	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head,
	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head {
		padding-left: 4px;
		padding-right: 4px;
	}

	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail,
	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
		padding-left: 4px;
		padding-right: 4px;
		gap: 10px !important;
	}
}

/* Strip header separator + edge-tight first card */
.wsb-shop-strip-head h2 {
	display: flex;
	align-items: center;
	gap: 12px;
}

.wsb-shop-strip-head h2::before,
.wsb-shop-strip-head h2::after {
	content: '';
	flex: 1 1 auto;
	height: 1px;
	min-width: 48px;
	background: linear-gradient(90deg, rgba(120, 139, 173, 0.12), rgba(120, 139, 173, 0.42));
}

.wsb-shop-strip-head h2::before {
	background: linear-gradient(90deg, rgba(120, 139, 173, 0.12), rgba(120, 139, 173, 0.42));
}

.wsb-shop-strip-head h2::after {
	background: linear-gradient(90deg, rgba(120, 139, 173, 0.42), rgba(120, 139, 173, 0.12));
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-carousel-section,
	.wsb-shop .wsb-shop-reels-section {
		padding-left: 2px;
		padding-right: 6px;
	}

	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head,
	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head {
		padding-left: 8px;
		padding-right: 8px;
	}

	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail,
	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
		padding-left: 0;
		padding-right: 4px;
		gap: 8px !important;
	}

	.wsb-shop-strip-head h2 {
		gap: 10px;
	}

	.wsb-shop-strip-head h2::before,
	.wsb-shop-strip-head h2::after {
		min-width: 34px;
	}
}

/* Strip icons + sticky mini headers */
.wsb-shop-strip-head {
	position: sticky;
	top: 10px;
	z-index: 6;
	padding: 10px 0 12px;
	margin-bottom: 12px;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	background: linear-gradient(180deg, rgba(247, 250, 255, 0.92), rgba(247, 250, 255, 0.72) 72%, rgba(247, 250, 255, 0));
}

.wsb-shop-strip-title-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	border-radius: 999px;
	background: linear-gradient(135deg, rgba(255, 181, 74, 0.18), rgba(19, 103, 255, 0.16));
	color: var(--wsb-primary-deep);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.76);
}

.wsb-shop-strip-title-icon svg {
	width: 16px;
	height: 16px;
}

.wsb-shop-strip-title-text {
	flex: 0 1 auto;
}

.wsb-shop-strip-head h2 {
	gap: 10px;
}

.wsb-shop-strip-head h2::before,
.wsb-shop-strip-head h2::after {
	height: 1px;
	background: linear-gradient(90deg, rgba(160, 179, 212, 0.06), rgba(160, 179, 212, 0.38), rgba(160, 179, 212, 0.08));
}

.wsb-shop-strip-head h2::after {
	background: linear-gradient(90deg, rgba(160, 179, 212, 0.08), rgba(160, 179, 212, 0.38), rgba(160, 179, 212, 0.06));
}

@media (max-width: 640px) {
	.wsb-shop-strip-head {
		top: 0;
		padding: 8px 8px 10px;
		margin-bottom: 10px;
	}

	.wsb-shop-strip-title-icon {
		width: 24px;
		height: 24px;
		flex-basis: 24px;
	}

	.wsb-shop-strip-title-icon svg {
		width: 14px;
		height: 8px;
	}
}

/* Full-width strip title line + smaller carousel cards */
.wsb-shop-strip-head > div {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}

.wsb-shop-strip-head h2 {
	width: 100%;
}

.wsb-shop-strip-head h2::before,
.wsb-shop-strip-head h2::after {
	flex: 1 1 0%;
	min-width: 0;
}

.wsb-shop-carousel-section .wsb-shop-strip-rail {
	--wsb-rail-card-width: 216px;
}

@media (max-width: 640px) {
	.wsb-shop-carousel-section .wsb-shop-strip-rail {
		--wsb-rail-card-width: 50vw;
	}
}

/* Extra-compact carousel tuning */
.wsb-shop-carousel-section .wsb-shop-strip-rail {
	--wsb-rail-card-width: 196px;
	gap: 10px !important;
}

.wsb-shop-carousel-section .wsb-highlight-card-body {
	padding: 10px;
	gap: 6px;
}

.wsb-shop-carousel-section .wsb-highlight-card-body h3 {
	font-size: 0.9rem;
}

.wsb-shop-carousel-section .wsb-highlight-card-link {
	min-height: 34px;
	padding: 0 10px;
	font-size: 0.8rem;
}

@media (max-width: 640px) {
	.wsb-shop-carousel-section .wsb-shop-strip-rail {
		--wsb-rail-card-width: 46vw;
		gap: 8px !important;
	}

	.wsb-shop-carousel-section .wsb-highlight-card-body {
		padding: 8px;
	}

	.wsb-shop-carousel-section .wsb-highlight-card-body .wsb-category-chip {
		padding: 5px 8px;
		font-size: 0.7rem;
	}
}

/* Final vertical spacing for carousel and reels */
.wsb-shop .wsb-shop-carousel-section,
.wsb-shop .wsb-shop-reels-section {
	margin-top: 22px !important;
	margin-bottom: 22px !important;
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

.wsb-shop .wsb-shop-reels-section::before,
.wsb-shop .wsb-shop-carousel-section::before,
.wsb-shop .wsb-shop-reels-section::after,
.wsb-shop .wsb-shop-carousel-section::after {
	content: none !important;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-carousel-section,
	.wsb-shop .wsb-shop-reels-section {
		margin-top: 18px !important;
		margin-bottom: 18px !important;
		padding-top: 14px !important;
		padding-bottom: 14px !important;
	}
}

/* Unified shop section vertical padding */
.wsb-shop .wsb-shop-top-search,
.wsb-shop .wsb-shop-carousel-section,
.wsb-shop .wsb-shop-reels-section,
.wsb-shop .wsb-shop-results-bar {
	padding-top: 14px !important;
	padding-bottom: 14px !important;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-top-search,
	.wsb-shop .wsb-shop-carousel-section,
	.wsb-shop .wsb-shop-reels-section,
	.wsb-shop .wsb-shop-results-bar {
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}
}

/* Unified shop section horizontal padding */
.wsb-shop .wsb-shop-top-search,
.wsb-shop .wsb-shop-carousel-section,
.wsb-shop .wsb-shop-reels-section,
.wsb-shop .wsb-shop-results-bar {
	padding-left: 16px !important;
	padding-right: 16px !important;
}

.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head,
.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head,
.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail,
.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-top-search,
	.wsb-shop .wsb-shop-carousel-section,
	.wsb-shop .wsb-shop-reels-section,
	.wsb-shop .wsb-shop-results-bar {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}

	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head,
	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head,
	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail,
	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* Section divider before product grid */
.wsb-shop-section-divider {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	margin: 10px 0 12px;
	color: var(--wsb-text-soft);
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.wsb-shop-section-divider::before,
.wsb-shop-section-divider::after {
	content: '';
	flex: 1 1 0%;
	height: 1px;
	background: linear-gradient(90deg, rgba(120, 139, 173, 0.08), rgba(120, 139, 173, 0.35), rgba(120, 139, 173, 0.08));
}

.wsb-shop-section-divider::after {
	background: linear-gradient(90deg, rgba(120, 139, 173, 0.08), rgba(120, 139, 173, 0.35), rgba(120, 139, 173, 0.08));
}

@media (max-width: 640px) {
	.wsb-shop-section-divider {
		gap: 10px;
		margin: 8px 0 10px;
		font-size: 0.8rem;
	}
}

/* Match carousel/reels headers to More Products divider */
.wsb-shop-strip-head {
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

.wsb-shop-strip-head .wsb-eyebrow,
.wsb-shop-strip-head p {
	display: none !important;
}

.wsb-shop-strip-head h2 {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	margin: 0;
	color: var(--wsb-text-soft);
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.2;
}

.wsb-shop-strip-head h2::before,
.wsb-shop-strip-head h2::after {
	content: '';
	flex: 1 1 0%;
	height: 1px;
	min-width: 0;
	background: linear-gradient(90deg, rgba(120, 139, 173, 0.08), rgba(120, 139, 173, 0.35), rgba(120, 139, 173, 0.08));
}

.wsb-shop-strip-title-icon {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	background: transparent;
	box-shadow: none;
	border-radius: 0;
	color: var(--wsb-text-soft);
}

.wsb-shop-strip-title-icon svg {
	width: 14px;
	height: 14px;
}

@media (max-width: 640px) {
	.wsb-shop-strip-head {
		padding: 0 0 8px !important;
		margin-bottom: 8px;
	}

	.wsb-shop-strip-head h2 {
		gap: 10px;
		font-size: 0.8rem;
	}

	.wsb-shop-strip-title-icon {
		width: 18px;
		height: 18px;
		flex-basis: 18px;
	}
}

/* Remove strip header icons for divider-style titles */
.wsb-shop-strip-title-icon {
	display: none !important;
}

.wsb-shop-strip-head h2 {
	gap: 10px;
}

/* Final unified spacing between shop parts */
.wsb-shop > .wsb-shop-intro,
.wsb-shop > .wsb-shop-top-search,
.wsb-shop > .wsb-shop-carousel-section,
.wsb-shop > .wsb-shop-reels-section,
.wsb-shop > .wsb-shop-section-divider,
.wsb-shop > .wsb-shop-results-bar,
.wsb-shop > .wsb-shop-chips,
.wsb-shop > #wsb-catalog-grid,
.wsb-shop > .wsb-load-more-wrap {
	margin-top: 8px !important;
	margin-bottom: 8px !important;
}

.wsb-shop > :first-child {
	margin-top: 0 !important;
}

.wsb-shop > .wsb-quick-view-modal,
.wsb-shop > .wsb-mobile-filter-overlay,
.wsb-shop > .wsb-shop-filter-panel,
.wsb-shop > .wsb-shop-sticky-contact {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

@media (max-width: 640px) {
	.wsb-shop > .wsb-shop-intro,
	.wsb-shop > .wsb-shop-top-search,
	.wsb-shop > .wsb-shop-carousel-section,
	.wsb-shop > .wsb-shop-reels-section,
	.wsb-shop > .wsb-shop-section-divider,
	.wsb-shop > .wsb-shop-results-bar,
	.wsb-shop > .wsb-shop-chips,
	.wsb-shop > #wsb-catalog-grid,
	.wsb-shop > .wsb-load-more-wrap {
		margin-top: 6px !important;
		margin-bottom: 6px !important;
	}
}


/* Full-width shop intro card and search form */
.wsb-shop > .wsb-shop-intro,
.wsb-shop > .wsb-shop-top-search {
	width: 100% !important;
	max-width: none !important;
}

.wsb-shop .wsb-shop-intro .wsb-shop-summary,
.wsb-shop .wsb-shop-top-search,
.wsb-shop .wsb-shop-top-search-form {
	width: 100% !important;
	max-width: none !important;
}

@media (max-width: 640px) {
	.wsb-shop > .wsb-shop-intro,
	.wsb-shop > .wsb-shop-top-search {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.wsb-shop .wsb-mobile-header-shell {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* Desktop shop toolbar above slider */
.wsb-shop .wsb-shop-desktop-toolbar {
	display: none;
}

@media (min-width: 981px) {
	.wsb-shop .wsb-shop-intro {
		display: grid !important;
		grid-template-columns: minmax(340px, 0.88fr) minmax(0, 1.12fr) !important;
		grid-template-areas:
			'toolbar toolbar'
			'summary header' !important;
			gap: 24px !important;
	}

	.wsb-shop .wsb-shop-desktop-toolbar {
		display: grid;
		grid-area: toolbar;
		grid-template-columns: minmax(220px, auto) minmax(420px, 1fr) minmax(240px, auto);
		align-items: center;
		gap: 16px;
		padding: 14px 18px;
		border-radius: 24px;
		background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(243,246,249,0.94));
		border: 1px solid rgba(120, 139, 173, 0.14);
		box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08);
	}

	.wsb-shop .wsb-shop-summary {
		grid-area: summary;
	}

	.wsb-shop .wsb-shop-header {
		grid-area: header;
	}

	.wsb-shop > .wsb-shop-top-search {
		display: none !important;
	}

	.wsb-shop .wsb-shop-desktop-brand {
		display: flex;
		align-items: center;
		gap: 12px;
		min-width: 0;
	}

	.wsb-shop .wsb-shop-desktop-brand-avatar {
		width: 56px;
		height: 56px;
		border-radius: 18px;
		overflow: hidden;
		display: grid;
		place-items: center;
		background: linear-gradient(135deg, rgba(19, 103, 255, 0.16), rgba(15, 23, 42, 0.08));
		color: var(--wsb-primary-deep);
		font-weight: 800;
		font-size: 1rem;
		flex: 0 0 56px;
	}

	.wsb-shop .wsb-shop-desktop-brand-avatar img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.wsb-shop .wsb-shop-desktop-brand-copy {
		display: grid;
		gap: 3px;
		min-width: 0;
	}

	.wsb-shop .wsb-shop-desktop-brand-copy strong,
	.wsb-shop .wsb-shop-desktop-brand-copy span {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.wsb-shop .wsb-shop-desktop-brand-copy strong {
		font-size: 1.02rem;
		line-height: 1.1;
		color: var(--wsb-text-strong);
	}

	.wsb-shop .wsb-shop-desktop-brand-copy span {
		font-size: 0.8rem;
		color: var(--wsb-text-soft);
	}

	.wsb-shop .wsb-shop-desktop-search-form {
		width: 100%;
		max-width: 760px;
		margin: 0 auto;
	}

	.wsb-shop .wsb-shop-desktop-search-controls {
		display: grid;
		grid-template-columns: minmax(170px, 0.34fr) minmax(0, 1fr) 48px auto;
		align-items: center;
		gap: 10px;
		width: 100%;
		padding: 8px;
		border-radius: 20px;
		background: rgba(255,255,255,0.92);
		border: 1px solid rgba(120, 139, 173, 0.14);
		box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 12px 26px rgba(15, 23, 42, 0.05);
	}

	.wsb-shop .wsb-shop-desktop-search-controls .wsb-shop-search-select-wrap,
	.wsb-shop .wsb-shop-desktop-search-controls .wsb-shop-search-input-wrap {
		min-width: 0;
	}

	.wsb-shop .wsb-shop-desktop-search-controls .wsb-btn {
		min-height: 48px;
	}

	.wsb-shop .wsb-shop-desktop-actions {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		min-width: 0;
	}

	.wsb-shop .wsb-shop-desktop-actions .wsb-contact {
		display: inline-flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		gap: 10px;
	}

	.wsb-shop .wsb-shop-desktop-actions .wsb-btn {
		min-height: 46px;
		padding: 0 16px;
		white-space: nowrap;
	}
}

@media (max-width: 980px) {
	.wsb-shop .wsb-shop-desktop-toolbar {
		display: none !important;
	}
}


/* Desktop toolbar polish */
@media (min-width: 981px) {
	.wsb-shop .wsb-shop-desktop-search-controls .wsb-shop-search-input-wrap {
		position: relative;
		min-width: 0;
	}

	.wsb-shop .wsb-shop-desktop-search-controls input {
		width: 100%;
		min-height: 50px;
		padding: 0 52px 0 44px;
		border-radius: 14px;
		border: 1px solid rgba(120, 139, 173, 0.16);
		background: rgba(248, 250, 255, 0.98);
		box-shadow: inset 0 1px 0 rgba(255,255,255,0.86);
		font-size: 0.96rem;
		color: var(--wsb-text-strong);
	}

	.wsb-shop .wsb-shop-desktop-search-controls input::placeholder {
		color: rgba(71, 85, 105, 0.76);
	}

	.wsb-shop .wsb-shop-desktop-search-controls .wsb-shop-search-submit {
		right: 7px;
		width: 38px;
		height: 38px;
		border-radius: 12px;
	}

	.wsb-shop .wsb-shop-desktop-search-controls .wsb-shop-search-submit .wsb-btn-icon,
	.wsb-shop .wsb-shop-desktop-search-controls .wsb-shop-search-submit svg {
		width: 16px;
		height: 16px;
	}

	.wsb-shop .wsb-shop-desktop-actions {
		gap: 10px;
	}

	.wsb-shop .wsb-shop-desktop-actions > .wsb-btn-primary {
		min-height: 46px;
		padding: 0 18px;
		border-radius: 14px;
		white-space: nowrap;
	}

	.wsb-shop .wsb-shop-summary .wsb-shop-banner-actions-desktop {
		display: none !important;
	}
}

/* Remove duplicate desktop info card beside slider */
@media (min-width: 981px) {
	.wsb-shop .wsb-shop-intro {
		grid-template-columns: 1fr !important;
		grid-template-areas:
			'toolbar'
			'header' !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-summary {
		display: none !important;
	}

	.wsb-shop .wsb-shop-intro .wsb-shop-header {
		grid-area: header;
		width: 100%;
	}
}

/* Sticky contact bar without copy text */
.wsb-shop-sticky-contact {
	grid-template-columns: 1fr !important;
	justify-items: center;
	gap: 0 !important;
}

.wsb-shop-sticky-contact-actions,
.wsb-shop-sticky-contact-actions .wsb-contact {
	width: 100%;
	justify-content: center !important;
}

/* Final sticky contact bar: fixed floating icon stack */
.wsb-shop-sticky-contact {
	position: fixed !important;
	right: 16px !important;
	left: auto !important;
	bottom: calc(18px + env(safe-area-inset-bottom, 0px)) !important;
	transform: none !important;
	z-index: 999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	max-width: none !important;
	padding: 10px !important;
	border-radius: 20px !important;
	background: rgba(255, 255, 255, 0.92) !important;
	border: 1px solid rgba(120, 139, 173, 0.18) !important;
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.16) !important;
	backdrop-filter: blur(16px) !important;
	-webkit-backdrop-filter: blur(16px) !important;
}

.wsb-shop-sticky-contact-actions,
.wsb-shop-sticky-contact-actions .wsb-contact {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	width: auto !important;
}

.wsb-shop-sticky-contact-actions .wsb-btn {
	min-width: 0 !important;
	width: 50px !important;
	height: 50px !important;
	padding: 0 !important;
	border-radius: 16px !important;
	justify-content: center !important;
	box-shadow: none !important;
}

.wsb-shop-sticky-contact-actions .wsb-btn-label {
	display: none !important;
}

.wsb-shop-sticky-contact-actions .wsb-btn-icon,
.wsb-shop-sticky-contact-actions .wsb-btn-icon svg {
	width: 20px !important;
	height: 20px !important;
}

@media (max-width: 640px) {
	.wsb-shop-sticky-contact {
		right: 10px !important;
		bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
		padding: 8px !important;
		border-radius: 18px !important;
	}

	.wsb-shop-sticky-contact-actions,
	.wsb-shop-sticky-contact-actions .wsb-contact {
		gap: 8px !important;
	}

	.wsb-shop-sticky-contact-actions .wsb-btn {
		width: 46px !important;
		height: 46px !important;
		border-radius: 14px !important;
	}
}

/* Shop product card media gallery */
.wsb-shop .wsb-card-media {
	display: grid;
	gap: 10px;
	margin-bottom: 14px;
}

.wsb-shop .wsb-card-media-main {
	position: relative;
	border-radius: 20px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.78);
}

.wsb-shop .wsb-card-media-panel {
	display: none;
}

.wsb-shop .wsb-card-media-panel.is-active {
	display: block;
}

.wsb-shop .wsb-card-media .wsb-card-thumb {
	margin-bottom: 0;
}

.wsb-shop .wsb-card-video {
	position: relative;
	border-radius: 20px;
	overflow: hidden;
	background: #0f172a;
}

.wsb-shop .wsb-card-video video,
.wsb-shop .wsb-card-video iframe {
	display: block;
	width: 100%;
	height: clamp(220px, 24vw, 310px);
	border: 0;
}

.wsb-shop .wsb-card-video video {
	object-fit: cover;
}

.wsb-shop .wsb-card-media-thumbs {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding-bottom: 2px;
	scrollbar-width: none;
}

.wsb-shop .wsb-card-media-thumbs::-webkit-scrollbar {
	display: none;
}

.wsb-shop .wsb-card-media-thumb {
	position: relative;
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	padding: 0;
	border-radius: 16px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	background: rgba(255,255,255,0.95);
	overflow: hidden;
	cursor: pointer;
	box-shadow: 0 8px 16px rgba(15, 23, 42, 0.06);
}

.wsb-shop .wsb-card-media-thumb.is-active {
	border-color: rgba(19, 103, 255, 0.36);
	box-shadow: 0 0 0 3px rgba(19, 103, 255, 0.12);
}

.wsb-shop .wsb-card-media-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.wsb-shop .wsb-card-media-thumb-play,
.wsb-shop .wsb-card-media-thumb-fallback {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.18), rgba(15, 23, 42, 0.52));
	color: #fff;
}

.wsb-shop .wsb-card-media-thumb-play svg,
.wsb-shop .wsb-card-media-thumb-fallback svg {
	width: 18px;
	height: 18px;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-card-media {
		gap: 8px;
		margin-bottom: 12px;
	}

	.wsb-shop .wsb-card-media-thumb {
		flex-basis: 50px;
		width: 50px;
		height: 50px;
		border-radius: 14px;
	}

}

.wsb-shop .wsb-card-thumb-fallback {
	display: grid;
	place-items: center;
	height: clamp(220px, 24vw, 310px);
	border-radius: 20px;
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.14), rgba(15, 23, 42, 0.08));
	color: var(--wsb-primary-deep);
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 800;
}

.wsb-shop .wsb-card-video-badge,
.wsb-shop .wsb-card-media-thumb-badge {
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.74);
	color: #fff;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	backdrop-filter: blur(10px);
}

.wsb-shop .wsb-card-video-badge {
	top: 10px;
	left: 10px;
	z-index: 2;
}

.wsb-shop .wsb-card-media-thumb-badge {
	top: 6px;
	left: 6px;
	padding: 3px 6px;
	font-size: 0.54rem;
	z-index: 2;
}

.wsb-shop .wsb-card-video-mute {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.72);
	color: #fff;
	cursor: pointer;
	backdrop-filter: blur(10px);
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.22);
}

.wsb-shop .wsb-card-video-mute-icon {
	display: none;
	width: 18px;
	height: 18px;
}

.wsb-shop .wsb-card-video-mute.is-muted .wsb-card-video-mute-icon.is-muted,
.wsb-shop .wsb-card-video-mute.is-unmuted .wsb-card-video-mute-icon.is-unmuted {
	display: inline-flex;
}

.wsb-shop .wsb-card-video-mute svg {
	width: 100%;
	height: 100%;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-card-video-badge {
		top: 8px;
		left: 8px;
	}

	.wsb-shop .wsb-card-video-mute {
		right: 8px;
		bottom: 8px;
		width: 34px;
		height: 34px;
	}
}

.wsb-shop .wsb-card-media-switches {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}

.wsb-shop .wsb-card-media-switch {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 0 10px;
	border: 1px solid rgba(120, 139, 173, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--wsb-text-soft);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	cursor: pointer;
	white-space: nowrap;
}

.wsb-shop .wsb-card-media-switch.is-active {
	border-color: rgba(19, 103, 255, 0.3);
	background: rgba(19, 103, 255, 0.08);
	color: var(--wsb-primary-deep);
}

@media (max-width: 640px) {
	.wsb-shop .wsb-card-media-switches {
		gap: 6px;
		margin-bottom: 6px;
	}

	.wsb-shop .wsb-card-media-switch {
		min-height: 28px;
		padding: 0 9px;
		font-size: 0.68rem;
	}
}

/* Premium centered media switches */
.wsb-shop .wsb-card-media-switches {
	justify-content: center;
	margin-bottom: 10px;
}

.wsb-shop .wsb-card-media-switch {
	position: relative;
	min-height: 34px;
	padding: 0 14px;
	border-radius: 999px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,246,250,0.96));
	box-shadow: 0 10px 18px rgba(15, 23, 42, 0.06), inset 0 1px 0 rgba(255,255,255,0.86);
	color: var(--wsb-text-soft);
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.wsb-shop .wsb-card-media-switch:hover {
	transform: translateY(-1px);
	box-shadow: 0 14px 24px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255,255,255,0.9);
}

.wsb-shop .wsb-card-media-switch.is-active {
	border-color: rgba(19, 103, 255, 0.28);
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.12), rgba(255,255,255,0.98));
	color: var(--wsb-primary-deep);
	box-shadow: 0 14px 24px rgba(19, 103, 255, 0.12), inset 0 1px 0 rgba(255,255,255,0.9);
}

@media (max-width: 640px) {
	.wsb-shop .wsb-card-media-switches {
		justify-content: center;
		margin-bottom: 8px;
	}

	.wsb-shop .wsb-card-media-switch {
		min-height: 30px;
		padding: 0 12px;
		font-size: 0.68rem;
	}
}

/* Price option UI */
.wsb-field-help {
	margin: 8px 0 0;
	color: var(--wsb-text-soft);
	font-size: 0.8rem;
	line-height: 1.45;
}

.wsb-price-stack {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.wsb-price-old {
	color: rgba(100, 116, 139, 0.92);
	font-size: 0.92rem;
	text-decoration: line-through;
	text-decoration-thickness: 1.5px;
}

.wsb-price-note {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.08);
	color: var(--wsb-text-soft);
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.wsb-price-note.is-discount {
	background: rgba(22, 163, 74, 0.14);
	color: #166534;
}

.wsb-price.is-textual {
	font-size: 1rem;
}

.wsb-price-stack-card,
.wsb-price-stack-quick-view {
	gap: 6px;
}

.wsb-price-stack-card .wsb-price,
.wsb-price-stack-quick-view .wsb-price {
	font-size: 1rem;
}

.wsb-price-stack-card .wsb-price-old,
.wsb-price-stack-quick-view .wsb-price-old {
	font-size: 0.8rem;
}

.wsb-price-stack-single {
	gap: 10px;
}

.wsb-price-stack-single .wsb-price {
	font-size: clamp(1.28rem, 2vw, 1.7rem);
}

.wsb-highlight-card-price .wsb-price-note,
.wsb-reel-card-overlay-meta .wsb-price-note {
	display: none;
}

/* Product identity line and auto price badges */
.wsb-card-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.wsb-card-badges .wsb-card-badge {
	position: static;
	top: auto;
	left: auto;
}

.wsb-card-badge.is-price-badge {
	background: rgba(19, 103, 255, 0.78);
}

.wsb-card-badge.is-price-badge:nth-child(1),
.wsb-reel-card-badge-stack .wsb-card-badge.is-price-badge,
.wsb-highlight-card-overlay .wsb-card-badge.is-price-badge {
	background: rgba(19, 103, 255, 0.78);
}

.wsb-price-stack .wsb-price-note.is-discount {
	background: rgba(22, 163, 74, 0.14);
}

.wsb-shop .wsb-card-link h2,
.wsb-highlight-card-body h3,
.wsb-reel-card-overlay-bottom strong {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.wsb-shop .wsb-card-link h2 {
	font-size: 0.98rem;
	line-height: 1.28;
}

.wsb-highlight-card-body h3,
.wsb-reel-card-overlay-bottom strong {
	font-size: 0.9rem;
	line-height: 1.28;
}

.wsb-reel-card-badge-stack {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.wsb-field.is-hidden {
	display: none !important;
}

@media (max-width: 640px) {
	.wsb-card-badges {
		top: 10px;
		left: 10px;
		gap: 6px;
	}

	.wsb-shop .wsb-card-link h2,
	.wsb-highlight-card-body h3,
	.wsb-reel-card-overlay-bottom strong {
		font-size: 0.8rem;
	}
}

/* Unified product chip sizing */
.wsb-shop .wsb-card-meta {
	align-items: center;
	gap: 8px;
}

.wsb-shop .wsb-card-meta .wsb-price,
.wsb-shop .wsb-card-meta .wsb-status-chip,
.wsb-shop .wsb-card-meta .wsb-price-note,
.wsb-shop .wsb-card-badge,
.wsb-shop .wsb-card-video-badge,
.wsb-shop .wsb-card-media-thumb-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 0 12px;
	border-radius: 999px;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1;
}

.wsb-shop .wsb-card-meta .wsb-price-note {
	padding: 0 12px;
}

.wsb-shop .wsb-card-media-thumb-badge {
	min-height: 20px;
	padding: 0 7px;
	font-size: 0.52rem;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-card-meta .wsb-price,
	.wsb-shop .wsb-card-meta .wsb-status-chip,
	.wsb-shop .wsb-card-meta .wsb-price-note,
	.wsb-shop .wsb-card-badge,
	.wsb-shop .wsb-card-video-badge {
		min-height: 30px;
		padding: 0 11px;
		font-size: 0.72rem;
	}
}

/* Premium chip colors */
.wsb-shop .wsb-card-meta .wsb-price {
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.14), rgba(37, 99, 235, 0.08));
	border: 1px solid rgba(37, 99, 235, 0.18);
	color: #123a8c;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 8px 16px rgba(37, 99, 235, 0.08);
}

.wsb-shop .wsb-card-meta .wsb-status-chip {
	background: linear-gradient(135deg, rgba(22, 163, 74, 0.16), rgba(34, 197, 94, 0.08));
	border: 1px solid rgba(22, 163, 74, 0.18);
	color: #166534;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 8px 16px rgba(22, 163, 74, 0.08);
}

.wsb-shop .wsb-card-meta .wsb-price-note {
	background: linear-gradient(135deg, rgba(15, 23, 42, 0.08), rgba(51, 65, 85, 0.05));
	border: 1px solid rgba(100, 116, 139, 0.16);
	color: #334155;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7), 0 8px 16px rgba(15, 23, 42, 0.05);
}

.wsb-shop .wsb-card-meta .wsb-price-note.is-discount,
.wsb-shop .wsb-card-badge.is-price-badge {
	background: linear-gradient(135deg, rgba(245, 158, 11, 0.2), rgba(249, 115, 22, 0.12));
	border: 1px solid rgba(245, 158, 11, 0.24);
	color: #9a3412;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7), 0 10px 18px rgba(245, 158, 11, 0.08);
}

.wsb-shop .wsb-card-badge {
	background: linear-gradient(135deg, rgba(15, 23, 42, 0.84), rgba(30, 41, 59, 0.74));
	border: 1px solid rgba(255,255,255,0.12);
	color: #f8fafc;
	box-shadow: 0 12px 20px rgba(15, 23, 42, 0.14);
}

.wsb-shop .wsb-card-video-badge,
.wsb-shop .wsb-card-media-thumb-badge {
	background: linear-gradient(135deg, rgba(124, 58, 237, 0.84), rgba(99, 102, 241, 0.72));
	border: 1px solid rgba(255,255,255,0.14);
	color: #f8fafc;
	box-shadow: 0 10px 18px rgba(99, 102, 241, 0.14);
}


.wsb-shop .wsb-card-badge.is-price-badge.is-price-badge-discount,
.wsb-shop .wsb-price-note.is-discount {
	background: linear-gradient(135deg, rgba(22, 163, 74, 0.2), rgba(34, 197, 94, 0.12));
	border: 1px solid rgba(22, 163, 74, 0.24);
	color: #166534;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7), 0 10px 18px rgba(22, 163, 74, 0.08);
}

.wsb-shop .wsb-card-badge.is-price-badge.is-price-badge-fixed {
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.2), rgba(37, 99, 235, 0.12));
	border: 1px solid rgba(37, 99, 235, 0.24);
	color: #123a8c;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7), 0 10px 18px rgba(37, 99, 235, 0.08);
}

/* Prevent carousel/reel badge overlap */
.wsb-highlight-card-overlay {
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	row-gap: 8px;
}

.wsb-highlight-card-overlay .wsb-card-badge,
.wsb-highlight-card-overlay .wsb-status-chip {
	flex: 0 0 auto;
}

.wsb-highlight-card-price {
	margin-left: auto;
}

.wsb-reel-card-overlay-top {
	grid-template-columns: minmax(0, 1fr) auto;
	grid-auto-flow: unset;
	align-items: start;
	column-gap: 10px;
}

.wsb-reel-card-badge-stack {
	max-width: 100%;
	min-width: 0;
}

.wsb-reel-card-badge-stack .wsb-reel-card-badge,
.wsb-reel-card-badge-stack .wsb-card-badge {
	max-width: 100%;
}

@media (max-width: 640px) {
	.wsb-highlight-card-overlay,
	.wsb-reel-card-overlay-top {
		row-gap: 6px;
	}

	.wsb-highlight-card-overlay {
		left: 10px;
		right: 10px;
		bottom: 10px;
	}

	.wsb-reel-card-overlay-top,
	.wsb-reel-card-overlay-bottom {
		left: 10px;
		right: 10px;
	}
}

/* Reel + carousel price badge placement fixes */
.wsb-reel-card-badge-stack {
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 8px;
}

.wsb-highlight-card-top-badges {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.wsb-highlight-card-overlay {
	justify-content: space-between;
}

@media (max-width: 640px) {
	.wsb-highlight-card-top-badges {
		top: 10px;
		left: 10px;
		gap: 6px;
	}

	.wsb-reel-card-badge-stack {
		gap: 6px;
	}
}

/* Product share row */
.wsb-product-share {
	display: grid;
	gap: 10px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(120, 139, 173, 0.12);
}

.wsb-product-share-label {
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wsb-text-soft);
}

.wsb-product-share-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.wsb-product-share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid rgba(120, 139, 173, 0.16);
	border-radius: 12px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,246,250,0.96));
	color: var(--wsb-text-strong);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.8), 0 8px 16px rgba(15, 23, 42, 0.05);
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.wsb-product-share-btn:hover {
	transform: translateY(-1px);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.86), 0 12px 18px rgba(15, 23, 42, 0.08);
}

.wsb-product-share-icon,
.wsb-product-share-icon svg {
	width: 17px;
	height: 17px;
}

.wsb-product-share-btn.is-whatsapp { color: #15803d; }
.wsb-product-share-btn.is-telegram { color: #0f5a86; }
.wsb-product-share-btn.is-facebook { color: #1d4ed8; }
.wsb-product-share-btn.is-instagram { color: #be185d; }
.wsb-product-share-btn.is-tiktok { color: #111827; }
.wsb-product-share-btn.is-copy { color: #334155; }

.wsb-product-share-feedback {
	min-height: 18px;
	font-size: 0.74rem;
	font-weight: 700;
	color: var(--wsb-primary-deep);
	opacity: 0;
	transition: opacity 0.18s ease;
}

.wsb-product-share.is-copy-feedback-visible .wsb-product-share-feedback {
	opacity: 1;
}

@media (max-width: 640px) {
	.wsb-product-share {
		gap: 8px;
		margin-top: 10px;
		padding-top: 10px;
	}

	.wsb-product-share-actions {
		gap: 6px;
	}

	.wsb-product-share-btn {
		width: 36px;
		height: 36px;
		border-radius: 11px;
	}
}

.wsb-quick-view-modal[hidden] {
	display: none !important;
}

/* Quick view media + chip alignment */
.wsb-quick-view-media .wsb-card-media {
	gap: 12px;
	margin-bottom: 0;
}

.wsb-quick-view-media .wsb-card-media-panel {
	display: none;
}

.wsb-quick-view-media .wsb-card-media-panel.is-active {
	display: block;
}

.wsb-quick-view-media .wsb-card-media-main {
	background: transparent;
}

.wsb-quick-view-media .wsb-card-thumb,
.wsb-quick-view-media .wsb-card-thumb img,
.wsb-quick-view-media .wsb-card-video video,
.wsb-quick-view-media .wsb-card-video iframe,
.wsb-quick-view-media .wsb-card-thumb-fallback {
	width: 100%;
	min-height: 360px;
	border-radius: 24px;
}

.wsb-quick-view-media .wsb-card-thumb img,
.wsb-quick-view-media .wsb-card-video video {
	object-fit: cover;
}

.wsb-quick-view-media .wsb-card-media-thumbs {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding-bottom: 2px;
	justify-content: flex-start;
	scrollbar-width: none;
}

.wsb-quick-view-media .wsb-card-media-thumbs::-webkit-scrollbar {
	display: none;
}

.wsb-quick-view-media .wsb-card-media-thumb {
	position: relative;
	flex: 0 0 62px;
	width: 62px;
	height: 62px;
	padding: 0;
	border: 1px solid rgba(120, 139, 173, 0.18);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.96);
	overflow: hidden;
	cursor: pointer;
	box-shadow: 0 8px 16px rgba(15, 23, 42, 0.08);
}

.wsb-quick-view-media .wsb-card-media-thumb.is-active {
	border-color: rgba(19, 103, 255, 0.34);
	box-shadow: 0 0 0 3px rgba(19, 103, 255, 0.12);
}

.wsb-quick-view-media .wsb-card-media-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	border-radius: 0;
	object-fit: cover;
	box-shadow: none;
}

.wsb-quick-view-media .wsb-card-media-thumb-play,
.wsb-quick-view-media .wsb-card-media-thumb-fallback {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.18), rgba(15, 23, 42, 0.56));
	color: #fff;
}

.wsb-quick-view-media .wsb-card-media-thumb-play svg,
.wsb-quick-view-media .wsb-card-media-thumb-fallback svg {
	width: 18px;
	height: 18px;
}

.wsb-quick-view-media .wsb-card-media-thumb-badge {
	position: absolute;
	top: 6px;
	left: 6px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 3px 6px;
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.76);
	color: #fff;
	font-size: 0.54rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	backdrop-filter: blur(10px);
}

.wsb-quick-view-media .wsb-card-media-switches {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 10px;
}

.wsb-quick-view-media .wsb-card-media-switch {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 14px;
	border: 1px solid rgba(120, 139, 173, 0.18);
	border-radius: 999px;
	background: rgba(247, 249, 252, 0.92);
	color: var(--wsb-text-soft);
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
}

.wsb-quick-view-media .wsb-card-media-switch.is-active {
	background: linear-gradient(135deg, rgba(19, 103, 255, 0.14), rgba(19, 103, 255, 0.22));
	border-color: rgba(19, 103, 255, 0.28);
	color: var(--wsb-primary-deep);
}

.wsb-quick-view-body .wsb-card-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 14px;
}

.wsb-quick-view-body .wsb-quick-view-actions {
	display: grid;
	gap: 12px;
	margin-top: 20px;
	padding: 16px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(246, 249, 255, 0.98));
	border: 1px solid rgba(120, 139, 173, 0.14);
	box-shadow: 0 16px 30px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.wsb-quick-view-body .wsb-actions {
	display: block;
	margin: 0;
}

.wsb-quick-view-body .wsb-actions .wsb-btn {
	width: 100%;
}

.wsb-quick-view-body .wsb-contact {
	display: flex;
	flex-wrap: nowrap;
	gap: 10px;
}

.wsb-quick-view-body .wsb-contact .wsb-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 0;
	width: 100%;
	height: 100%;
	min-height: 46px;
	padding: 0 12px;
	border-radius: 16px;
}

.wsb-quick-view-body .wsb-price,
.wsb-quick-view-body .wsb-status-chip,
.wsb-quick-view-body .wsb-price-note,
.wsb-quick-view-body .wsb-price-old {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 0 12px;
	border-radius: 999px;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1;
}

.wsb-quick-view-body .wsb-price-old {
	text-decoration-thickness: 1.5px;
}

.wsb-quick-view-body .wsb-product-share {
	display: grid;
	gap: 8px;
	margin-top: 0;
	padding-top: 10px;
	border-top: 1px solid rgba(120, 139, 173, 0.12);
}

.wsb-quick-view-body .wsb-product-share-label {
	font-size: 0.68rem;
	letter-spacing: 0.12em;
	color: rgba(51, 65, 85, 0.78);
}

.wsb-quick-view-body .wsb-product-share-actions {
	gap: 6px;
}

.wsb-quick-view-body .wsb-product-share-btn {
	width: 34px;
	height: 34px;
	border-radius: 11px;
}

.wsb-quick-view-body .wsb-product-share-icon,
.wsb-quick-view-body .wsb-product-share-icon svg {
	width: 15px;
	height: 15px;
}

.wsb-quick-view-body .wsb-product-share-feedback {
	min-height: 14px;
	font-size: 0.68rem;
}

@media (max-width: 900px) {
	.wsb-quick-view-media .wsb-card-thumb,
	.wsb-quick-view-media .wsb-card-thumb img,
	.wsb-quick-view-media .wsb-card-video video,
	.wsb-quick-view-media .wsb-card-video iframe,
	.wsb-quick-view-media .wsb-card-thumb-fallback {
		min-height: 260px;
	}

	.wsb-quick-view-media .wsb-card-media-thumb {
		flex-basis: 56px;
		width: 56px;
		height: 56px;
	}

	.wsb-quick-view-body .wsb-quick-view-actions {
		padding: 15px;
		border-radius: 22px;
	}

	.wsb-quick-view-body .wsb-contact {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.wsb-quick-view-body .wsb-price,
	.wsb-quick-view-body .wsb-status-chip,
	.wsb-quick-view-body .wsb-price-note,
	.wsb-quick-view-body .wsb-price-old {
		min-height: 30px;
		padding: 0 11px;
		font-size: 0.72rem;
	}

	.wsb-quick-view-body .wsb-quick-view-actions {
		gap: 10px;
		margin-top: 16px;
		padding: 12px;
		border-radius: 18px;
	}

	.wsb-quick-view-body .wsb-contact {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.wsb-quick-view-body .wsb-contact .wsb-btn {
		min-height: 42px;
		padding: 0 10px;
	}
}


/* Rich product detail blocks */
.wsb-repeat-wrap {
	display: grid;
	gap: 12px;
}

.wsb-add-spec-row,
.wsb-add-detail-section {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 16px;
	border: 1px solid rgba(19, 103, 255, 0.18);
	border-radius: 14px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,247,255,0.96));
	color: var(--wsb-primary-deep);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
}

.wsb-add-detail-section[disabled] {
	opacity: 0.55;
	cursor: not-allowed;
}



.wsb-detail-sections,
.wsb-detail-sections-display {
	display: grid;
	gap: 16px;
}

.wsb-detail-section,
.wsb-detail-display-card {
	display: grid;
	gap: 14px;
	padding: 16px;
	border: 1px solid rgba(120, 139, 173, 0.14);
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,249,255,0.98));
	box-shadow: 0 12px 26px rgba(15, 23, 42, 0.06);
}

.wsb-detail-section textarea {
	min-height: 140px;
}

.wsb-detail-display-media img {
	width: 100%;
	border-radius: 18px;
	display: block;
}

.wsb-detail-display-copy h3,
.wsb-quick-view-subsection h3 {
	margin: 0 0 10px;
	font-size: 1.05rem;
}

.wsb-detail-display-text p:last-child {
	margin-bottom: 0;
}

.wsb-spec-table {
	display: grid;
	border: 1px solid rgba(120, 139, 173, 0.14);
	border-radius: 20px;
	overflow: hidden;
	background: rgba(255,255,255,0.94);
}

.wsb-spec-row {
	display: grid;
	grid-template-columns: minmax(160px, 0.8fr) minmax(0, 1.2fr);
	gap: 0;
	border-bottom: 1px solid rgba(120, 139, 173, 0.12);
}

.wsb-spec-row:last-child {
	border-bottom: 0;
}

.wsb-spec-label,
.wsb-spec-value {
	padding: 12px 16px;
}

.wsb-spec-label {
	background: rgba(241,245,249,0.78);
	font-weight: 800;
	color: var(--wsb-text-strong);
}

.wsb-spec-value {
	color: var(--wsb-text-soft);
}







.wsb-quick-view-subsection {
	display: grid;
	gap: 10px;
	margin-top: 16px;
}

@media (max-width: 640px) {
	.wsb-spec-row {
		grid-template-columns: 1fr;
	}

	.wsb-detail-section,
	.wsb-detail-display-card,

}


/* Product tabbed layout */
.wsb-product-tabs-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
	padding: 10px;
	border: 1px solid rgba(120, 139, 173, 0.14);
	border-radius: 22px;
	background: rgba(255,255,255,0.9);
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.05);
}

.wsb-product-tab-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 16px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: transparent;
	color: var(--wsb-text-soft);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
	transition: all 0.18s ease;
}

.wsb-product-tab-btn.is-active {
	background: linear-gradient(135deg, rgba(19,103,255,0.14), rgba(19,103,255,0.22));
	border-color: rgba(19,103,255,0.2);
	color: var(--wsb-primary-deep);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 8px 18px rgba(19,103,255,0.12);
}

.wsb-product-main [data-product-tab-panel] {
	display: none;
}

.wsb-product-main [data-product-tab-panel].is-active {
	display: block;
}

/* Builder detail section editor */
.wsb-detail-section-top {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}

.wsb-detail-section-handle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 12px;
	background: rgba(19,103,255,0.08);
	color: var(--wsb-primary-deep);
	font-size: 1.1rem;
	cursor: grab;
	user-select: none;
}

.wsb-detail-section-title {
	font-size: 0.9rem;
	font-weight: 800;
	color: var(--wsb-text-strong);
}

.wsb-detail-section.is-dragging {
	opacity: 0.55;
	transform: scale(0.985);
}

/* Richer spec table */
.wsb-spec-row:nth-child(odd) .wsb-spec-label {
	background: rgba(238, 244, 255, 0.78);
}

.wsb-spec-row:nth-child(odd) .wsb-spec-value {
	background: rgba(255,255,255,0.98);
}

.wsb-spec-row:nth-child(even) .wsb-spec-label {
	background: rgba(241,245,249,0.9);
}

.wsb-spec-row:nth-child(even) .wsb-spec-value {
	background: rgba(248,250,252,0.95);
}

.wsb-spec-row:hover .wsb-spec-label,
.wsb-spec-row:hover .wsb-spec-value {
	background: rgba(226, 236, 255, 0.78);
}

@media (max-width: 640px) {
	.wsb-product-tabs-nav {
		gap: 8px;
		padding: 8px;
		margin-bottom: 14px;
	}

	.wsb-product-tab-btn {
		min-height: 38px;
		padding: 0 12px;
		font-size: 0.8rem;
	}
}


.wsb-detail-section-upload-row {
	display: grid;
	gap: 6px;
}

.wsb-detail-section-upload-row input[type="file"] {
	padding: 10px 12px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	border-radius: 14px;
	background: rgba(255,255,255,0.94);
}


.wsb-detail-section-grid {
	display: grid;
	grid-template-columns: minmax(220px, 0.9fr) minmax(0, 1.1fr);
	gap: 16px;
	align-items: start;
}

.wsb-detail-section-media-column,
.wsb-detail-section-content-column {
	display: grid;
	gap: 10px;
}

.wsb-detail-section-preview {
	display: grid;
	place-items: center;
	min-height: 220px;
	border: 1px dashed rgba(120, 139, 173, 0.24);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(248,250,252,0.98), rgba(241,245,249,0.94));
	color: var(--wsb-text-soft);
	text-align: center;
	padding: 14px;
	overflow: hidden;
}

.wsb-detail-section-preview img {
	width: 100%;
	height: 100%;
	min-height: 220px;
	object-fit: cover;
	border-radius: 14px;
	display: block;
}

.wsb-detail-section-media-column select,
.wsb-detail-section-content-column input,
.wsb-detail-section-content-column textarea {
	width: 100%;
}

.wsb-detail-section-upload-row {
	padding: 10px 12px;
	border: 1px solid rgba(120, 139, 173, 0.14);
	border-radius: 16px;
	background: rgba(255,255,255,0.88);
}

.wsb-detail-section-upload-row input[type="file"] {
	width: 100%;
}

@media (max-width: 720px) {
	.wsb-detail-section-grid {
		grid-template-columns: 1fr;
	}

	.wsb-detail-section-preview,
	.wsb-detail-section-preview img {
		min-height: 180px;
	}
}


.wsb-detail-sections-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 12px;
}

.wsb-add-detail-section-top {
	flex: 0 0 auto;
}

.wsb-detail-remove-btn {
	margin-left: auto;
	padding: 8px 12px;
	border: 0;
	border-radius: 12px;
	background: rgba(220, 38, 38, 0.08);
	color: #b91c1c;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.wsb-detail-section-top {
	align-items: center;
}

@media (max-width: 640px) {
	.wsb-detail-sections-header {
		flex-direction: column;
		align-items: stretch;
	}
}


.wsb-remove-field-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid rgba(220, 38, 38, 0.14);
	border-radius: 14px;
	background: rgba(220, 38, 38, 0.08);
	color: #b91c1c;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.wsb-remove-field-icon:hover {
	transform: translateY(-1px);
	background: rgba(220, 38, 38, 0.12);
	box-shadow: 0 10px 18px rgba(220, 38, 38, 0.12);
}


/* Builder dashboard unified button system */
.wsb-dashboard :is(.wsb-btn, .wsb-add-field, .wsb-add-spec-row, .wsb-add-detail-section, .wsb-remove-field-icon, .wsb-detail-remove-btn) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 16px;
	border: 1px solid rgba(19, 103, 255, 0.18);
	border-radius: 14px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,247,255,0.96));
	color: var(--wsb-primary-deep);
	font: inherit;
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 12px 22px rgba(15, 23, 42, 0.06);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.wsb-dashboard :is(.wsb-btn, .wsb-add-field, .wsb-add-spec-row, .wsb-add-detail-section, .wsb-remove-field-icon, .wsb-detail-remove-btn):hover {
	transform: translateY(-1px);
	border-color: rgba(19, 103, 255, 0.26);
	background: linear-gradient(180deg, rgba(255,255,255,1), rgba(235,243,255,0.98));
	box-shadow: 0 16px 26px rgba(19, 103, 255, 0.12);
}

.wsb-dashboard :is(.wsb-btn-primary, .wsb-btn-secondary, .wsb-btn-call, .wsb-btn-whatsapp, .wsb-btn-chat) {
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,247,255,0.96));
	color: var(--wsb-primary-deep);
	border-color: rgba(19, 103, 255, 0.18);
	box-shadow: 0 12px 22px rgba(15, 23, 42, 0.06);
}

.wsb-dashboard .wsb-remove-field-icon,
.wsb-dashboard .wsb-detail-remove-btn {
	min-width: 44px;
}

.wsb-dashboard .wsb-detail-remove-btn {
	margin-left: auto;
}

.wsb-dashboard .wsb-btn-icon,
.wsb-dashboard .wsb-btn-icon svg {
	width: 16px;
	height: 16px;
}

/* Unified field sizing: keep inputs, dropdowns, and textareas visually aligned */
.wsb-field input,
.wsb-field select,
.wsb-filter input,
.wsb-filter select,
.wsb-product-search-filters input,
.wsb-product-search-filters select,
.wsb-shop-search-select-wrap select,
.wsb-shop-sort-select-wrap select,
.wsb-detail-section-media-column select {
	min-height: 40px !important;
	padding-top: 6px !important;
	padding-bottom: 6px !important;
	line-height: 1.35 !important;
	box-sizing: border-box;
}

.wsb-field select,
.wsb-filter select,
.wsb-product-search-filters select,
.wsb-shop-search-select-wrap select,
.wsb-shop-sort-select-wrap select,
.wsb-detail-section-media-column select {
	padding-right: 42px !important;
}

.wsb-field textarea,
.wsb-filter textarea,
.wsb-detail-section-content-column textarea {
	min-height: 96px;
	padding: 8px 14px;
	line-height: 1.55;
	box-sizing: border-box;
	resize: vertical;
}

.wsb-field select option,
.wsb-filter select option,
.wsb-product-search-filters select option,
.wsb-shop-search-select-wrap select option,
.wsb-shop-sort-select-wrap select option,
.wsb-detail-section-media-column select option {
	line-height: 1.35;
}

/* Final strip tuning: white background and slightly smaller carousel/reels */
.wsb-shop .wsb-shop-carousel-section,
.wsb-shop .wsb-shop-reels-section {
	background: rgba(255, 255, 255, 0.98) !important;
	border: 1px solid rgba(120, 139, 173, 0.12) !important;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05) !important;
	padding: 12px !important;
	border-radius: 22px !important;
}

.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head,
.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head {
	margin-bottom: 10px !important;
}

.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-head h2,
.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-head h2 {
	font-size: 0.98rem !important;
}

.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail {
	--wsb-rail-card-width: 184px !important;
	gap: 8px !important;
}

.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
	--wsb-rail-card-width: 210px !important;
	gap: 10px !important;
}

.wsb-shop .wsb-shop-carousel-section .wsb-highlight-card-body,
.wsb-shop .wsb-shop-reels-section .wsb-reel-card-body {
	padding: 8px !important;
}

@media (max-width: 640px) {
	.wsb-shop .wsb-shop-carousel-section,
	.wsb-shop .wsb-shop-reels-section {
		padding: 10px !important;
		border-radius: 18px !important;
	}

	.wsb-shop .wsb-shop-carousel-section .wsb-shop-strip-rail {
		--wsb-rail-card-width: 42vw !important;
		gap: 7px !important;
	}

	.wsb-shop .wsb-shop-reels-section .wsb-shop-strip-rail {
		--wsb-rail-card-width: 48vw !important;
		gap: 8px !important;
	}
}

.wsb-detail-display-media video,
.wsb-detail-display-media iframe {
	width: 100%;
	max-width: 100%;
	border: 0;
	border-radius: 18px;
	display: block;
}

/* Final spec table layout: always show in two columns */
.wsb-spec-table {
	grid-template-columns: 1fr;
}

.wsb-spec-row {
	grid-template-columns: minmax(130px, 0.82fr) minmax(0, 1.18fr) !important;
	align-items: stretch;
}

.wsb-spec-label,
.wsb-spec-value {
	display: flex;
	align-items: center;
	min-height: 48px;
}

@media (max-width: 640px) {
	.wsb-spec-row {
		grid-template-columns: minmax(112px, 0.78fr) minmax(0, 1.22fr) !important;
	}

	.wsb-spec-label,
	.wsb-spec-value {
		padding: 10px 12px;
		font-size: 0.86rem;
	}
}

/* Detail sections: keep image visible and make video secondary/smaller */
.wsb-detail-display-media-stack {
	display: grid;
	gap: 12px;
}

.wsb-detail-display-video {
	width: min(100%, 360px);
	border-radius: 18px;
	overflow: hidden;
	background: rgba(15, 23, 42, 0.04);
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

.wsb-detail-display-video video,
.wsb-detail-display-video iframe,
.wsb-detail-display-video .wp-video,
.wsb-detail-display-video .wp-video-shortcode {
	width: 100%;
	max-width: 100%;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 18px;
	display: block;
}

@media (max-width: 640px) {
	.wsb-detail-display-video {
		width: 100%;
	}
}

/* Final long-detail media layout */
.wsb-detail-display-media-stack {
	grid-template-columns: minmax(0, 1fr) 300px;
	align-items: start;
}

.wsb-detail-display-media-stack .wsb-detail-display-media {
	min-width: 0;
}

.wsb-detail-display-video {
	width: 300px !important;
	max-width: 300px !important;
	justify-self: end;
}

.wsb-detail-display-video iframe {
	width: 100% !important;
	height: 170px !important;
	min-height: 170px !important;
}

.wsb-detail-display-video video,
.wsb-detail-display-video .wp-video,
.wsb-detail-display-video .wp-video-shortcode {
	width: 100% !important;
	height: auto !important;
	max-height: 170px !important;
}

@media (max-width: 820px) {
	.wsb-detail-display-media-stack {
		grid-template-columns: 1fr;
	}

	.wsb-detail-display-video {
		width: 100% !important;
		max-width: 100% !important;
		justify-self: stretch;
	}

	.wsb-detail-display-video iframe {
		height: 190px !important;
		min-height: 190px !important;
	}
}



/* Final cleanup: remove outer shell look around info card and top search */
.wsb-shop .wsb-shop-summary,
.wsb-shop .wsb-shop-top-search {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	overflow: visible !important;
}

.wsb-shop .wsb-shop-summary::before,
.wsb-shop .wsb-shop-top-search::before {
	content: none !important;
}

.wsb-shop .wsb-shop-summary {
	padding: 0 !important;
}

.wsb-shop .wsb-shop-top-search {
	padding: 0 !important;
}

/* Final width lock: full-width info card and search form */
.wsb-shop > .wsb-shop-intro,
.wsb-shop > .wsb-shop-top-search,
.wsb-shop .wsb-shop-summary,
.wsb-shop .wsb-shop-top-search-form,
.wsb-shop .wsb-shop-top-search-controls {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Final breakout: make info card and search form truly full width */
.wsb-shop > .wsb-shop-intro,
.wsb-shop > .wsb-shop-top-search {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding-left: clamp(18px, 4vw, 52px) !important;
	padding-right: clamp(18px, 4vw, 52px) !important;
	box-sizing: border-box !important;
}

.wsb-shop .wsb-shop-summary,
.wsb-shop .wsb-shop-top-search-form,
.wsb-shop .wsb-shop-top-search-controls {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

@media (max-width: 640px) {
	.wsb-shop > .wsb-shop-intro,
	.wsb-shop > .wsb-shop-top-search {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
}

/* Dashboard inventory list */
.wsb-dashboard-inventory {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.wsb-dashboard-stock.is-in {
	background: rgba(31, 157, 98, 0.12);
	color: var(--wsb-success);
}

.wsb-dashboard-stock.is-low {
	background: rgba(245, 158, 11, 0.16);
	color: #b45309;
}

.wsb-dashboard-stock.is-out {
	background: rgba(220, 38, 38, 0.14);
	color: #b91c1c;
}

.wsb-dashboard-stock.is-preorder {
	background: rgba(59, 130, 246, 0.14);
	color: #1d4ed8;
}

.wsb-dashboard-stock.is-queued {
	background: rgba(148, 163, 184, 0.14);
	color: #475569;
}

/* Product editor grouping */
.wsb-product-editor-group {
	display: grid;
	gap: 10px;
	padding: 14px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,249,255,0.96));
	box-shadow: 0 18px 36px rgba(15, 23, 42, 0.05);
}

.wsb-product-editor-group-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(148, 163, 184, 0.12);
	cursor: pointer;
	transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.wsb-product-editor-group-title {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	flex-wrap: wrap;
}

.wsb-product-editor-group-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	border-radius: 12px;
	background: linear-gradient(135deg, rgba(226, 232, 240, 0.95), rgba(241, 245, 249, 0.96));
	color: #475569;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
}

.wsb-product-editor-group-icon svg {
	width: 17px;
	height: 17px;
}

.wsb-product-editor-group-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.wsb-product-editor-group:not(.is-collapsed) .wsb-product-editor-group-head {
	margin: -6px -6px 0;
	padding: 8px 8px 10px;
	border-radius: 18px;
	background: linear-gradient(135deg, rgba(248, 250, 252, 0.98), rgba(241, 245, 249, 0.96));
	border-bottom-color: rgba(148, 163, 184, 0.14);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

.wsb-product-editor-group:not(.is-collapsed) .wsb-product-editor-group-icon {
	background: linear-gradient(135deg, rgba(226, 232, 240, 1), rgba(241, 245, 249, 0.98));
	color: #334155;
}

.wsb-product-editor-group-head h3 {
	margin: 0;
	font-size: 0.96rem;
	font-weight: 800;
	color: var(--wsb-text);
}

.wsb-product-editor-group-head p {
	margin: 0;
	font-size: 0.82rem;
	color: var(--wsb-text-soft);
}

.wsb-product-form-grid {
	gap: 14px;
}

/* Product editor collapsible groups */
.wsb-product-form-actions-top {
	margin-bottom: 2px;
}

.wsb-product-editor-group > .wsb-field,
.wsb-product-editor-group > .wsb-field-row,
.wsb-product-editor-group > .wsb-repeat-wrap,
.wsb-product-editor-group > .wsb-custom-fields-wrap {
	padding: 8px 10px;
	border: 1px solid rgba(120, 139, 173, 0.1);
	border-radius: 16px;
	background: rgba(255,255,255,0.72);
}

.wsb-product-editor-group > .wsb-field-row {
	align-items: start;
}

.wsb-product-editor-group > .wsb-field > label:first-child,
.wsb-product-editor-group > .wsb-field-row .wsb-field > label:first-child {
	font-weight: 800;
	color: var(--wsb-text-strong);
}

.wsb-product-editor-group .wsb-inline-meta,
.wsb-product-editor-group .wsb-field-help {
	margin-top: 6px;
}

.wsb-product-editor-group .wsb-repeat-wrap,
.wsb-product-editor-group .wsb-custom-fields-wrap,
.wsb-product-editor-group .wsb-gallery-manager,
.wsb-product-editor-group .wsb-category-field,
.wsb-product-editor-group .wsb-media-upload {
	padding: 10px;
	border: 1px solid rgba(120, 139, 173, 0.12);
	border-radius: 16px;
	background: linear-gradient(180deg, rgba(255,255,255,0.94), rgba(248,250,255,0.88));
}

.wsb-product-editor-group .wsb-category-field {
	display: grid;
	gap: 12px;
}

.wsb-product-editor-group .wsb-category-toolbar {
	padding: 8px 10px;
	border-radius: 16px;
	background: rgba(241, 245, 249, 0.9);
	border: 1px solid rgba(120, 139, 173, 0.1);
}

.wsb-product-editor-group .wsb-media-inline-actions {
	margin-top: 10px;
}

.wsb-product-editor-group .wsb-field-row .wsb-field,
.wsb-product-editor-group .wsb-custom-fields .wsb-field-row,
.wsb-product-editor-group .wsb-repeat-list .wsb-field-row {
	min-width: 0;
}

.wsb-product-editor-group .wsb-custom-fields .wsb-field-row,
.wsb-product-editor-group .wsb-repeat-list .wsb-field-row {
	padding: 8px;
	border-radius: 14px;
	background: rgba(255,255,255,0.82);
	border: 1px solid rgba(120, 139, 173, 0.1);
}

.wsb-product-editor-group .wsb-add-field,
.wsb-product-editor-group .wsb-add-spec-row,
.wsb-product-editor-group .wsb-add-detail-section {
	align-self: start;
}


.wsb-product-editor-toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border: 1px solid rgba(120, 139, 173, 0.16);
	border-radius: 999px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.96));
	color: var(--wsb-text-soft);
	font: inherit;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.wsb-product-editor-toggle:hover {
	transform: translateY(-1px);
	border-color: rgba(59, 130, 246, 0.28);
	color: var(--wsb-text);
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.09);
}

.wsb-product-editor-toggle-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	transition: transform 0.18s ease;
	color: #1d4ed8;
}

.wsb-product-editor-toggle-icon svg {
	width: 16px;
	height: 16px;
}

.wsb-product-editor-group.is-collapsed .wsb-product-editor-toggle-icon {
	transform: rotate(-90deg);
}

.wsb-product-editor-group.is-collapsed > :not(.wsb-product-editor-group-head) {
	display: none;
}

.wsb-product-editor-group.is-collapsed {
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.035);
}

.wsb-product-editor-group.is-collapsed .wsb-product-editor-group-head {
	padding-bottom: 0;
	border-bottom-color: transparent;
}

@media (max-width: 640px) {
	.wsb-product-editor-group {
		padding: 12px;
		border-radius: 18px;
	}

	.wsb-product-editor-group > .wsb-field,
	.wsb-product-editor-group > .wsb-field-row,
	.wsb-product-editor-group .wsb-repeat-wrap,
	.wsb-product-editor-group .wsb-custom-fields-wrap,
	.wsb-product-editor-group .wsb-gallery-manager,
	.wsb-product-editor-group .wsb-category-field,
	.wsb-product-editor-group .wsb-media-upload {
		padding: 10px;
		border-radius: 16px;
	}

	.wsb-product-editor-group-head {
		gap: 10px;
	}

	.wsb-product-editor-group-icon {
		width: 38px;
		height: 38px;
		flex-basis: 38px;
		border-radius: 12px;
	}

	.wsb-product-editor-toggle {
		padding: 6px 9px;
		font-size: 0.78rem;
	}

	.wsb-product-editor-toggle-label {
		display: none;
	}
}

.wsb-marketing-helper-grid {
	display: grid;
	gap: 16px;
}

.wsb-marketing-helper-card {
	display: grid;
	gap: 14px;
	padding: 16px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 20px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}

.wsb-marketing-helper-card.is-compact {
	padding: 14px;
	border-radius: 18px;
}

.wsb-marketing-helper-head,
.wsb-marketing-helper-product {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.wsb-marketing-helper-product {
	justify-content: flex-start;
}

.wsb-marketing-helper-thumb {
	width: 64px;
	height: 64px;
	border-radius: 18px;
	object-fit: cover;
	flex: 0 0 64px;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
}

.wsb-marketing-helper-thumb.is-fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #e2e8f0, #f8fafc);
	color: #475569;
}

.wsb-marketing-helper-thumb.is-fallback svg {
	width: 22px;
	height: 22px;
}

.wsb-marketing-helper-copy {
	display: grid;
	gap: 4px;
}

.wsb-marketing-helper-copy strong {
	font-size: 15px;
	color: #0f172a;
}

.wsb-marketing-helper-copy span {
	font-size: 12px;
	color: #64748b;
}

.wsb-marketing-helper-platforms {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.wsb-marketing-helper-platform {
	display: grid;
	gap: 10px;
	padding: 14px;
	border-radius: 16px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	background: rgba(255, 255, 255, 0.9);
}

.wsb-marketing-helper-platform-head {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #0f172a;
	font-weight: 700;
}

.wsb-marketing-helper-platform-icon,
.wsb-marketing-helper-platform-icon svg {
	width: 18px;
	height: 18px;
}

.wsb-marketing-helper-platform.is-facebook .wsb-marketing-helper-platform-icon {
	color: #1d4ed8;
}

.wsb-marketing-helper-platform.is-instagram .wsb-marketing-helper-platform-icon {
	color: #be185d;
}

.wsb-marketing-helper-platform.is-whatsapp .wsb-marketing-helper-platform-icon {
	color: #15803d;
}

.wsb-marketing-helper-actions {
	display: grid;
	gap: 8px;
}

.wsb-marketing-helper-actions .wsb-btn {
	width: 100%;
	justify-content: center;
}

.wsb-marketing-helper-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-top: 4px;
	border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.wsb-marketing-helper-footer .wsb-product-share-feedback {
	margin-left: auto;
	font-size: 12px;
	color: #0f766e;
}

@media (max-width: 900px) {
	.wsb-marketing-helper-platforms {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.wsb-marketing-helper-head,
	.wsb-marketing-helper-product,
	.wsb-marketing-helper-footer {
		flex-direction: column;
		align-items: stretch;
	}

	.wsb-marketing-helper-thumb {
		width: 56px;
		height: 56px;
		flex-basis: 56px;
	}
}
