/*
 * QODE API-ready catalogue presentation.
 * Loaded only on WooCommerce archives and product pages.
 */

.qode-catalogue-view {
	--qode-catalogue-bg: #0b1020;
	--qode-catalogue-surface: #11182b;
	--qode-catalogue-surface-2: #151f36;
	--qode-catalogue-border: #293552;
	--qode-catalogue-text: #f7f8fc;
	--qode-catalogue-muted: #a9b3ca;
	--qode-catalogue-accent: #8b5cf6;
	--qode-catalogue-blue: #2d8cff;
	--qode-catalogue-success: #22c55e;
	--qode-catalogue-danger: #ef4444;
	background: var(--qode-catalogue-bg);
	color: var(--qode-catalogue-text);
}

.qode-catalogue-shell {
	width: calc(100% - 80px);
	max-width: 1360px;
	margin-inline: auto;
}

.qode-catalogue-view :where(button, input, select, a):focus-visible {
	outline: 3px solid rgba(139, 92, 246, 0.65);
	outline-offset: 3px;
}

.qode-kicker {
	margin: 0 0 10px;
	color: #a987ff;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.18em;
	line-height: 1.2;
}

.qode-catalogue-hero {
	position: relative;
	overflow: hidden;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	background:
		radial-gradient(circle at 78% 22%, rgba(45, 140, 255, 0.11), transparent 28%),
		radial-gradient(circle at 18% 0%, rgba(139, 92, 246, 0.12), transparent 30%),
		#0b1020;
}

.qode-catalogue-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr);
	gap: 72px;
	align-items: end;
	padding-block: 64px 54px;
}

.qode-catalogue-hero h1 {
	margin: 0;
	color: var(--qode-catalogue-text);
	font-family: "Sora", system-ui, sans-serif;
	font-size: clamp(44px, 5vw, 68px);
	font-weight: 800;
	letter-spacing: -0.045em;
	line-height: 1;
}

.qode-catalogue-hero__intro {
	max-width: 650px;
	margin: 20px 0 0;
	color: #c6cde0;
	font-size: 17px;
	line-height: 1.65;
}

.qode-catalogue-search {
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr) auto;
	align-items: center;
	min-height: 62px;
	padding-left: 18px;
	border: 1px solid #33405d;
	border-radius: 12px;
	background: rgba(13, 20, 38, 0.92);
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22);
}

.qode-catalogue-search svg {
	width: 23px;
	fill: none;
	stroke: #9ba7be;
	stroke-width: 1.8;
}

.qode-catalogue-search input {
	width: 100%;
	min-width: 0;
	height: 60px;
	padding: 0 14px;
	border: 0;
	outline: 0;
	background: transparent;
	color: #fff;
	font-size: 16px;
}

.qode-catalogue-search input::placeholder {
	color: #7f8aa2;
}

.qode-catalogue-search button {
	align-self: stretch;
	min-width: 112px;
	border: 0;
	border-radius: 10px;
	background: var(--qode-catalogue-accent);
	color: #fff;
	font-weight: 800;
	cursor: pointer;
}

.qode-catalogue__workspace {
	display: grid;
	grid-template-columns: 286px minmax(0, 1fr);
	gap: 32px;
	align-items: start;
	padding-block: 40px 80px;
}

.qode-filter-panel {
	position: sticky;
	top: 78px;
	max-height: calc(100vh - 102px);
	overflow: auto;
	padding: 22px;
	border: 1px solid var(--qode-catalogue-border);
	border-radius: 16px;
	background: var(--qode-catalogue-surface);
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.18);
	scrollbar-color: #33405d transparent;
	scrollbar-width: thin;
}

.qode-filter-panel::-webkit-scrollbar {
	width: 8px;
}

.qode-filter-panel::-webkit-scrollbar-track {
	background: transparent;
}

.qode-filter-panel::-webkit-scrollbar-thumb {
	border: 2px solid transparent;
	border-radius: 999px;
	background: #33405d;
	background-clip: padding-box;
}

.qode-filter-panel__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 22px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--qode-catalogue-border);
}

.qode-filter-panel h2 {
	margin: 0;
	color: #fff;
	font-size: 22px;
	line-height: 1.2;
}

.qode-filter-close,
.qode-filter-toggle {
	display: none;
}

.qode-filter-field {
	display: grid;
	gap: 8px;
	margin-bottom: 16px;
	color: #dbe0ed;
	font-size: 13px;
	font-weight: 700;
}

.qode-filter-field select,
.qode-filter-price input,
.qode-sort select {
	width: 100%;
	min-height: 44px;
	border: 1px solid #33405d;
	border-radius: 10px;
	background: #0c1427;
	color: #f7f8fc;
	font-size: 14px;
}

.qode-filter-field select,
.qode-sort select {
	padding: 0 36px 0 12px;
}

.qode-filter-price {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin: 0 0 16px;
	padding: 0;
	border: 0;
}

.qode-filter-price legend {
	grid-column: 1 / -1;
	margin-bottom: 8px;
	color: #dbe0ed;
	font-size: 13px;
	font-weight: 700;
}

.qode-filter-price label {
	display: grid;
	gap: 6px;
	color: var(--qode-catalogue-muted);
	font-size: 11px;
}

.qode-filter-price input {
	min-width: 0;
	padding: 0 10px;
}

.qode-filter-check {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	margin-bottom: 20px;
	color: #dbe0ed;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

.qode-filter-check input {
	width: 19px;
	height: 19px;
	margin: 0;
	accent-color: var(--qode-catalogue-accent);
}

.qode-filter-actions {
	display: grid;
	gap: 9px;
	padding-top: 18px;
	border-top: 1px solid var(--qode-catalogue-border);
}

.qode-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 20px;
	border: 1px solid transparent;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

.qode-button--primary {
	background: var(--qode-catalogue-accent);
	color: #fff;
}

.qode-button--quiet {
	border-color: #33405d;
	background: transparent;
	color: #e4e8f2;
}

.qode-button--disabled {
	width: 100%;
	background: #2a3348;
	color: #aeb7ca;
	cursor: not-allowed;
}

.qode-catalogue-results {
	min-width: 0;
}

.qode-catalogue-toolbar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	min-height: 54px;
	margin-bottom: 22px;
}

.qode-results-count {
	margin: 0;
	color: #f7f8fc;
	font-size: 17px;
	font-weight: 800;
}

.qode-active-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 11px;
}

.qode-active-filters a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 30px;
	padding: 3px 9px;
	border: 1px solid #3c4770;
	border-radius: 999px;
	background: #141b31;
	color: #dce1ee;
	font-size: 12px;
	text-decoration: none;
}

.qode-active-filters a span:first-of-type {
	color: #c4aefc;
	font-size: 17px;
	line-height: 1;
}

.qode-active-filters .qode-active-filters__clear {
	border-color: transparent;
	background: transparent;
	color: #b99cff;
	font-weight: 800;
}

.qode-sort {
	display: grid;
	grid-template-columns: auto 190px;
	align-items: center;
	gap: 10px;
	color: var(--qode-catalogue-muted);
	font-size: 12px;
	font-weight: 700;
}

.qode-product-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 1500px) {
	.qode-catalogue .qode-product-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 18px;
	}
}

.qode-catalogue-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	height: 100%;
	overflow: hidden;
	border: 1px solid #26324d;
	border-radius: 16px;
	background: linear-gradient(180deg, #121a2d, #0f1729);
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.2);
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.qode-catalogue-card:hover,
.qode-catalogue-card:focus-within {
	transform: translateY(-4px);
	border-color: rgba(139, 92, 246, 0.58);
	box-shadow: 0 24px 54px rgba(0, 0, 0, 0.32), 0 0 0 1px rgba(45, 140, 255, 0.1);
}

.qode-catalogue-card__cover {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 5;
	background: #0b1222;
	isolation: isolate;
}

.qode-catalogue-card__image,
.qode-catalogue-card__image img,
.qode-product-cover > img {
	display: block;
	width: 100%;
	height: 100%;
}

.qode-catalogue-card__image img,
.qode-product-cover > img {
	object-fit: cover;
	transition: transform 260ms ease;
}

.qode-catalogue-card:hover .qode-catalogue-card__image img,
.qode-catalogue-card:focus-within .qode-catalogue-card__image img {
	transform: scale(1.025);
}

.qode-catalogue-card__cover-shade {
	position: absolute;
	inset: auto 0 0;
	height: 42%;
	z-index: 3;
	background: linear-gradient(180deg, rgba(6, 11, 23, 0), rgba(6, 11, 23, 0.78) 56%, rgba(5, 9, 20, 0.96));
	pointer-events: none;
}

.qode-cover-placeholder {
	--qode-cover-a: #39206b;
	--qode-cover-b: #101c3c;
	--qode-cover-light: #8b5cf6;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.08), transparent 34%),
		linear-gradient(162deg, var(--qode-cover-a), var(--qode-cover-b) 58%, #070c17);
	isolation: isolate;
	transition: transform 260ms ease;
}

.qode-catalogue-card:hover .qode-cover-placeholder,
.qode-catalogue-card:focus-within .qode-cover-placeholder {
	transform: scale(1.02);
}

.qode-cover-placeholder--2 {
	--qode-cover-a: #0d5473;
	--qode-cover-b: #102442;
	--qode-cover-light: #2d8cff;
}

.qode-cover-placeholder--3 {
	--qode-cover-a: #703018;
	--qode-cover-b: #2d1725;
	--qode-cover-light: #ef7a44;
}

.qode-cover-placeholder--4 {
	--qode-cover-a: #245b3d;
	--qode-cover-b: #162b2f;
	--qode-cover-light: #22c55e;
}

.qode-cover-placeholder::before,
.qode-cover-placeholder::after,
.qode-cover-placeholder__sky,
.qode-cover-placeholder__orbit,
.qode-cover-placeholder__ship,
.qode-cover-placeholder__terrain,
.qode-cover-placeholder__mark {
	position: absolute;
	display: block;
}

.qode-cover-placeholder::before {
	content: "";
	inset: 0;
	z-index: 1;
	background:
		radial-gradient(circle at 68% 22%, rgba(247, 248, 252, 0.22), transparent 4%),
		radial-gradient(circle at 24% 19%, rgba(247, 248, 252, 0.16), transparent 3%),
		radial-gradient(circle at 58% 42%, color-mix(in srgb, var(--qode-cover-light) 42%, transparent), transparent 30%);
}

.qode-cover-placeholder::after {
	content: "";
	left: -20%;
	right: -20%;
	bottom: -12%;
	z-index: 2;
	height: 56%;
	background:
		linear-gradient(150deg, transparent 49%, rgba(5, 9, 20, 0.86) 50% 62%, transparent 63%),
		linear-gradient(24deg, transparent 42%, rgba(7, 12, 23, 0.92) 43% 61%, transparent 62%),
		linear-gradient(180deg, transparent 0%, rgba(3, 7, 15, 0.95) 72%);
}

.qode-cover-placeholder__sky {
	inset: 0;
	z-index: 1;
	background:
		repeating-linear-gradient(164deg, transparent 0 18px, rgba(247, 248, 252, 0.045) 19px 20px),
		radial-gradient(circle, rgba(247, 248, 252, 0.8) 0 1px, transparent 2px);
	background-size: auto, 52px 48px;
	opacity: 0.72;
}

.qode-cover-placeholder__orbit {
	top: 24%;
	left: 50%;
	z-index: 2;
	width: 64%;
	aspect-ratio: 1;
	border: 2px solid rgba(247, 248, 252, 0.38);
	border-radius: 50%;
	box-shadow: 0 0 24px color-mix(in srgb, var(--qode-cover-light) 48%, transparent), inset 0 0 24px rgba(247, 248, 252, 0.08);
	transform: translate(-50%, -50%);
}

.qode-cover-placeholder__ship {
	top: 42%;
	left: 50%;
	z-index: 4;
	width: 38%;
	height: 13%;
	background: linear-gradient(160deg, #dcecff, var(--qode-cover-light) 38%, #071225 70%);
	clip-path: polygon(0 56%, 42% 22%, 68% 0, 100% 36%, 72% 58%, 55% 100%, 40% 62%, 13% 78%);
	filter: drop-shadow(0 0 18px color-mix(in srgb, var(--qode-cover-light) 58%, transparent));
	transform: translate(-50%, -50%) rotate(-10deg);
}

.qode-cover-placeholder__terrain {
	inset: auto 6% 14%;
	z-index: 5;
	height: 34%;
	background: linear-gradient(145deg, transparent 39%, rgba(7, 12, 25, 0.96) 40%);
	clip-path: polygon(0 100%, 0 70%, 16% 44%, 30% 65%, 46% 27%, 64% 64%, 80% 38%, 100% 72%, 100% 100%);
}

.qode-cover-placeholder__mark {
	left: 50%;
	top: 57%;
	z-index: 6;
	display: grid;
	place-items: center;
	width: 54px;
	height: 68px;
	border: 1px solid rgba(247, 248, 252, 0.38);
	border-radius: 48% 48% 36% 36%;
	background: rgba(5, 9, 20, 0.82);
	color: #fff;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 24px;
	font-weight: 800;
	transform: translate(-50%, -50%);
}

.qode-catalogue-card__flags {
	position: absolute;
	top: 12px;
	left: 12px;
	right: 12px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
	z-index: 6;
	pointer-events: none;
}

.qode-card-flag {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 3px 9px;
	border: 1px solid rgba(247, 248, 252, 0.16);
	border-radius: 8px;
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
	backdrop-filter: blur(8px);
}

.qode-card-flag--demo {
	background: rgba(93, 63, 176, 0.92);
}

.qode-card-flag--sale {
	margin-left: auto;
	background: rgba(216, 75, 52, 0.94);
}

.qode-catalogue-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 14px;
	padding: 16px;
}

.qode-card-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.qode-card-badge {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	max-width: 100%;
	padding: 3px 8px;
	border: 1px solid #34415f;
	border-radius: 999px;
	background: #10192d;
	color: #bfc8db;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
}

.qode-card-badge--platform {
	border-color: rgba(45, 140, 255, 0.45);
	color: #8dc1ff;
}

.qode-card-badge--launcher {
	border-color: rgba(247, 248, 252, 0.18);
	color: #d8deec;
}

.qode-card-badge--region {
	border-color: rgba(139, 92, 246, 0.46);
	color: #c2aafd;
}

.qode-card-badge--edition {
	border-color: rgba(34, 197, 94, 0.34);
	color: #9be7b5;
}

.qode-catalogue-card__title {
	margin: 0;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 17px;
	font-weight: 750;
	line-height: 1.32;
}

.qode-catalogue-card__title a {
	color: #f7f8fc;
	text-decoration: none;
}

.qode-catalogue-card__title a:hover,
.qode-catalogue-card__title a:focus-visible {
	color: #ffffff;
}

.qode-catalogue-card__commerce {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 12px;
	margin-top: auto;
}

.qode-catalogue-card__price {
	min-width: 0;
	color: #fff;
	font-size: 18px;
	font-weight: 850;
	line-height: 1.2;
}

.qode-catalogue-card__price del,
.qode-product-price del {
	display: inline-block;
	margin-right: 6px;
	color: #7f8aa2;
	font-size: 12px;
	font-weight: 650;
}

.qode-catalogue-card__price ins,
.qode-product-price ins {
	text-decoration: none;
}

.qode-availability {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: 100%;
	color: var(--qode-catalogue-muted);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	white-space: nowrap;
}

.qode-availability::before {
	content: "";
	flex: 0 0 auto;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #8791a8;
}

.qode-availability--available::before {
	background: var(--qode-catalogue-success);
}

.qode-availability--out::before,
.qode-availability--unavailable::before {
	background: var(--qode-catalogue-danger);
}

.qode-availability--demo::before {
	background: var(--qode-catalogue-accent);
}

.qode-card-action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 46px;
	margin-top: 2px;
	padding: 0 14px;
	border: 1px solid #293552;
	border-radius: 10px;
	background: #0c1427;
	color: #e8edf7;
	font-size: 13px;
	font-weight: 850;
	line-height: 1;
	text-decoration: none;
	transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.qode-card-action:hover,
.qode-card-action:focus-visible {
	border-color: rgba(139, 92, 246, 0.64);
	background: rgba(139, 92, 246, 0.16);
	color: #fff;
}

.qode-card-action svg {
	flex: 0 0 auto;
	width: 18px;
	fill: none;
	stroke: #a987ff;
	stroke-width: 2;
}

.qode-catalogue-loading {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 80px;
	color: var(--qode-catalogue-muted);
}

.qode-catalogue-loading span {
	width: 20px;
	height: 20px;
	border: 2px solid #394560;
	border-top-color: var(--qode-catalogue-accent);
	border-radius: 50%;
	animation: qode-catalogue-spin 700ms linear infinite;
}

.qode-catalogue.is-loading .qode-catalogue-loading {
	display: flex;
}

.qode-catalogue.is-loading .qode-product-grid,
.qode-catalogue.is-loading .qode-pagination {
	opacity: 0.35;
	pointer-events: none;
}

@keyframes qode-catalogue-spin {
	to { transform: rotate(360deg); }
}

.qode-empty-state,
.qode-metadata-fallback {
	display: grid;
	justify-items: start;
	gap: 10px;
	padding: 36px;
	border: 1px dashed #3b4762;
	border-radius: 16px;
	background: #10182a;
	color: var(--qode-catalogue-muted);
}

.qode-empty-state {
	justify-items: center;
	min-height: 330px;
	align-content: center;
	text-align: center;
}

.qode-empty-state__icon {
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	border: 1px solid #4c3a83;
	border-radius: 50%;
	background: #17152d;
	color: #b99cff;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 26px;
	font-weight: 800;
}

.qode-empty-state h2,
.qode-metadata-fallback strong {
	margin: 0;
	color: #fff;
}

.qode-empty-state p,
.qode-metadata-fallback p {
	max-width: 540px;
	margin: 0 0 8px;
	line-height: 1.6;
}

.qode-pagination {
	margin-top: 32px;
}

.qode-pagination .page-numbers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 7px;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

.qode-pagination .page-numbers li {
	border: 0;
}

.qode-pagination .page-numbers a,
.qode-pagination .page-numbers span {
	display: grid;
	place-items: center;
	min-width: 42px;
	height: 42px;
	padding: 0 10px;
	border: 1px solid #33405d;
	border-radius: 9px;
	background: #11182b;
	color: #dce1ec;
	text-decoration: none;
}

.qode-pagination .page-numbers .current {
	border-color: var(--qode-catalogue-accent);
	background: var(--qode-catalogue-accent);
	color: #fff;
}

/* QODE blueprint single-product implementation */
.qode-product-page--blueprint {
	--qode-product-bg: #0b1020;
	--qode-product-panel: rgba(11, 18, 35, 0.88);
	--qode-product-panel-strong: rgba(15, 24, 45, 0.94);
	--qode-product-border: rgba(255, 255, 255, 0.11);
	--qode-product-muted: #a9b3ca;
	--qode-product-ink: #f7f8fc;
	--qode-product-purple: #8b5cf6;
	--qode-product-blue: #2d8cff;
	--qode-product-green: #22c55e;
	--qode-product-amber: #f97316;
	background:
		radial-gradient(circle at 72% 7%, rgba(139, 92, 246, 0.14), transparent 30%),
		radial-gradient(circle at 18% 14%, rgba(45, 140, 255, 0.12), transparent 28%),
		var(--qode-product-bg);
	color: var(--qode-product-ink);
}

.qode-product-blueprint-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		linear-gradient(90deg, rgba(6, 10, 22, 0.98) 0%, rgba(8, 13, 27, 0.91) 46%, rgba(8, 13, 27, 0.78) 100%),
		var(--qode-product-hero, linear-gradient(145deg, #11182b, #0b1020));
	background-position: center;
	background-size: cover;
}

.qode-product-blueprint-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(180deg, rgba(11, 16, 32, 0.20), #0b1020 108%),
		radial-gradient(circle at 31% 73%, rgba(139, 92, 246, 0.17), transparent 30%),
		radial-gradient(circle at 78% 30%, rgba(45, 140, 255, 0.10), transparent 28%);
	pointer-events: none;
}

.qode-product-blueprint-shell {
	width: calc(100% - 80px);
	max-width: 1360px;
	margin-inline: auto;
}

.qode-product-blueprint-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(300px, 0.38fr) minmax(0, 0.62fr);
	gap: clamp(10px, 1.2vw, 16px);
	align-items: start;
	padding-block: clamp(8px, 1vw, 12px) clamp(8px, 1vw, 12px);
}

.qode-product-blueprint-media {
	min-width: 0;
	max-width: 260px;
}

.qode-product-blueprint-cover {
	position: relative;
	aspect-ratio: 1 / 1;
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(139, 92, 246, 0.42);
	border-radius: 26px;
	background: #091225;
	box-shadow: 0 34px 86px rgba(0, 0, 0, 0.50), 0 0 0 1px rgba(45, 140, 255, 0.11), 0 0 48px rgba(139, 92, 246, 0.18);
}

.qode-product-blueprint-cover::after {
	content: "";
	position: absolute;
	inset: auto 10% -18px;
	height: 42px;
	border-radius: 999px;
	background: rgba(139, 92, 246, 0.34);
	filter: blur(18px);
	pointer-events: none;
}

.qode-product-blueprint-cover > img,
.qode-product-blueprint-cover .qode-cover-placeholder {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.qode-product-thumb-gallery {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) 42px;
	gap: 11px;
	align-items: center;
	margin-top: 10px;
}

.qode-product-gallery-arrow {
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	background: rgba(8, 14, 28, 0.82);
	color: #d8dded;
	cursor: pointer;
	transition: border-color 160ms ease, color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.qode-product-gallery-arrow:hover,
.qode-product-gallery-arrow:focus-visible {
	border-color: rgba(139, 92, 246, 0.58);
	color: #fff;
	box-shadow: 0 0 24px rgba(139, 92, 246, 0.16);
	outline: none;
	transform: translateY(-1px);
}

.qode-product-gallery-arrow .qode-svg-icon {
	width: 18px;
	height: 18px;
}

.qode-product-thumb-rail {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	min-width: 0;
}

.qode-product-thumb {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 14px;
	background: #081225;
	cursor: pointer;
	opacity: 0.72;
	transition: opacity 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.qode-product-thumb img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.qode-product-thumb.is-active,
.qode-product-thumb:hover,
.qode-product-thumb:focus-visible {
	opacity: 1;
	border-color: rgba(139, 92, 246, 0.76);
	box-shadow: 0 0 26px rgba(139, 92, 246, 0.16);
	outline: none;
}

.qode-product-blueprint-summary {
	min-width: 0;
	padding-top: 4px;
}

.qode-product-top-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
}

.qode-product-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 11px;
	min-height: 50px;
	padding: 10px 18px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0.075em;
	line-height: 1;
	text-transform: uppercase;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.qode-product-badge .qode-svg-icon,
.qode-product-badge .qode-brand-mark {
	width: 24px;
	height: 24px;
	flex: 0 0 auto;
}

.qode-product-badge--steam {
	border-color: rgba(45, 140, 255, 0.56);
	background: linear-gradient(180deg, rgba(30, 83, 145, 0.66), rgba(8, 25, 49, 0.94));
	color: #fff;
	box-shadow: 0 0 30px rgba(45, 140, 255, 0.13);
}

.qode-product-badge--region {
	border-color: rgba(34, 197, 94, 0.50);
	background: linear-gradient(180deg, rgba(26, 112, 63, 0.58), rgba(8, 36, 24, 0.88));
	color: #dcffe8;
	box-shadow: 0 0 28px rgba(34, 197, 94, 0.11);
}

.qode-product-badge--cis,
.qode-product-badge--region-pending {
	border-color: rgba(249, 115, 22, 0.54);
	background: linear-gradient(180deg, rgba(130, 65, 20, 0.58), rgba(45, 20, 10, 0.88));
	color: #ffd9bd;
	box-shadow: 0 0 28px rgba(249, 115, 22, 0.12);
}

.qode-product-badge:hover,
.qode-product-badge:focus-visible {
	transform: translateY(-1px);
	outline: none;
}

.qode-product-badge--steam:hover,
.qode-product-badge--steam:focus-visible {
	box-shadow: 0 0 34px rgba(45, 140, 255, 0.22);
}

.qode-product-badge--region:hover,
.qode-product-badge--region:focus-visible {
	box-shadow: 0 0 32px rgba(34, 197, 94, 0.18);
}

.qode-product-blueprint-summary h1 {
	max-width: 840px;
	margin: 0;
	font-family: "Sora", system-ui, sans-serif;
	font-size: clamp(42px, 4.4vw, 66px);
	font-weight: 950;
	line-height: 0.99;
	letter-spacing: -0.058em;
	color: #fff;
	text-shadow: 0 10px 32px rgba(139, 92, 246, 0.13), 0 12px 42px rgba(0, 0, 0, 0.38);
}

.qode-product-summary__short {
	max-width: 720px;
	margin-top: 3px;
	color: #c5cee0;
	font-size: clamp(13px, 1vw, 14px);
	line-height: 1.4;
}

.qode-product-summary__short p {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0;
}

.qode-product-purchase-panel {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-top: 0;
}

.qode-product-price-block {
	position: relative;
	overflow: hidden;
	padding: 8px 10px;
	border-radius: 14px;
	background:
		radial-gradient(120% 140% at 100% 0%, rgba(255, 255, 255, 0.24), transparent 45%),
		radial-gradient(100% 130% at 0% 100%, rgba(139, 92, 246, 0.38), transparent 55%),
		linear-gradient(135deg, #9666f8 0%, #7c3aed 45%, #4c1d95 100%);
	box-shadow: 0 22px 50px rgba(124, 58, 237, 0.42), 0 0 0 1px rgba(139, 92, 246, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.qode-product-price-block::before {
	content: "";
	position: absolute;
	inset: -60% -20%;
	background: linear-gradient(115deg, transparent 40%, rgba(255, 255, 255, 0.16) 48%, rgba(255, 255, 255, 0.05) 52%, transparent 60%);
	pointer-events: none;
}

.qode-product-price-block > * {
	position: relative;
	z-index: 1;
}

.qode-product-price-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}

.qode-product-price-block .qode-product-price {
	color: #fff;
}

.qode-product-price-block .qode-availability {
	border-color: rgba(255, 255, 255, 0.34);
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
}

.qode-product-price-block .qode-availability::before {
	content: none;
}

.qode-product-price-block .qode-review-price-note {
	display: block;
	margin-top: 2px;
	color: rgba(255, 255, 255, 0.72);
}

.qode-product-purchase-panel__top {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(174px, 0.34fr);
	gap: 16px;
	align-items: stretch;
}

.qode-product-price-line {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.qode-product-price,
.qode-review-price {
	font-family: "Sora", system-ui, sans-serif;
	font-size: clamp(38px, 3.4vw, 54px);
	font-weight: 950;
	line-height: 1;
	letter-spacing: -0.052em;
	color: #fff;
}

.qode-review-price-note {
	display: block;
	max-width: 360px;
	margin-top: 8px;
	color: #9faac1;
	font-size: 12px;
	line-height: 1.42;
}

.qode-availability {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 31px;
	padding: 6px 11px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 900;
	white-space: nowrap;
}

.qode-availability::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 12px currentColor;
}

.qode-availability--preview {
	border: 1px solid rgba(34, 197, 94, 0.42);
	background: rgba(34, 197, 94, 0.12);
	color: #a8f2c1;
}

.qode-product-preview-card {
	display: grid;
	align-content: center;
	justify-items: start;
	gap: 5px;
	min-height: 96px;
	padding: 14px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 17px;
	background: linear-gradient(180deg, rgba(14, 24, 44, 0.94), rgba(9, 16, 31, 0.92));
}

.qode-product-preview-card__icon {
	display: inline-grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: rgba(139, 92, 246, 0.14);
	color: #cbbdff;
}

.qode-product-preview-card__icon .qode-svg-icon {
	width: 16px;
	height: 16px;
}

.qode-product-preview-card strong {
	font-size: 12px;
	font-weight: 950;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #fff;
}

.qode-product-preview-card span:not(.qode-product-preview-card__icon) {
	color: #a9b3ca;
	font-size: 12px;
	line-height: 1.35;
}

.qode-product-preview-notice {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 6px;
	align-items: center;
	margin-top: 0;
	padding: 6px 8px;
	border: 1px solid rgba(249, 115, 22, 0.28);
	border-radius: 14px;
	background: rgba(249, 115, 22, 0.075);
}

.qode-warning-icon {
	display: inline-grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(45, 140, 255, 0.16);
	color: #9ed0ff;
}

.qode-warning-icon .qode-svg-icon {
	width: 15px;
	height: 15px;
}

.qode-product-preview-notice strong {
	display: block;
	color: #ffcf8a;
	font-size: 13px;
	line-height: 1.2;
}

.qode-product-preview-notice p {
	margin: 3px 0 0;
	color: #c7d0e0;
	font-size: 12px;
	line-height: 1.4;
}

.qode-product-page--preview .qode-product-purchase .qode-button--disabled {
	width: 100%;
	min-height: 50px;
	margin-top: 14px;
	border: 1px solid rgba(139, 92, 246, 0.36);
	border-radius: 13px;
	background: linear-gradient(180deg, rgba(139, 92, 246, 0.22), rgba(139, 92, 246, 0.13));
	color: #eadfff;
	font-weight: 950;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.qode-product-benefits {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin-top: 18px;
}

.qode-product-benefit {
	min-height: 136px;
	padding: 15px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 17px;
	background: linear-gradient(180deg, rgba(13, 22, 41, 0.84), rgba(10, 17, 31, 0.80));
	transition: border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.qode-product-benefit:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
}

.qode-benefit-icon {
	display: inline-grid;
	place-items: center;
	width: 34px;
	height: 34px;
	margin-bottom: 12px;
	border-radius: 50%;
}

.qode-benefit-icon .qode-svg-icon,
.qode-benefit-icon .qode-brand-mark {
	width: 19px;
	height: 19px;
}

.qode-product-benefit--delivery .qode-benefit-icon {
	background: rgba(139, 92, 246, 0.15);
	color: #b99cff;
}

.qode-product-benefit--steam .qode-benefit-icon {
	background: rgba(45, 140, 255, 0.14);
	color: #9ed0ff;
}

.qode-product-benefit--checkout .qode-benefit-icon {
	background: rgba(34, 197, 94, 0.13);
	color: #9ff0bd;
}

.qode-product-benefit--support .qode-benefit-icon {
	background: rgba(249, 115, 22, 0.12);
	color: #ffd0a7;
}

.qode-product-benefit b {
	display: block;
	color: #f7f8fc;
	font-size: 13px;
	font-weight: 950;
	line-height: 1.18;
	text-transform: uppercase;
}

.qode-product-benefit span:not(.qode-benefit-icon) {
	display: block;
	margin-top: 7px;
	color: #a9b3ca;
	font-size: 12px;
	line-height: 1.35;
}

.qode-product-quick-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 18px 0 0;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 18px;
	background: rgba(8, 14, 28, 0.70);
	overflow: hidden;
}

.qode-product-quick-details div {
	position: relative;
	min-width: 0;
	padding: 15px 14px 15px 44px;
}

.qode-product-quick-details div + div {
	border-left: 1px solid rgba(255, 255, 255, 0.09);
}

.qode-quick-icon {
	position: absolute;
	left: 14px;
	top: 16px;
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(139, 92, 246, 0.12);
	color: #c2b1ff;
}

.qode-quick-icon .qode-svg-icon {
	width: 14px;
	height: 14px;
}

.qode-product-quick-details dt {
	color: #8998b4;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.qode-product-quick-details dd {
	margin: 5px 0 0;
	color: #fff;
	font-size: 13px;
	font-weight: 850;
	line-height: 1.35;
	white-space: normal;
	overflow: visible;
}

.qode-product-content {
	padding-block: 34px 80px;
}

.qode-product-tabs {
	position: sticky;
	top: 82px;
	z-index: 5;
	display: flex;
	gap: 4px;
	overflow-x: auto;
	margin: 0 0 30px;
	padding: 10px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 18px;
	background: rgba(8, 14, 28, 0.90);
	backdrop-filter: blur(14px);
	scrollbar-width: none;
}

.qode-product-tabs::-webkit-scrollbar {
	display: none;
}

.qode-product-tabs a {
	position: relative;
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 13px;
	border-radius: 999px;
	color: #b6bfd3;
	font-size: 12px;
	font-weight: 950;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.qode-product-tabs a .qode-svg-icon {
	width: 15px;
	height: 15px;
}

.qode-product-tabs a.is-active,
.qode-product-tabs a:hover,
.qode-product-tabs a:focus-visible {
	background: rgba(139, 92, 246, 0.13);
	color: #fff;
	outline: none;
}

.qode-product-tabs a.is-active::after {
	content: "";
	position: absolute;
	left: 16px;
	right: 16px;
	bottom: 5px;
	height: 2px;
	border-radius: 999px;
	background: #8b5cf6;
}

.qode-product-section {
	position: relative;
	margin-top: 20px;
	padding: clamp(22px, 3vw, 34px);
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(12, 20, 39, 0.94), rgba(8, 14, 28, 0.94));
	box-shadow: 0 22px 54px rgba(0, 0, 0, 0.24);
}

.qode-product-section__heading h2 {
	position: relative;
	margin: 0 0 18px;
	padding-left: 16px;
	font-family: "Sora", system-ui, sans-serif;
	font-size: clamp(24px, 2.1vw, 32px);
	font-weight: 900;
	line-height: 1.08;
	letter-spacing: -0.035em;
	color: #fff;
}

.qode-product-section__heading h2::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.12em;
	bottom: 0.12em;
	width: 4px;
	border-radius: 999px;
	background: linear-gradient(180deg, #8b5cf6, #2d8cff);
}

.qode-product-prose {
	max-width: 78ch;
	color: #cbd4e5;
	font-size: 16px;
	line-height: 1.76;
}

.qode-product-genre-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 22px;
}

.qode-product-genre-chips span,
.qode-product-language-pills span {
	padding: 8px 11px;
	border: 1px solid rgba(139, 92, 246, 0.26);
	border-radius: 999px;
	background: rgba(139, 92, 246, 0.11);
	color: #d7ccff;
	font-size: 12px;
	font-weight: 850;
}

.qode-requirements-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.qode-product-top-panels .qode-requirements-grid {
	grid-template-columns: 1fr;
}

.qode-requirements-grid > div {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
}

.qode-requirements-grid h3 {
	margin: 0 0 14px;
	color: #fff;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 14px;
	font-weight: 950;
	letter-spacing: 0.12em;
	line-height: 1.2;
	text-transform: uppercase;
}

.qode-requirements-list {
	display: grid;
	gap: 8px;
	margin: 0;
}

.qode-requirement-row {
	display: grid;
	grid-template-columns: minmax(100px, 0.34fr) minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	padding: 8px 0;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 0;
	background: none;
}

.qode-requirement-row dt {
	color: #8fa2c2;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	line-height: 1.35;
	text-transform: uppercase;
}

.qode-requirement-row dd {
	margin: 0;
	color: #f0f3fb;
	font-size: 13px;
	line-height: 1.45;
}

.qode-screenshot-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.qode-screenshot-grid figure {
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 18px;
	background: #081225;
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

.qode-screenshot-grid figure:first-child {
	grid-column: 1 / -1;
}

.qode-screenshot-grid img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	transition: transform 180ms ease, filter 180ms ease;
}

.qode-screenshot-grid figure:hover img {
	transform: scale(1.018);
	filter: saturate(1.06);
}

.qode-product-metadata {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.qode-product-metadata > div,
.qode-region-limitations,
.qode-metadata-fallback {
	position: relative;
	padding: 15px 15px 15px 48px;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 15px;
	background: rgba(17, 24, 43, 0.70);
}

.qode-detail-icon {
	position: absolute;
	left: 15px;
	top: 16px;
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(139, 92, 246, 0.12);
	color: #b99cff;
}

.qode-detail-icon .qode-svg-icon {
	width: 14px;
	height: 14px;
}

.qode-product-metadata dt {
	color: #8fa2c2;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.10em;
	text-transform: uppercase;
}

.qode-product-metadata dd {
	margin: 5px 0 0;
	color: #f7f8fc;
	font-size: 14px;
	line-height: 1.5;
}

.qode-region-limitations {
	margin-top: 14px;	padding-left: 15px;
}

.qode-region-limitations h3 {
	margin: 0 0 8px;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 17px;
}

.qode-svg-icon {
	display: block;
	width: 1em;
	height: 1em;
}

.qode-brand-mark {
	display: block;
	object-fit: contain;
}

@media (max-width: 1180px) {
	.qode-product-blueprint-grid {
		grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.58fr);
		gap: 34px;
	}

	.qode-product-benefits,
	.qode-product-quick-details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.qode-product-quick-details div:nth-child(odd) {
		border-left: 0;
	}

	.qode-product-quick-details div:nth-child(n+3) {
		border-top: 1px solid rgba(255, 255, 255, 0.09);
	}
}

@media (max-width: 860px) {
	.qode-product-blueprint-shell {
		width: calc(100% - 40px);
	}

	.qode-product-blueprint-grid,
	.qode-requirements-grid,
	.qode-product-metadata {
		grid-template-columns: 1fr;
	}

	.qode-product-blueprint-grid {
		padding-block: 34px 52px;
	}

	.qode-product-blueprint-media {
		width: min(100%, 390px);
		margin-inline: auto;
	}

	.qode-product-purchase-panel__top {
		grid-template-columns: 1fr;
	}

	.qode-product-tabs {
		top: 76px;
		margin-inline: -4px;
	}
}

@media (max-width: 560px) {
	.qode-product-blueprint-shell {
		width: calc(100% - 26px);
	}

	.qode-product-blueprint-summary h1 {
		font-size: clamp(34px, 10.5vw, 46px);
	}

	.qode-product-summary__short {
		font-size: 16px;
	}

	.qode-product-top-badges {
		gap: 9px;
	}

	.qode-product-badge {
		min-height: 44px;
		padding: 9px 13px;
		font-size: 12px;
	}

	.qode-product-badge .qode-svg-icon,
	.qode-product-badge .qode-brand-mark {
		width: 20px;
		height: 20px;
	}

	.qode-product-thumb-gallery {
		grid-template-columns: 36px minmax(0, 1fr) 36px;
		gap: 8px;
	}

	.qode-product-gallery-arrow {
		width: 36px;
		height: 36px;
	}

	.qode-product-price,
	.qode-review-price {
		font-size: clamp(34px, 11vw, 44px);
	}

	.qode-product-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.qode-product-benefit {
		min-height: 128px;
		padding: 13px;
	}

	.qode-product-quick-details {
		grid-template-columns: 1fr;
	}

	.qode-product-quick-details div + div {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.09);
	}

	.qode-screenshot-grid {
		grid-template-columns: 1fr;
	}

	.qode-requirement-row {
		grid-template-columns: 1fr;
		gap: 4px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.qode-product-gallery-arrow,
	.qode-product-thumb,
	.qode-product-badge,
	.qode-product-benefit,
	.qode-screenshot-grid img {
		transition: none;
	}

	.qode-product-gallery-arrow:hover,
	.qode-product-badge:hover,
	.qode-product-badge:focus-visible,
	.qode-product-benefit:hover,
	.qode-screenshot-grid figure:hover img {
		transform: none;
	}
}

/* QODE single-product typography scale contract and region safety copy */
.qode-product-page--blueprint .qode-product-blueprint-summary h1 {
	font-size: clamp(18px, 1.5vw, 22px);
	font-weight: 900;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.qode-product-page--blueprint .qode-product-summary__short {
	max-width: 840px;
	font-size: 20px;
	font-weight: 450;
	line-height: 1.7;
}

.qode-product-page--blueprint .qode-product-badge {
	gap: 6px;
	min-height: 30px;
	padding: 5px 11px;
	font-size: 11px;
	font-weight: 850;
}

.qode-product-page--blueprint .qode-product-badge .qode-svg-icon {
	width: 22px;
	height: 22px;
}

.qode-product-page--blueprint .qode-product-badge .qode-brand-mark {
	width: 24px;
	height: 24px;
}

.qode-product-page--blueprint .qode-product-price,
.qode-product-page--blueprint .qode-review-price {
	font-size: clamp(19px, 1.8vw, 23px);
	font-weight: 950;
	line-height: 0.98;
}

.qode-product-page--blueprint .qode-availability {
	gap: 5px;
	min-height: 19px;
	padding: 2px 7px;
	font-size: 9px;
	font-weight: 800;
}

.qode-product-page--blueprint .qode-availability::before {
	width: 9px;
	height: 9px;
}

.qode-product-page--blueprint .qode-review-price-note {
	font-size: 10px;
	line-height: 1.3;
}

.qode-product-page--blueprint .qode-product-preview-card {
	padding: 16px;
}

.qode-product-page--blueprint .qode-product-preview-card__icon {
	width: 34px;
	height: 34px;
}

.qode-product-page--blueprint .qode-product-preview-card__icon .qode-svg-icon {
	width: 25px;
	height: 25px;
}

.qode-product-page--blueprint .qode-product-preview-card strong {
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0.08em;
}

.qode-product-page--blueprint .qode-product-preview-card span:not(.qode-product-preview-card__icon) {
	font-size: 15px;
	line-height: 1.45;
}

.qode-product-page--blueprint .qode-product-preview-notice {
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 6px;
	padding: 6px 8px;
}

.qode-product-page--blueprint .qode-warning-icon {
	width: 18px;
	height: 18px;
}

.qode-product-page--blueprint .qode-warning-icon .qode-svg-icon {
	width: 11px;
	height: 11px;
}

.qode-product-page--blueprint .qode-product-preview-notice strong {
	font-size: 13px;
	font-weight: 800;
}

.qode-product-page--blueprint .qode-product-preview-notice p {
	font-size: 13px;
	line-height: 1.5;
}

.qode-product-page--blueprint .qode-product-benefit {
	min-height: 148px;
	padding: 18px;
}

.qode-product-page--blueprint .qode-benefit-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 14px;
}

.qode-product-page--blueprint .qode-benefit-icon .qode-svg-icon,
.qode-product-page--blueprint .qode-benefit-icon .qode-brand-mark {
	width: 29px;
	height: 29px;
}

.qode-product-page--blueprint .qode-product-benefit b {
	font-size: 17px;
	font-weight: 850;
}

.qode-product-page--blueprint .qode-product-benefit span:not(.qode-benefit-icon) {
	font-size: 15px;
	line-height: 1.5;
}

.qode-product-page--blueprint .qode-product-quick-details div {
	padding: 19px 16px 19px 58px;
}

.qode-product-page--blueprint .qode-quick-icon {
	left: 16px;
	top: 19px;
	width: 30px;
	height: 30px;
}

.qode-product-page--blueprint .qode-quick-icon .qode-svg-icon {
	width: 25px;
	height: 25px;
}

.qode-product-page--blueprint .qode-product-quick-details dt,
.qode-product-page--blueprint .qode-product-metadata dt,
.qode-product-page--blueprint .qode-requirement-row dt {
	font-size: 14px;
}

.qode-product-page--blueprint .qode-product-quick-details dd,
.qode-product-page--blueprint .qode-product-metadata dd {
	font-size: 17px;
	font-weight: 700;
}

.qode-product-page--blueprint .qode-product-tabs {
	min-height: 72px;
}

.qode-product-page--blueprint .qode-product-tabs a {
	min-height: 50px;
	font-size: 15px;
	font-weight: 800;
}

.qode-product-page--blueprint .qode-product-section__heading h2 {
	font-size: clamp(30px, 2.25vw, 33px);
	font-weight: 900;
}

.qode-product-page--blueprint .qode-product-prose,
.qode-product-page--blueprint .qode-region-limitations p {
	font-size: 17px;
	line-height: 1.7;
}

.qode-product-page--blueprint .qode-requirements-grid h3 {
	font-size: 17px;
}

.qode-product-page--blueprint .qode-requirement-row dt {
	font-size: 15px;
	line-height: 1.55;
}

.qode-product-page--blueprint .qode-requirement-row dd {
	font-size: 13px;
	line-height: 1.5;
	overflow-wrap: break-word;
}

.qode-product-page--blueprint .qode-region-limitations h3 {
	font-size: 22px;
}

.qode-product-page--blueprint .qode-region-safety-copy {
	margin: 12px 0 0;
	color: #f2d2b2;
	font-size: 17px;
	font-weight: 750;
	line-height: 1.6;
}

.qode-product-page--blueprint .qode-region-safety-copy--muted {
	color: #a9b3ca;
	font-weight: 650;
}

.qode-product-page--blueprint .qode-region-countries {
	margin-top: 14px;
	border: 1px solid rgba(249, 115, 22, 0.24);
	border-radius: 14px;
	background: rgba(249, 115, 22, 0.07);
}

.qode-product-page--blueprint .qode-region-countries summary {
	min-height: 48px;
	padding: 13px 15px;
	color: #fff;
	font-size: 16px;
	font-weight: 850;
	cursor: pointer;
}

.qode-product-page--blueprint .qode-region-countries ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 8px;
	margin: 0;
	padding: 0 14px 14px 30px;
}

.qode-product-page--blueprint .qode-region-countries li {
	color: #f7f8fc;
	font-size: 16px;
	line-height: 1.5;
}

@media (min-width: 1440px) {
	.qode-product-page--blueprint .qode-product-blueprint-summary h1 {
		font-size: clamp(19px, 1.5vw, 23px);
	}

	.qode-product-page--blueprint .qode-product-summary__short {
		font-size: 22px;
	}

	.qode-product-page--blueprint .qode-product-badge {
		min-height: 48px;
		padding-inline: 19px;
		font-size: 15px;
	}

	.qode-product-page--blueprint .qode-product-badge .qode-svg-icon {
		width: 24px;
		height: 24px;
	}

	.qode-product-page--blueprint .qode-product-badge .qode-brand-mark {
		width: 26px;
		height: 26px;
	}

	.qode-product-page--blueprint .qode-product-price,
	.qode-product-page--blueprint .qode-review-price {
		font-size: clamp(20px, 1.8vw, 24px);
	}

	.qode-product-page--blueprint .qode-availability {
		min-height: 21px;
		padding-inline: 8px;
		font-size: 10px;
	}

	.qode-product-page--blueprint .qode-review-price-note {
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-product-preview-card strong {
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-product-preview-card span:not(.qode-product-preview-card__icon) {
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-product-preview-notice strong {
		font-size: 14px;
	}

	.qode-product-page--blueprint .qode-product-preview-notice p {
		font-size: 13px;
	}

	.qode-product-page--blueprint .qode-product-benefit {
		min-height: 152px;
	}

	.qode-product-page--blueprint .qode-product-benefit b {
		font-size: 18px;
	}

	.qode-product-page--blueprint .qode-product-benefit span:not(.qode-benefit-icon) {
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-product-quick-details div {
		padding-block: 20px;
	}

	.qode-product-page--blueprint .qode-product-quick-details dd,
	.qode-product-page--blueprint .qode-product-metadata dd {
		font-size: 18px;
	}

	.qode-product-page--blueprint .qode-product-tabs {
		min-height: 76px;
	}

	.qode-product-page--blueprint .qode-product-tabs a {
		min-height: 54px;
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-product-section__heading h2 {
		font-size: 34px;
	}

	.qode-product-page--blueprint .qode-product-prose,
	.qode-product-page--blueprint .qode-region-limitations p,
	.qode-product-page--blueprint .qode-region-safety-copy {
		font-size: 18px;
	}

	.qode-product-page--blueprint .qode-requirements-grid h3 {
		font-size: 18px;
	}

	.qode-product-page--blueprint .qode-requirement-row dt {
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-requirement-row dd {
		font-size: 14px;
	}
}

@media (max-width: 1023px) {
	.qode-product-page--blueprint .qode-product-blueprint-summary h1 {
		font-size: clamp(16px, 2.5vw, 19px);
	}

	.qode-product-page--blueprint .qode-product-summary__short {
		font-size: 19px;
	}

	.qode-product-page--blueprint .qode-product-price,
	.qode-product-page--blueprint .qode-review-price {
		font-size: clamp(17px, 3vw, 20px);
	}

	.qode-product-page--blueprint .qode-product-badge {
		font-size: 13px;
	}

	.qode-product-page--blueprint .qode-product-prose,
	.qode-product-page--blueprint .qode-product-metadata dd,
	.qode-product-page--blueprint .qode-product-quick-details dd,
	.qode-product-page--blueprint .qode-region-limitations p,
	.qode-product-page--blueprint .qode-region-safety-copy,
	.qode-product-page--blueprint .qode-requirement-row dd {
		font-size: 13px;
	}
}

@media (max-width: 768px) {
	.qode-product-page--blueprint .qode-product-blueprint-summary h1 {
		font-size: clamp(15px, 4vw, 18px);
	}

	.qode-product-page--blueprint .qode-product-summary__short {
		font-size: 17px;
		line-height: 1.68;
	}

	.qode-product-page--blueprint .qode-product-price,
	.qode-product-page--blueprint .qode-review-price {
		font-size: clamp(16px, 6vw, 18px);
	}

	.qode-product-page--blueprint .qode-product-badge {
		min-height: 42px;
		padding: 9px 13px;
		font-size: 12px;
	}

	.qode-product-page--blueprint .qode-product-badge .qode-svg-icon,
	.qode-product-page--blueprint .qode-product-badge .qode-brand-mark {
		width: 24px;
		height: 24px;
	}

	.qode-product-page--blueprint .qode-availability {
		min-height: 18px;
		padding: 2px 6px;
		font-size: 9px;
	}

	.qode-product-page--blueprint .qode-review-price-note,
	.qode-product-page--blueprint .qode-product-preview-card span:not(.qode-product-preview-card__icon),
	.qode-product-page--blueprint .qode-product-preview-notice p,
	.qode-product-page--blueprint .qode-product-benefit span:not(.qode-benefit-icon) {
		font-size: 14px;
	}

	.qode-product-page--blueprint .qode-product-preview-card strong,
	.qode-product-page--blueprint .qode-product-preview-notice strong,
	.qode-product-page--blueprint .qode-product-benefit b {
		font-size: 16px;
	}

	.qode-product-page--blueprint .qode-product-benefit {
		min-height: 140px;
		padding: 15px;
	}

	.qode-product-page--blueprint .qode-product-quick-details dt,
	.qode-product-page--blueprint .qode-product-metadata dt,
	.qode-product-page--blueprint .qode-requirement-row dt {
		font-size: 13px;
	}

	.qode-product-page--blueprint .qode-product-quick-details dd,
	.qode-product-page--blueprint .qode-product-metadata dd,
	.qode-product-page--blueprint .qode-product-prose,
	.qode-product-page--blueprint .qode-region-limitations p,
	.qode-product-page--blueprint .qode-region-safety-copy,
	.qode-product-page--blueprint .qode-requirement-row dd {
		font-size: 12px;
	}

	.qode-product-page--blueprint .qode-product-tabs {
		min-height: 68px;
	}

	.qode-product-page--blueprint .qode-product-tabs a {
		min-height: 46px;
		font-size: 14px;
	}

	.qode-product-page--blueprint .qode-product-section__heading h2 {
		font-size: clamp(27px, 6vw, 30px);
	}
}

@media (max-width: 560px) {
	.qode-product-page--blueprint .qode-product-quick-details div {
		padding: 18px 15px 18px 56px;
	}

	.qode-product-page--blueprint .qode-region-countries ul {
		grid-template-columns: 1fr;
	}
}

/* QODE single-product design polish pass: badge overflow safety, FAQ styling, region-countries hover state */
.qode-product-badge {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

.qode-product-faq details {
	padding: 18px 4px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

.qode-product-faq details:first-of-type {
	padding-top: 0;
}

.qode-product-faq details:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.qode-product-faq summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	list-style: none;
	color: #f7f8fc;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.3;
	cursor: pointer;
	transition: color 160ms ease;
}

.qode-product-faq summary::-webkit-details-marker {
	display: none;
}

.qode-product-faq summary::after {
	content: "+";
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border: 1px solid rgba(139, 92, 246, 0.34);
	border-radius: 50%;
	background: rgba(139, 92, 246, 0.10);
	color: #c2b1ff;
	font-size: 16px;
	line-height: 1;
	transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}

.qode-product-faq details[open] summary::after {
	transform: rotate(45deg);
}

.qode-product-faq summary:hover,
.qode-product-faq summary:focus-visible {
	color: #fff;
	outline: none;
}

.qode-product-faq summary:hover::after,
.qode-product-faq summary:focus-visible::after {
	border-color: rgba(139, 92, 246, 0.64);
	background: rgba(139, 92, 246, 0.18);
}

.qode-product-faq details p {
	max-width: 78ch;
	margin: 12px 0 0;
	color: #cbd4e5;
	font-size: 16px;
	line-height: 1.65;
}

.qode-product-page--blueprint .qode-region-countries summary:hover,
.qode-product-page--blueprint .qode-region-countries summary:focus-visible {
	color: #ffd9bd;
	outline: none;
}

@media (max-width: 768px) {
	.qode-product-faq summary {
		font-size: 15px;
	}

	.qode-product-faq details p {
		font-size: 15px;
	}
}

/* QODE single-product visual-reference pass: checkmark on positive availability pills */
.qode-availability--preview::before,
.qode-availability--available::before {
	content: "\2713";
	width: auto;
	height: auto;
	border-radius: 0;
	background: none;
	box-shadow: none;
	font-size: 10px;
	font-weight: 900;
	line-height: 1;
}

/* QODE design-authority pass: language pills, media count, premium price block */
.qode-product-language-block {
	margin-top: 16px;
}

.qode-product-language-heading {
	margin: 0 0 10px;
	color: #8fa2c2;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.qode-product-language-pills {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 9px;
}

.qode-tag-more {
	display: inline-block;
}

.qode-tag-more summary {
	display: inline-flex;
	align-items: center;
	padding: 8px 11px;
	border: 1px solid rgba(139, 92, 246, 0.34);
	border-radius: 999px;
	background: rgba(139, 92, 246, 0.16);
	color: #cbbdff;
	font-size: 12px;
	font-weight: 850;
	line-height: 1;
	cursor: pointer;
	list-style: none;
	transition: background 160ms ease, color 160ms ease;
}

.qode-tag-more summary::-webkit-details-marker {
	display: none;
}

.qode-tag-more summary:hover,
.qode-tag-more summary:focus-visible {
	background: rgba(139, 92, 246, 0.3);
	color: #fff;
	outline: none;
}

.qode-tag-more[open] summary {
	margin-bottom: 9px;
}

.qode-tag-more__list {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

/* QODE single-product visual-reference pass #2: breadcrumb, preview pill, price block, circular benefits, plain-text tabs, top panels grid */

.qode-product-breadcrumb {
	padding-block: 16px 0;
}

.qode-product-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.qode-product-breadcrumb li {
	display: flex;
	align-items: center;
	gap: 6px;
}

.qode-product-breadcrumb a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #9aa4bb;
	font-size: 13px;
	font-weight: 700;
	transition: color 160ms ease;
}

.qode-product-breadcrumb a:hover,
.qode-product-breadcrumb a:focus-visible {
	color: #fff;
	outline: none;
}

.qode-product-breadcrumb a .qode-svg-icon {
	width: 15px;
	height: 15px;
}

.qode-product-breadcrumb span[aria-current] {
	color: #d7ccff;
	font-size: 13px;
	font-weight: 700;
}

.qode-product-breadcrumb__sep {
	color: #4b5673;
	font-size: 13px;
}

.qode-product-preview-pill {
	display: inline-flex;
	align-items: center;
	margin: 0 0 4px;
	padding: 3px 9px;
	border-radius: 999px;
	background: #8b5cf6;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.02em;
}

.qode-product-benefit,
.qode-product-page--blueprint .qode-product-benefit {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-height: auto;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	transition: none;
}

.qode-product-benefit:hover,
.qode-product-benefit:focus-within {
	transform: none;
	box-shadow: none;
}

.qode-product-benefits {
	gap: 12px;
	margin-top: 0;
}

.qode-product-tabs,
.qode-product-page--blueprint .qode-product-tabs {
	position: sticky;
	top: 82px;
	z-index: 5;
	display: flex;
	gap: 22px;
	overflow-x: auto;
	margin: 0 0 24px;
	padding: 0 0 14px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 0;
	background: none;
	backdrop-filter: none;
	scrollbar-width: none;
	min-height: auto;
}

.qode-product-tabs::-webkit-scrollbar {
	display: none;
}

.qode-product-tabs a,
.qode-product-page--blueprint .qode-product-tabs a {
	position: relative;
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	min-height: auto;
	padding: 6px 0 12px;
	border-radius: 0;
	background: none;
	color: #8a94ac;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.qode-product-tabs a.is-active,
.qode-product-tabs a:hover,
.qode-product-tabs a:focus-visible {
	background: none;
	color: #fff;
	outline: none;
}

.qode-product-tabs a.is-active::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	border-radius: 999px;
	background: #8b5cf6;
}

.qode-product-top-panels {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 20px;
	margin-top: 20px;
}

.qode-product-top-panels .qode-product-section {
	margin-top: 0;
}

@media (max-width: 900px) {
	.qode-product-top-panels {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1023px) {
	.qode-product-tabs,
	.qode-product-page--blueprint .qode-product-tabs {
		top: 76px;
	}
}

/* QODE design-authority restructure: buy-box container (GameBoost-inspired consolidated purchase summary) */
.qode-product-buybox {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 6px;
	padding: 10px;
	border: 1px solid rgba(139, 92, 246, 0.3);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(139, 92, 246, 0.09), rgba(8, 14, 28, 0.94));
	box-shadow: 0 24px 54px rgba(0, 0, 0, 0.32);
}

.qode-product-buybox__header {
	display: flex;
	align-items: center;
	gap: 6px;
	padding-bottom: 6px;
	border-bottom: 1px solid rgba(139, 92, 246, 0.22);
	color: #cbbdff;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.qode-product-buybox__icon {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(139, 92, 246, 0.2);
	color: #cbbdff;
	flex: 0 0 auto;
}

.qode-product-buybox__icon .qode-svg-icon {
	width: 13px;
	height: 13px;
}

/* Compact quick-details: plain inline label:value rows instead of icon cards.
   Targets both the plain and .qode-product-page--blueprint selectors so it wins
   over every prior breakpoint variant regardless of viewport. */
.qode-product-quick-details,
.qode-product-page--blueprint .qode-product-quick-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px 20px;
	margin: 16px 0 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
}

.qode-product-quick-details div,
.qode-product-page--blueprint .qode-product-quick-details div {
	display: flex;
	align-items: baseline;
	gap: 7px;
	padding: 0;
	border: 0;
	position: static;
}

.qode-quick-icon,
.qode-product-page--blueprint .qode-quick-icon {
	position: static;
	display: inline-flex;
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
	color: #8a94ac;
	background: none;
	border-radius: 0;
}

.qode-quick-icon .qode-svg-icon,
.qode-product-page--blueprint .qode-quick-icon .qode-svg-icon {
	width: 14px;
	height: 14px;
}

.qode-product-quick-details dt,
.qode-product-page--blueprint .qode-product-quick-details dt {
	margin: 0;
	color: #8fa2c2;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	white-space: nowrap;
}

.qode-product-quick-details dd,
.qode-product-page--blueprint .qode-product-quick-details dd {
	margin: 0;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	overflow-wrap: break-word;
}

@media (max-width: 560px) {
	.qode-product-quick-details,
	.qode-product-page--blueprint .qode-product-quick-details {
		grid-template-columns: 1fr;
	}
}

/* QODE design-authority pass #3: compact trust row, language flags, simplified requirements */
.qode-product-trustrow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.qode-product-trustrow li {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #b6bfd3;
	font-size: 10px;
	font-weight: 700;
	white-space: nowrap;
}

.qode-product-trustrow .qode-svg-icon {
	width: 11px;
	height: 11px;
	color: #8a94ac;
	flex: 0 0 auto;
}

.qode-lang-flag {
	margin-right: 5px;
	font-size: 13px;
	line-height: 1;
}