/*
Theme Name: Slots Spectrum
Theme URI: https://slotsonthespectrum.com/
Author: Slots on the Spectrum
Description: A lightweight, accessible block theme for Slots on the Spectrum.
Version: 0.5.0
Requires at least: 6.6
Requires PHP: 8.2
Text Domain: slots-spectrum
*/

:root {
	--ss-bg: #07080d;
	--ss-bg-soft: #0b0d14;
	--ss-surface: #11131b;
	--ss-surface-strong: #1a1d28;
	--ss-border: #2b2f3d;
	--ss-border-strong: #3b4052;
	--ss-text: #f5f7fa;
	--ss-muted: #b8bcc8;
	--ss-muted-quiet: #7d8393;
	--ss-gold: #f7b500;
	--ss-cyan: #19d3ff;
	--ss-violet: #8a3ffc;
	--ss-pink: #ff43d1;
	--ss-green: #14d96b;
	--ss-radius-sm: 0.5rem;
	--ss-radius: 0.875rem;
	--ss-radius-lg: 1.25rem;
	--ss-shadow: 0 1.125rem 3.125rem rgb(0 0 0 / 0.34);
	--ss-spectrum: linear-gradient(90deg, #8f0d12 0%, #b31217 12%, #d9361b 22%, #e97700 31%, #d6a800 39%, #4baf24 50%, #00a17f 61%, #0088b8 72%, #1757b5 81%, #303fa3 91%, #5a2a9e 100%);
	--ss-spectrum-action: linear-gradient(rgb(7 8 13 / 0.4), rgb(7 8 13 / 0.4)), var(--ss-spectrum);
	--ss-font-display: "Bebas Neue", "Arial Narrow", Impact, sans-serif;
	--ss-font-body: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
	--ss-font-data: "JetBrains Mono", "Roboto Mono", Consolas, monospace;
}

html {
	scroll-behavior: smooth;
}

.ss-local-banner {
	background: #f4c96b;
	color: #080910;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	padding: 0.4rem 1rem;
	text-align: center;
}

body {
	background:
		radial-gradient(circle at 8% 3%, rgb(98 223 240 / 0.08), transparent 28rem),
		radial-gradient(circle at 92% 12%, rgb(173 148 255 / 0.08), transparent 30rem),
		var(--ss-bg);
	color: var(--ss-text);
}

body,
button,
input,
select,
textarea {
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body * {
	box-sizing: border-box;
}

a {
	text-underline-offset: 0.2em;
}

a:not(.wp-element-button) {
	color: var(--ss-cyan);
}

a:not(.wp-element-button):hover {
	color: #aaf2fb;
}

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--ss-gold);
	outline-offset: 4px;
}

::selection {
	background: var(--ss-gold);
	color: #11131c;
}

.skip-link {
	background: var(--ss-gold);
	border-radius: 0 0 var(--ss-radius-sm) var(--ss-radius-sm);
	color: #11131c;
	font-weight: 800;
	left: 1rem;
	padding: 0.75rem 1rem;
	position: fixed;
	top: 0;
	transform: translateY(-150%);
	z-index: 10000;
}

.skip-link:focus {
	transform: translateY(0);
}

.ss-site-header {
	background: rgb(8 9 16 / 0.94);
	border-bottom: 1px solid var(--ss-border);
	position: relative;
}

.ss-site-header::before,
.ss-spectrum-rule::before {
	background: var(--ss-spectrum);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.ss-header-inner {
	align-items: center;
	display: flex;
	gap: clamp(1rem, 2vw, 2rem);
	justify-content: space-between;
	min-height: 5rem;
}

.ss-brand {
	align-items: center;
	color: var(--ss-text) !important;
	display: inline-flex;
	flex: 0 0 auto;
	text-decoration: none;
}

.ss-header-logo {
	display: block;
	height: auto;
	max-width: 10.5rem;
	object-fit: contain;
	width: 100%;
}

.ss-site-header .wp-block-navigation {
	font-size: 0.87rem;
	font-weight: 700;
}

.ss-site-header .wp-block-navigation-item__content {
	color: var(--ss-text);
	padding: 0.65rem 0.2rem;
	text-decoration: none;
}

.ss-site-header .wp-block-navigation-item__content:hover {
	color: var(--ss-gold);
}

.ss-youtube-pending {
	background: #242837;
	border: 1px solid #4e556b;
	border-radius: 999px;
	color: #d6d8e1;
	cursor: not-allowed;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	padding: 0.62rem 0.85rem;
	text-transform: uppercase;
}

main {
	display: block;
}

.ss-section,
.ss-archive,
.ss-single,
.ss-page,
.ss-search-page,
.ss-error-page {
	padding-bottom: clamp(3.5rem, 8vw, 7rem);
	padding-top: clamp(3.5rem, 8vw, 7rem);
}

.ss-section--tight {
	padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
	padding-top: clamp(2.5rem, 5vw, 4.5rem);
}

.ss-section--surface {
	background: linear-gradient(180deg, rgb(18 21 33 / 0.75), rgb(12 14 23 / 0.94));
	border-bottom: 1px solid rgb(48 54 74 / 0.7);
	border-top: 1px solid rgb(48 54 74 / 0.7);
}

.ss-kicker,
.ss-eyebrow,
.ss-badge,
.ss-coverage-badge,
.ss-feature-tag {
	font-size: 0.72rem;
	font-weight: 850;
	letter-spacing: 0.13em;
	line-height: 1.2;
	text-transform: uppercase;
}

.ss-kicker,
.ss-eyebrow {
	color: var(--ss-gold);
}

.ss-kicker::before {
	background: var(--ss-spectrum);
	border-radius: 1rem;
	content: "";
	display: inline-block;
	height: 0.28rem;
	margin-right: 0.65rem;
	vertical-align: 0.15rem;
	width: 2.25rem;
}

.ss-hero {
	min-height: min(48rem, calc(100vh - 5rem));
	padding-bottom: clamp(4rem, 9vw, 8rem);
	padding-top: clamp(4rem, 9vw, 8rem);
	position: relative;
}

.ss-hero::after {
	background-image: linear-gradient(rgb(255 255 255 / 0.025) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / 0.025) 1px, transparent 1px);
	background-size: 3rem 3rem;
	content: "";
	inset: 0;
	mask-image: linear-gradient(to bottom, #000, transparent 85%);
	pointer-events: none;
	position: absolute;
}

.ss-hero-grid {
	align-items: center !important;
	display: grid !important;
	gap: clamp(2.5rem, 7vw, 7rem) !important;
	grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.95fr);
	position: relative;
	z-index: 1;
}

.ss-display,
.ss-archive h1,
.ss-single h1,
.ss-page h1,
.ss-search-page h1,
.ss-error-page h1 {
	font-size: clamp(2.6rem, 7vw, 6.3rem);
	font-weight: 880;
	letter-spacing: -0.06em;
	line-height: 0.95;
	margin-bottom: 1.35rem;
	margin-top: 0;
	text-wrap: balance;
}

.ss-display .ss-gold {
	color: var(--ss-gold);
}

.ss-lede {
	color: var(--ss-muted);
	font-size: clamp(1.1rem, 2vw, 1.35rem);
	line-height: 1.65;
	max-width: 40rem;
}

.wp-block-button__link,
.wp-element-button {
	background: var(--ss-gold);
	border: 2px solid var(--ss-gold);
	border-radius: 999px;
	color: #11131c;
	font-size: 0.83rem;
	font-weight: 850;
	letter-spacing: 0.035em;
	min-height: 2.9rem;
	padding: 0.82rem 1.2rem;
	text-transform: uppercase;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
	background: #ffe09c;
	border-color: #ffe09c;
	color: #11131c;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	border-color: #666e86;
	color: var(--ss-text);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: #202536;
	border-color: var(--ss-text);
}

.ss-hero-stage,
.ss-video-poster,
.ss-card-art,
.ss-single-hero-art {
	background:
		radial-gradient(circle at 25% 26%, rgb(98 223 240 / 0.34), transparent 22%),
		radial-gradient(circle at 76% 22%, rgb(255 122 158 / 0.25), transparent 24%),
		radial-gradient(circle at 68% 78%, rgb(173 148 255 / 0.28), transparent 28%),
		linear-gradient(145deg, #161b2b, #090b13 66%);
	border: 1px solid #414861;
	box-shadow: var(--ss-shadow);
	overflow: hidden;
	position: relative;
}

.ss-hero-stage {
	aspect-ratio: 5 / 4;
	border-radius: var(--ss-radius-lg);
	display: grid;
	place-items: center;
}

.ss-hero-logo-stage {
	align-items: center;
	background:
		radial-gradient(circle at 50% 45%, rgb(244 201 107 / 0.14), transparent 42%),
		linear-gradient(145deg, #151a28, #090b13 70%);
	border: 1px solid #414861;
	border-radius: var(--ss-radius-lg);
	box-shadow: var(--ss-shadow);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 26rem;
	overflow: hidden;
	padding: clamp(1.5rem, 5vw, 4rem);
	position: relative;
}

.ss-hero-logo-stage::before {
	background: var(--ss-spectrum);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.ss-hero-logo {
	display: block;
	height: auto;
	max-width: 35rem;
	object-fit: contain;
	position: relative;
	width: 100%;
	z-index: 1;
}

.ss-hero-brand-note {
	color: var(--ss-muted);
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin: 0.75rem 0 0;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	z-index: 1;
}

.ss-hero-stage::before,
.ss-video-poster::before,
.ss-card-art::before,
.ss-single-hero-art::before {
	background: conic-gradient(from 180deg at 50% 50%, transparent, rgb(98 223 240 / 0.42), transparent 30%, rgb(255 122 158 / 0.35), transparent 65%, rgb(244 201 107 / 0.3), transparent);
	border-radius: 50%;
	content: "";
	inset: 12%;
	position: absolute;
}

.ss-hero-stage::after {
	border: 1px solid rgb(255 255 255 / 0.28);
	border-radius: 50%;
	content: "";
	height: 42%;
	position: absolute;
	width: 42%;
}

.ss-stage-label {
	background: rgb(8 9 16 / 0.82);
	border: 1px solid #596077;
	border-radius: 999px;
	bottom: 1rem;
	color: var(--ss-muted);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	padding: 0.55rem 0.8rem;
	position: absolute;
	text-transform: uppercase;
	z-index: 2;
}

.ss-section-header {
	align-items: end;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
	margin-bottom: 2rem;
}

.ss-section-header h2 {
	font-size: clamp(2rem, 4vw, 3.5rem);
	letter-spacing: -0.045em;
	line-height: 1;
	margin: 0;
	text-wrap: balance;
}

.ss-text-link {
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-decoration: none;
	text-transform: uppercase;
}

.ss-discovery-grid,
.ss-media-grid,
.ss-query-grid > .wp-block-post-template,
.ss-card-grid {
	display: grid !important;
	gap: 1rem !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ss-discovery-card,
.ss-info-card,
.ss-query-card,
.ss-video-card,
.ss-stat-card,
.ss-empty-state,
.ss-inline-cta,
.ss-dev-banner,
.ss-definition-list {
	background: linear-gradient(150deg, rgb(25 30 45 / 0.98), rgb(15 18 29 / 0.98));
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	box-shadow: 0 0.8rem 2rem rgb(0 0 0 / 0.13);
}

.ss-discovery-card,
.ss-info-card,
.ss-query-card,
.ss-video-card,
.ss-stat-card {
	padding: 1.25rem;
}

.ss-discovery-card {
	min-height: 15rem;
	position: relative;
}

.ss-discovery-card::before {
	background: var(--card-accent, var(--ss-spectrum));
	border-radius: 999px;
	content: "";
	height: 0.28rem;
	left: 1.25rem;
	position: absolute;
	top: 1.25rem;
	width: 3rem;
}

.ss-discovery-card h3 {
	font-size: 1.55rem;
	letter-spacing: -0.03em;
	margin-top: 3.6rem;
}

.ss-discovery-card p,
.ss-info-card p,
.ss-query-card p,
.ss-video-card p {
	color: var(--ss-muted);
}

.ss-discovery-card a::after {
	content: " →";
}

.ss-discovery-card--watch { --card-accent: var(--ss-pink); }
.ss-discovery-card--games { --card-accent: var(--ss-cyan); }
.ss-discovery-card--casinos { --card-accent: var(--ss-gold); }
.ss-discovery-card--series { --card-accent: var(--ss-violet); }

.ss-media-grid {
	gap: 0.85rem !important;
	grid-template-columns: minmax(0, 1fr);
}

.ss-media-library .ss-media-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 17.5rem), 1fr));
}

.ss-page:has(.ss-media-library) .ss-page-content {
	max-width: 2080px;
	padding-top: clamp(1.5rem, 3vw, 2.5rem) !important;
	width: min(2080px, calc(100vw - 2rem));
}

.ss-page:has(.ss-media-library) .ss-page-header > .wp-block-group,
.ss-page:has(.ss-media-library) .ss-page-content > .wp-block-post-content > :where(.ss-kicker, .has-large-font-size),
.ss-media-quick-types--primary,
.ss-watch-discovery {
	margin-inline: auto;
	max-width: 73.75rem;
	width: min(73.75rem, calc(100vw - 2.5rem));
}

.ss-page:has(.ss-media-library) .ss-page-header {
	background:
		radial-gradient(circle at 15% 35%, rgb(244 201 107 / 0.1), transparent 24rem),
		linear-gradient(180deg, rgb(18 21 33 / 0.92), rgb(8 9 16 / 0.7));
	border-bottom: 1px solid rgb(244 201 107 / 0.25);
	padding-block: clamp(2.5rem, 5vw, 4.5rem);
	position: relative;
}

.ss-page:has(.ss-media-library) .ss-page-header::after {
	background: var(--ss-spectrum);
	border-radius: 999px;
	bottom: 0;
	content: "";
	height: 0.22rem;
	left: max(1rem, calc((100% - 1200px) / 2));
	position: absolute;
	width: min(10rem, 40vw);
}

.ss-page:has(.ss-media-library) .ss-page-header h1,
.ss-media-library .ss-section-header h2,
.ss-media-library .ss-video-card h3 {
	font-family: "Arial Black", "Trebuchet MS", Arial, sans-serif;
}

.ss-page:has(.ss-media-library) .ss-page-header h1 {
	color: #fff;
	letter-spacing: -0.055em;
	line-height: 0.95;
	text-shadow: 0 0 2rem rgb(244 201 107 / 0.14);
	text-transform: uppercase;
}

.ss-page:has(.ss-media-library) .ss-page-header .ss-lede {
	max-width: 55rem;
}

.ss-video-card {
	min-width: 0;
	padding: 0.9rem;
}

.ss-media-library[data-view="grid"] .ss-video-card {
	display: flex;
	flex-direction: column;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.ss-media-library[data-view="grid"] .ss-video-card:hover {
	border-color: rgb(244 201 107 / 0.55);
	box-shadow: 0 0.9rem 2.2rem rgb(0 0 0 / 0.26), 0 0 1.2rem rgb(244 201 107 / 0.06);
	transform: translateY(-2px);
}

.ss-video-card h3 {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: clamp(0.96rem, 1.1vw, 1.08rem);
	letter-spacing: -0.025em;
	line-height: 1.22;
	margin-block: 0.55rem 0.35rem;
	overflow: hidden;
	overflow-wrap: anywhere;
}

.ss-video-card .ss-text-link {
    align-items: center;
    display: inline-flex;
	font-size: 0.72rem;
	min-height: 44px;
	opacity: 0.8;
	padding-inline: 0.1rem;
}

.ss-media-library[data-view="grid"] .ss-video-card > p:last-child {
	margin-block: auto 0;
}

.ss-media-classification {
	display: table;
	margin: 0.65rem 0 0.2rem;
}

.ss-media-relationships {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	list-style: none;
	margin: 0.5rem 0;
	padding: 0;
}

.ss-media-relationships a {
	background: rgb(98 223 240 / 0.08);
	border: 1px solid rgb(98 223 240 / 0.3);
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.72rem;
	line-height: 1.2;
	padding: 0.4rem 0.55rem;
	text-decoration: none;
}

.ss-media-poster-link {
	border-radius: 0.75rem;
	display: block;
	margin-bottom: 0.75rem;
	text-decoration: none;
}

.ss-media-poster-link:focus-visible {
	outline: 3px solid var(--ss-gold);
	outline-offset: 4px;
}

.ss-media-poster {
	aspect-ratio: 16 / 9;
	background: #090b12;
	border: 1px solid #353a4d;
	border-radius: 0.75rem;
	display: block;
	overflow: hidden;
	position: relative;
}

.ss-media-poster img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ss-media-poster-fallback {
	align-items: center;
	color: var(--ss-muted);
	display: flex;
	height: 100%;
	justify-content: center;
	padding: 1rem;
}

.ss-media-duration {
	background: rgb(4 5 9 / 0.9);
	border-radius: 0.35rem;
	bottom: 0.5rem;
	color: #fff;
	font-size: 0.75rem;
	font-variant-numeric: tabular-nums;
	font-weight: 800;
	padding: 0.25rem 0.4rem;
	position: absolute;
	right: 0.5rem;
}

.ss-media-date {
	font-size: 0.7rem;
	margin: 0.15rem 0 0.45rem;
}

.ss-watch-discovery {
	background: rgb(13 16 26 / 0.96);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	box-shadow: 0 0.75rem 2rem rgb(0 0 0 / 0.25);
	display: grid;
	gap: 0.7rem;
	padding: 0.8rem;
	position: sticky;
	top: 0.5rem;
	z-index: 20;
}

.ss-watch-form {
	display: grid;
	gap: 0.65rem;
}

.ss-watch-primary-toolbar {
	align-items: end;
	display: flex;
	gap: 0.75rem;
	justify-content: space-between;
	min-width: 0;
	width: 100%;
}

.ss-watch-form label > span {
	display: block;
	font-family: "Trebuchet MS", Arial, sans-serif;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.07em;
	margin-bottom: 0.25rem;
	text-transform: uppercase;
}

.ss-watch-form input,
.ss-watch-form select,
.ss-watch-search-submit,
.ss-watch-display-controls button {
	background: var(--ss-surface-strong);
	border: 1px solid #4a5269;
	border-radius: var(--ss-radius-sm);
	color: var(--ss-text);
	min-height: 44px;
	padding: 0.55rem 0.7rem;
}

.ss-watch-search-row {
	align-items: end;
	display: flex;
	flex: 1 1 32rem;
	gap: 0.5rem;
	max-width: 37.5rem;
	min-width: 0;
	width: min(100%, 37.5rem);
}

.ss-watch-search {
	flex: 1 1 auto;
	min-width: 0;
}

.ss-watch-search input {
	width: 100%;
}

.ss-watch-select {
	flex: 0 1 8.5rem;
}

.ss-watch-select select {
	width: 100%;
}

.ss-watch-filter-panel {
	min-width: 0;
}

.ss-watch-filter-panel > summary {
	cursor: pointer;
	display: none;
	font-weight: 800;
	min-height: 44px;
	padding: 0.65rem 0.2rem;
}

.ss-watch-filter-fields {
	display: grid;
	gap: 0.5rem;
	grid-template-columns: repeat(auto-fit, minmax(9rem, 12rem));
	justify-content: start;
}

.ss-watch-filter-fields select {
	width: 100%;
}

.ss-watch-search-submit {
	background: var(--ss-gold);
	border-color: var(--ss-gold);
	color: #17120a;
	cursor: pointer;
	font-weight: 850;
}

.ss-watch-display-controls,
.ss-watch-view {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.ss-watch-display-controls {
	flex: 0 0 auto;
	justify-content: flex-end;
	margin-left: auto;
	min-width: 0;
}

.ss-watch-display-controls .ss-watch-select {
	flex: 0 1 8.5rem;
	min-width: 7rem;
}

.ss-watch-display-controls .ss-watch-view {
	flex: 0 0 auto;
}

.ss-watch-display-controls button {
	cursor: pointer;
	font-weight: 800;
	min-width: 44px;
	padding-inline: 0.65rem;
}

.ss-watch-display-controls button[aria-pressed="true"] {
	background: var(--ss-gold);
	border-color: var(--ss-gold);
	color: #17120a;
}

.ss-media-quick-types,
.ss-active-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin: 1rem 0;
}

.ss-media-quick-types a,
.ss-active-filters a {
	border: 1px solid var(--ss-border);
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.78rem;
	min-height: 44px;
	align-items: center;
	padding: 0.5rem 0.75rem;
	text-decoration: none;
}

.ss-media-quick-types a[aria-current="page"],
.ss-active-filters a:not(.ss-clear-filters) {
	background: rgb(244 201 107 / 0.12);
	border-color: rgb(244 201 107 / 0.55);
}

.ss-active-filters .ss-clear-filters {
	border-color: transparent;
}

.ss-media-filters,
.ss-media-pagination {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin: 2rem 0;
}

.ss-media-filters a,
.ss-media-pagination a,
.ss-media-pagination span {
	border: 1px solid var(--ss-border);
	border-radius: 999px;
	padding: 0.65rem 0.9rem;
	text-decoration: none;
}

.ss-media-filters a[aria-current="page"] {
	background: var(--ss-gold);
	border-color: var(--ss-gold);
	color: #17120a;
	font-weight: 850;
}

.ss-media-library,
.ss-related-media {
	margin-top: 2rem;
}

.ss-media-pagination {
	justify-content: center;
}

.ss-video-poster,
.ss-card-art {
	aspect-ratio: 16 / 9;
	border-radius: 0.75rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	margin-bottom: 1rem;
	padding: 1rem;
}

.ss-video-poster--short {
	background-position: center;
}

.ss-framed-media {
	aspect-ratio: 9 / 16;
	background: #05060a;
	border-radius: var(--ss-radius);
	display: grid;
	margin: 0 auto 1rem;
	max-height: 24rem;
	overflow: hidden;
	place-items: center;
	position: relative;
}

.ss-framed-media img {
	grid-area: 1 / 1;
	height: 100%;
	object-fit: contain;
	width: 100%;
	z-index: 2;
}

.ss-framed-media__copy {
	align-items: center;
	display: flex;
	flex-direction: column;
	grid-area: 1 / 1;
	max-width: 58%;
	position: relative;
	text-align: center;
	z-index: 1;
}

.ss-framed-media__copy strong {
	font-size: 1.05rem;
	line-height: 1.05;
}

.ss-framed-media__copy span {
	color: var(--ss-muted);
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	margin-top: 0.35rem;
	text-transform: uppercase;
}

.ss-video-poster span,
.ss-video-poster b,
.ss-card-art span,
.ss-card-art b {
	position: relative;
	z-index: 1;
}

.ss-video-poster span,
.ss-card-art span {
	color: var(--ss-muted);
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.12em;
}

.ss-video-poster b,
.ss-card-art b {
	font-size: 1.1rem;
	margin-top: 0.25rem;
}

.ss-badge,
.ss-coverage-badge,
.ss-feature-tag {
	border-radius: 999px;
	display: inline-flex;
	margin: 0.2rem 0.3rem 0.2rem 0;
	padding: 0.45rem 0.62rem;
}

.ss-badge {
	background: rgb(244 201 107 / 0.12);
	border: 1px solid rgb(244 201 107 / 0.52);
	color: #ffdf98 !important;
}

.ss-coverage-badge {
	background: rgb(105 229 169 / 0.12);
	border: 1px solid rgb(105 229 169 / 0.5);
	color: #a2f3cc !important;
}

.ss-feature-tag,
.taxonomy-game_feature a,
.taxonomy-venue_type a {
	background: rgb(98 223 240 / 0.1);
	border: 1px solid rgb(98 223 240 / 0.42);
	border-radius: 999px;
	color: #aaf2fb !important;
	font-size: 0.72rem;
	font-weight: 750;
	padding: 0.35rem 0.55rem;
	text-decoration: none;
}

.ss-query-grid > .wp-block-post-template {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	list-style: none;
	padding-left: 0;
}

.ss-query-grid > .wp-block-post-template:has(> :nth-child(2):last-child) {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-query-card {
	height: 100%;
}

.ss-query-card .wp-block-post-title {
	font-size: 1.35rem;
	line-height: 1.15;
	margin: 0.7rem 0;
}

.ss-query-card .wp-block-post-title a {
	color: var(--ss-text);
	text-decoration: none;
}

.ss-query-card .wp-block-post-title a:hover {
	color: var(--ss-gold);
}

.ss-query-card .wp-block-post-excerpt__more-link {
	display: inline-flex;
	font-weight: 800;
	margin-top: 0.65rem;
	text-decoration: none;
}

.ss-methodology-strip {
	display: grid !important;
	gap: 0.75rem !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin: 2rem 0;
}

.ss-stat-card {
	min-width: 0;
}

.ss-stat-card strong {
	display: block;
	font-size: clamp(1.15rem, 2.25vw, 2rem);
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.035em;
	line-height: 1;
	overflow-wrap: anywhere;
}

.ss-stat-card span {
	color: var(--ss-muted);
	display: block;
	font-size: 0.67rem;
	font-weight: 850;
	letter-spacing: 0.1em;
	margin-top: 0.75rem;
	text-transform: uppercase;
}

.ss-stat-card--coverage {
	background: linear-gradient(145deg, rgb(22 56 49 / 0.96), rgb(13 29 28 / 0.96));
	border-color: rgb(105 229 169 / 0.45);
}

.ss-about-grid {
	align-items: center !important;
	display: grid !important;
	gap: clamp(2rem, 6vw, 6rem) !important;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
}

.ss-about-logo {
	display: block;
	height: auto;
	margin-inline: auto;
	max-width: min(100%, 23rem);
	object-fit: contain;
}

.ss-youtube-cta {
	background:
		linear-gradient(120deg, rgb(255 122 158 / 0.12), transparent 34%),
		linear-gradient(160deg, #1a1e2c, #10131e);
	border: 1px solid #50566c;
	border-radius: var(--ss-radius-lg);
	display: grid !important;
	gap: 2rem !important;
	grid-template-columns: 1.2fr 0.8fr;
	padding: clamp(2rem, 6vw, 5rem);
}

.ss-youtube-actions {
	align-items: center;
	display: grid;
	gap: 1rem;
	grid-template-columns: 4.5rem 1fr;
	justify-items: start;
}

.ss-youtube-actions > div {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.ss-youtube-frame-accent {
	aspect-ratio: 9 / 16;
	height: auto;
	object-fit: contain;
	width: 4.5rem;
}

.ss-disabled-actions {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	justify-content: center;
}

.ss-disabled-button {
	background: #2c3040;
	border: 1px solid #5d647b;
	border-radius: 999px;
	color: #d6d9e3;
	cursor: not-allowed;
	font-size: 0.78rem;
	font-weight: 850;
	letter-spacing: 0.04em;
	padding: 0.85rem 1rem;
	text-transform: uppercase;
}

.ss-dev-note,
.ss-dev-banner {
	border-color: rgb(244 201 107 / 0.48);
	color: #f4e5bd;
}

.ss-seed-state,
.ss-verification-warning {
	border-left: 4px solid var(--ss-cyan);
	padding: 0.85rem 1rem;
}

.ss-seed-state {
	background: rgb(98 223 240 / 0.08);
	color: #c8f7fc;
}

.ss-verification-warning {
	background: rgb(244 201 107 / 0.1);
	border-left-color: var(--ss-gold);
	color: #ffe6ad;
}

.ss-dev-note {
	background: rgb(244 201 107 / 0.09);
	border-left: 4px solid var(--ss-gold);
	padding: 1rem 1.1rem;
}

.ss-dev-banner,
.ss-empty-state,
.ss-inline-cta {
	padding: clamp(1.4rem, 4vw, 2.5rem);
}

.ss-empty-state {
	border-style: dashed;
	text-align: center;
}

.ss-definition-list {
	padding: clamp(1.4rem, 4vw, 2.5rem);
}

.ss-definition-list h2 {
	color: var(--ss-gold);
	font-size: 1rem;
	letter-spacing: 0.08em;
	margin-bottom: 0.35rem;
	text-transform: uppercase;
}

.ss-definition-list p + h2 {
	border-top: 1px solid var(--ss-border);
	margin-top: 1.5rem;
	padding-top: 1.5rem;
}

.ss-check-list {
	list-style: none;
	padding-left: 0;
}

.ss-check-list li {
	border-bottom: 1px solid var(--ss-border);
	padding: 0.8rem 0 0.8rem 2rem;
	position: relative;
}

.ss-check-list li::before {
	color: var(--ss-green);
	content: "✓";
	font-weight: 900;
	left: 0;
	position: absolute;
}

.ss-archive-hero,
.ss-single-header,
.ss-page-header {
	background: linear-gradient(180deg, rgb(18 21 33 / 0.88), rgb(8 9 16 / 0));
	border-bottom: 1px solid rgb(48 54 74 / 0.7);
	padding-bottom: clamp(3rem, 7vw, 6rem);
	padding-top: clamp(3rem, 7vw, 6rem);
}

.ss-archive h1,
.ss-single h1,
.ss-page h1,
.ss-search-page h1,
.ss-error-page h1 {
	font-size: clamp(2.5rem, 6vw, 5rem);
}

.ss-archive-tools {
	align-items: end;
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.55fr);
	margin-bottom: 2rem;
}

.wp-block-search__input {
	background: #111521;
	border: 1px solid #555d75;
	border-radius: 999px;
	color: var(--ss-text);
	min-height: 3rem;
	padding: 0.7rem 1rem;
}

.wp-block-search__button {
	background: var(--ss-gold);
	border: 0;
	border-radius: 999px;
	color: #11131c;
	font-weight: 800;
	margin-left: 0.5rem;
	padding: 0.65rem 1rem;
}

.wp-block-categories-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.wp-block-categories-list a {
	background: #171b29;
	border: 1px solid #464d64;
	border-radius: 999px;
	color: var(--ss-text);
	display: inline-flex;
	font-size: 0.76rem;
	font-weight: 700;
	padding: 0.5rem 0.7rem;
	text-decoration: none;
}

.wp-block-query-pagination {
	border-top: 1px solid var(--ss-border);
	margin-top: 2.5rem;
	padding-top: 1.5rem;
}

.wp-block-query-pagination a,
.wp-block-query-pagination .current {
	background: #171b29;
	border: 1px solid #464d64;
	border-radius: 0.5rem;
	color: var(--ss-text);
	padding: 0.55rem 0.75rem;
	text-decoration: none;
}

.wp-block-query-pagination .current {
	border-color: var(--ss-gold);
	color: var(--ss-gold);
}

.ss-breadcrumbs {
	color: var(--ss-muted);
	font-size: 0.8rem;
	margin-bottom: 1.4rem;
}

.ss-breadcrumbs a {
	color: var(--ss-muted);
}

.ss-breadcrumbs span {
	margin: 0 0.45rem;
}

.ss-single-grid {
	display: grid !important;
	gap: clamp(2rem, 6vw, 5rem) !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
}

.ss-single-hero-art {
	aspect-ratio: 16 / 10;
	border-radius: var(--ss-radius-lg);
	display: grid;
	place-items: end start;
	padding: 1.2rem;
}

.ss-single-content > * + * {
	margin-top: 1.25rem;
}

.ss-single-modules {
	border-top: 1px solid var(--ss-border);
	margin-top: 3rem;
	padding-top: 3rem;
}

.ss-page-content,
.ss-single-content {
	font-size: 1.05rem;
	line-height: 1.75;
}

.ss-page-content > :where(p, h2, h3, ul, ol, blockquote):not(.alignwide):not(.alignfull),
.ss-single-content > :where(p, h2, h3, ul, ol, blockquote):not(.alignwide):not(.alignfull) {
	max-width: 48rem;
}

.ss-page-content h2,
.ss-single-content h2 {
	font-size: clamp(1.8rem, 4vw, 2.8rem);
	letter-spacing: -0.04em;
	line-height: 1.1;
	margin-top: 2.4rem;
}

.ss-page-content blockquote {
	border-left: 4px solid var(--ss-violet);
	color: #dfe1eb;
	font-size: 1.15rem;
	margin-left: 0;
	padding-left: 1.2rem;
}

.ss-prose-grid,
.ss-card-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ss-site-footer {
	background: #07080e;
	border-top: 1px solid var(--ss-border);
	padding-bottom: 2rem;
	padding-top: 4rem;
	position: relative;
}

.ss-site-footer::before {
	background: var(--ss-spectrum);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.ss-footer-grid {
	display: grid !important;
	gap: 2rem !important;
	grid-template-columns: 1.5fr repeat(3, minmax(8rem, 0.65fr));
}

.ss-footer-brand h2 {
	font-size: clamp(1.6rem, 3vw, 2.5rem);
	letter-spacing: -0.04em;
	margin-bottom: 0.5rem;
}

.ss-footer-logo {
	display: block;
	height: auto;
	margin: -1rem 0 -1.4rem;
	max-width: 14rem;
	width: 100%;
}

.ss-footer-brand p,
.ss-footer-meta {
	color: var(--ss-muted);
}

.ss-footer-col h3 {
	color: var(--ss-gold);
	font-size: 0.72rem;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.ss-footer-col ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ss-footer-col li + li {
	margin-top: 0.6rem;
}

.ss-footer-col a {
	color: var(--ss-muted);
	text-decoration: none;
}

.ss-footer-col a:hover {
	color: var(--ss-text);
}

.ss-social-placeholders {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 1.2rem;
}

.ss-social-placeholders span {
	border: 1px solid #41475c;
	border-radius: 999px;
	color: #aeb2c0;
	cursor: not-allowed;
	font-size: 0.7rem;
	font-weight: 750;
	padding: 0.4rem 0.6rem;
}

.ss-footer-meta {
	border-top: 1px solid var(--ss-border);
	font-size: 0.75rem;
	margin-top: 3rem;
	padding-top: 1.5rem;
}

@media (max-width: 960px) {
	.ss-discovery-grid,
	.ss-query-grid > .wp-block-post-template,
	.ss-card-grid,
	.ss-footer-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ss-hero-grid,
	.ss-about-grid,
	.ss-youtube-cta,
	.ss-single-grid,
	.ss-archive-tools {
		grid-template-columns: 1fr;
	}

	.ss-hero {
		min-height: auto;
	}

	.ss-methodology-strip {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ss-footer-brand {
		grid-column: 1 / -1;
	}

	.ss-disabled-actions {
		align-items: flex-start;
	}

	.ss-youtube-actions {
		grid-template-columns: 3.5rem 1fr;
	}

	.ss-youtube-frame-accent {
		width: 3.5rem;
	}
}

@media (max-width: 700px) {
	.ss-header-inner {
		min-height: 4.5rem;
	}

	.ss-header-logo {
		max-width: 8.25rem;
	}

	.ss-youtube-pending {
		display: none;
	}

	.ss-discovery-grid,
	.ss-media-grid,
	.ss-query-grid > .wp-block-post-template,
	.ss-card-grid,
	.ss-methodology-strip,
	.ss-footer-grid {
		grid-template-columns: 1fr;
	}

	.ss-section-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.8rem;
	}

	.ss-display {
		font-size: clamp(2.6rem, 14vw, 4.6rem);
	}

	.ss-methodology-strip {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ss-stat-card--coverage {
		grid-column: 1 / -1;
	}

	.ss-site-header .wp-block-navigation__responsive-container.is-menu-open {
		background: var(--ss-bg);
		color: var(--ss-text);
		padding: 1.5rem;
	}
}

/* How Slot Machines Work: research-led education within the established system. */
.ss-page:has(.ss-how-slots-page) .ss-page-header {
	padding-bottom: clamp(2.5rem, 5vw, 4.75rem);
	padding-top: clamp(2.5rem, 5vw, 4.75rem);
}

.ss-page:has(.ss-how-slots-page) .ss-page-header > .wp-block-group,
.ss-page:has(.ss-how-slots-page) .ss-page-content {
	max-width: 78rem !important;
	width: calc(100% - 3rem) !important;
}

.ss-page:has(.ss-how-slots-page) .ss-page-header h1 {
	font-family: var(--ss-font-hero);
	font-size: clamp(3rem, 6.7vw, 6.6rem);
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 0.91;
	max-width: 72rem;
	text-transform: uppercase;
}

.ss-page:has(.ss-how-slots-page) .ss-page-header .ss-lede {
	font-size: clamp(1.05rem, 1.8vw, 1.3rem);
	max-width: 58rem;
}

.ss-how-slots-page {
	color: var(--ss-text);
	font-size: 1rem;
	line-height: 1.68;
	margin-inline: auto;
	max-width: 75rem;
	min-width: 0;
	padding-bottom: clamp(4rem, 8vw, 7rem);
}

.ss-how-slots-page *,
.ss-how-slots-page *::before,
.ss-how-slots-page *::after {
	box-sizing: border-box;
}

.ss-how-slots-page :where(a, summary):focus-visible {
	outline: 3px solid var(--ss-cyan);
	outline-offset: 4px;
}

.ss-how-slots-page :where(p, li, td) {
	color: var(--ss-muted);
}

.ss-how-slots-page :where(h2, h3, h4) {
	color: var(--ss-text);
}

.ss-how-slots-page :target {
	scroll-margin-top: 7rem;
}

.ss-how-hero {
	align-items: center;
	display: grid;
	gap: clamp(2rem, 5vw, 4rem);
	grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
}

.ss-how-hero-copy,
.ss-how-hero-copy > * {
	min-width: 0;
}

.ss-how-hero h2 {
	font-size: clamp(2.2rem, 4.5vw, 4.25rem);
	line-height: 0.98;
	margin: 0.45rem 0 1.15rem;
}

.ss-how-lede {
	color: var(--ss-text) !important;
	font-size: clamp(1.08rem, 1.8vw, 1.3rem);
	font-weight: 650;
	line-height: 1.55;
}

.ss-how-topic-nav {
	background: rgb(17 19 27 / 0.94);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	display: grid;
	gap: 0.75rem;
	margin-top: clamp(2.5rem, 5vw, 4rem);
	padding: 1rem 1.1rem;
}

.ss-how-topic-nav > span {
	color: var(--ss-gold);
	font-family: var(--ss-font-data);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ss-how-topic-nav > div {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.ss-how-topic-nav a {
	background: var(--ss-bg-soft);
	border: 1px solid var(--ss-border-strong);
	border-radius: 999px;
	color: var(--ss-text);
	font-size: 0.86rem;
	font-weight: 750;
	padding: 0.45rem 0.75rem;
	text-decoration: none;
}

.ss-how-topic-nav a:hover {
	border-color: var(--ss-cyan);
	color: var(--ss-cyan);
}

.ss-how-section {
	margin-top: clamp(4.5rem, 8vw, 7.5rem);
	min-width: 0;
}

.ss-how-section--framed {
	background: linear-gradient(145deg, rgb(255 255 255 / 0.038), rgb(255 255 255 / 0.014));
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	padding: clamp(1.3rem, 4vw, 3rem);
}

.ss-how-section-header {
	margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
	max-width: 56rem;
}

.ss-how-section-header h2,
.ss-how-section--answer h2,
.ss-how-section--responsible h2 {
	font-family: var(--ss-font-hero);
	font-size: clamp(2.35rem, 5vw, 4.5rem);
	font-weight: 900;
	letter-spacing: -0.035em;
	line-height: 0.95;
	margin: 0.35rem 0 0.85rem;
	text-transform: uppercase;
}

.ss-how-section-header > p:last-child {
	font-size: 1.05rem;
}

.ss-how-card-grid,
.ss-how-metric-grid,
.ss-how-term-grid,
.ss-how-myth-grid,
.ss-evidence-levels {
	display: grid;
	gap: 1rem;
}

.ss-how-card-grid--3,
.ss-how-term-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ss-how-card-grid article,
.ss-how-metric-grid article,
.ss-how-term-grid article,
.ss-how-myth-grid article,
.ss-evidence-levels article {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	min-width: 0;
	padding: 1.15rem;
}

.ss-how-card-grid article {
	box-shadow: inset 0 3px 0 rgb(0 136 184 / 0.6);
}

.ss-how-card-grid h3,
.ss-how-metric-grid h3,
.ss-how-term-grid h3,
.ss-how-myth-grid h3 {
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	line-height: 1.1;
	margin: 0.5rem 0 0.6rem;
}

.ss-how-card-grid p,
.ss-how-metric-grid p,
.ss-how-term-grid p,
.ss-how-myth-grid p,
.ss-evidence-levels p {
	margin: 0;
}

.ss-how-card-number {
	color: var(--ss-gold);
	font-family: var(--ss-font-data);
	font-size: 0.8rem;
	font-weight: 800;
}

.ss-how-timeline {
	display: grid;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ss-how-timeline li {
	display: grid;
	gap: 1rem;
	grid-template-columns: 3rem minmax(0, 1fr);
	margin: 0;
	position: relative;
}

.ss-how-timeline li::before {
	background: linear-gradient(var(--ss-cyan), var(--ss-violet));
	content: "";
	height: 100%;
	left: 1.45rem;
	position: absolute;
	top: 2.75rem;
	width: 2px;
}

.ss-how-timeline li:last-child::before {
	display: none;
}

.ss-how-timeline li > span {
	align-items: center;
	background: var(--ss-bg);
	border: 2px solid var(--ss-cyan);
	border-radius: 50%;
	color: var(--ss-text);
	display: flex;
	font-family: var(--ss-font-data);
	font-weight: 900;
	height: 3rem;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.ss-how-timeline li > div {
	border-bottom: 1px solid var(--ss-border);
	padding: 0 0 1.35rem;
}

.ss-how-timeline li + li > div {
	padding-top: 1.35rem;
}

.ss-how-timeline h3,
.ss-how-timeline p {
	margin: 0;
}

.ss-how-timeline p {
	margin-top: 0.3rem;
}

.ss-how-callout {
	background: rgb(0 136 184 / 0.08);
	border: 1px solid rgb(0 136 184 / 0.38);
	border-left: 4px solid var(--ss-cyan);
	border-radius: var(--ss-radius);
	margin: 1.5rem 0 0;
	padding: 1.1rem 1.2rem;
}

.ss-how-callout--key {
	background: linear-gradient(135deg, rgb(0 161 127 / 0.1), rgb(23 87 181 / 0.08));
	border-color: rgb(0 161 127 / 0.45);
	border-left-color: var(--ss-green);
}

.ss-how-callout--warning {
	background: rgb(214 168 0 / 0.08);
	border-color: rgb(214 168 0 / 0.4);
	border-left-color: var(--ss-gold);
}

.ss-how-callout > strong {
	color: var(--ss-text);
	display: block;
	font-size: 1.05rem;
	margin-bottom: 0.25rem;
}

.ss-how-callout p {
	margin: 0;
}

.ss-how-split,
.ss-how-media-row,
.ss-how-section--answer,
.ss-how-section--responsible {
	display: grid;
	gap: clamp(1.25rem, 4vw, 3rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-how-list-card,
.ss-how-check-card {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	padding: clamp(1.2rem, 3vw, 1.75rem);
}

.ss-how-list-card--yes {
	box-shadow: inset 4px 0 0 var(--ss-green);
}

.ss-how-list-card--no {
	box-shadow: inset 4px 0 0 #d9361b;
}

.ss-how-list-card h3,
.ss-how-check-card h3 {
	font-size: 1.5rem;
	margin: 0 0 0.8rem;
}

.ss-how-list-card ul,
.ss-how-check-card ul,
.ss-how-verification-policy ul {
	margin-bottom: 0;
	padding-left: 1.2rem;
}

.ss-how-media-row {
	align-items: center;
	margin-top: 1.5rem;
}

.ss-how-media-row > p {
	font-size: 1.08rem;
}

.ss-how-metric-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-how-metric-grid article {
	background: rgb(7 8 13 / 0.55);
}

.ss-how-formula-panel {
	background: var(--ss-bg);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius);
	display: grid;
	gap: 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 1rem;
}

.ss-how-formula-panel > div {
	display: grid;
	gap: 0.25rem;
	padding: 1rem;
}

.ss-how-formula-panel > div:nth-child(odd) {
	border-right: 1px solid var(--ss-border);
}

.ss-how-formula-panel > div:nth-child(-n + 2) {
	border-bottom: 1px solid var(--ss-border);
}

.ss-how-formula-panel span {
	color: var(--ss-gold);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.ss-how-formula-panel code {
	color: var(--ss-text);
	font-family: var(--ss-font-data);
	font-size: clamp(0.78rem, 1.7vw, 0.92rem);
	overflow-wrap: anywhere;
}

.ss-how-term-grid article {
	border-top: 3px solid var(--ss-cyan);
}

.ss-how-term-grid h3 a {
	color: var(--ss-text);
	text-decoration-color: var(--ss-cyan);
	text-underline-offset: 0.18em;
}

.ss-source-ref {
	font-family: var(--ss-font-data);
	font-size: 0.78em;
	font-weight: 800;
	white-space: nowrap;
}

.ss-evidence-badge {
	align-items: center;
	border: 1px solid currentColor;
	border-radius: 999px;
	display: inline-flex;
	font-family: var(--ss-font-data);
	font-size: 0.68rem;
	font-weight: 850;
	letter-spacing: 0.035em;
	line-height: 1.2;
	padding: 0.3rem 0.5rem;
	text-transform: uppercase;
}

.ss-evidence-badge--machine { color: #79dc70; }
.ss-evidence-badge--manufacturer { color: #46d6ed; }
.ss-evidence-badge--platform { color: #aab9ff; }
.ss-evidence-badge--observed { color: #f3c951; }
.ss-evidence-badge--pending { color: #ef9b74; }

.ss-huff-grid {
	display: grid;
	gap: 0.75rem;
}

.ss-game-evidence {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	overflow: hidden;
}

.ss-game-evidence[open] {
	border-color: rgb(0 136 184 / 0.55);
}

.ss-game-evidence summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	list-style: none;
	padding: 1rem 1.1rem;
}

.ss-game-evidence summary::-webkit-details-marker {
	display: none;
}

.ss-game-evidence summary > span:first-child {
	display: grid;
	gap: 0.45rem;
}

.ss-game-evidence summary strong {
	color: var(--ss-text);
	font-size: 1.08rem;
}

.ss-game-evidence summary small {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.ss-game-evidence summary > span:last-child {
	color: var(--ss-cyan);
	font-size: 1.5rem;
	font-weight: 800;
	transition: transform 150ms ease;
}

.ss-game-evidence[open] summary > span:last-child {
	transform: rotate(45deg);
}

.ss-game-evidence > div {
	border-top: 1px solid var(--ss-border);
	padding: 1rem 1.1rem;
}

.ss-game-evidence > div > :first-child {
	margin-top: 0;
}

.ss-game-evidence > div > :last-child {
	margin-bottom: 0;
}

.ss-scope-notice {
	color: var(--ss-gold) !important;
	font-weight: 800;
}

.ss-how-class-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-how-class-grid article {
	background: linear-gradient(150deg, #161925, #0c0e15);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	padding: clamp(1.25rem, 4vw, 2rem);
}

.ss-how-class-grid article > span,
.ss-how-myth-grid article > span {
	color: var(--ss-gold);
	font-family: var(--ss-font-data);
	font-size: 0.75rem;
	font-weight: 900;
	letter-spacing: 0.08em;
}

.ss-how-class-grid h3 {
	font-size: 1.65rem;
	margin: 0.4rem 0 0.75rem;
}

.ss-how-table-wrap {
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	overflow-x: auto;
}

.ss-how-table-wrap table {
	border: 0;
	border-collapse: collapse;
	margin: 0;
	min-width: 46rem;
	width: 100%;
}

.ss-how-table-wrap :where(th, td) {
	border: 0;
	border-bottom: 1px solid var(--ss-border);
	padding: 0.85rem 1rem;
	text-align: left;
	vertical-align: top;
}

.ss-how-table-wrap tbody tr:last-child :where(th, td) {
	border-bottom: 0;
}

.ss-how-table-wrap thead th {
	background: var(--ss-surface-strong);
	color: var(--ss-text);
	font-size: 0.78rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ss-how-table-wrap tbody th {
	color: var(--ss-text);
	width: 31%;
}

.ss-how-section--answer {
	background: linear-gradient(120deg, rgb(143 13 18 / 0.17), rgb(23 87 181 / 0.13));
	border: 1px solid rgb(48 63 163 / 0.55);
	border-radius: var(--ss-radius-lg);
	padding: clamp(1.4rem, 4vw, 3rem);
}

.ss-how-section--answer h2 {
	margin-bottom: 0;
}

.ss-how-section--answer > div:last-child > :first-child {
	margin-top: 0;
}

.ss-how-myth-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ss-how-myth-grid article {
	border-top: 3px solid var(--ss-gold);
}

.ss-how-myth-grid h3 {
	font-size: 1.15rem;
}

.ss-evidence-levels {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ss-evidence-levels article {
	padding: 1rem;
}

.ss-evidence-levels p {
	font-size: 0.9rem;
	margin-top: 0.8rem;
}

.ss-how-verification-policy {
	margin-top: 1.5rem;
}

.ss-how-verification-policy > div {
	background: rgb(7 8 13 / 0.55);
	border-radius: var(--ss-radius);
	padding: 1.25rem;
}

.ss-how-verification-policy h3 {
	margin-top: 0;
}

.ss-pending-register {
	background: rgb(233 119 0 / 0.06);
	border: 1px solid rgb(233 119 0 / 0.34);
	border-radius: var(--ss-radius);
	margin-top: 1rem;
	padding: 0;
}

.ss-pending-register summary {
	color: var(--ss-text);
	cursor: pointer;
	font-weight: 850;
	padding: 0.95rem 1.1rem;
}

.ss-pending-register ul {
	border-top: 1px solid rgb(233 119 0 / 0.24);
	margin: 0;
	padding: 1rem 1.2rem 1rem 2.3rem;
}

.ss-how-section--responsible {
	align-items: center;
	background: linear-gradient(140deg, rgb(0 161 127 / 0.13), rgb(0 136 184 / 0.08));
	border: 1px solid rgb(0 161 127 / 0.38);
	border-radius: var(--ss-radius-lg);
	padding: clamp(1.4rem, 4vw, 3rem);
}

.ss-how-button {
	background: var(--ss-gold);
	border: 2px solid var(--ss-gold);
	border-radius: var(--ss-radius-sm);
	color: #07080d !important;
	display: inline-flex;
	font-weight: 900;
	padding: 0.7rem 1rem;
	text-decoration: none;
}

.ss-how-button:hover {
	background: transparent;
	color: var(--ss-gold) !important;
}

.ss-how-sources {
	border-top: 1px solid var(--ss-border);
	padding-top: 2rem;
}

.ss-how-sources ol {
	columns: 2;
	column-gap: 3rem;
	font-size: 0.9rem;
	padding-left: 1.4rem;
}

.ss-how-sources li {
	break-inside: avoid;
	margin-bottom: 0.6rem;
}

.ss-how-sources li:target {
	background: rgb(25 211 255 / 0.08);
	border-radius: 0.3rem;
}

.ss-how-sources a {
	overflow-wrap: anywhere;
}

.ss-how-reviewed {
	color: var(--ss-muted-quiet) !important;
	font-size: 0.85rem;
	margin-top: 1.5rem;
}

.ss-how-disclaimers {
	background: var(--ss-bg-soft);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	margin-top: 2.5rem;
	padding: clamp(1.2rem, 3vw, 1.8rem);
}

.ss-how-disclaimers h2 {
	font-size: 1.5rem;
	margin: 0 0 0.8rem;
}

.ss-how-disclaimers p {
	font-size: 0.88rem;
	margin: 0;
}

.ss-how-disclaimers p + p {
	margin-top: 0.6rem;
}

/* Original, swappable visual placeholders; data-asset-key preserves the shot-list role. */
.ss-research-placeholder {
	background:
		linear-gradient(140deg, rgb(23 87 181 / 0.17), rgb(0 161 127 / 0.09)),
		repeating-linear-gradient(90deg, transparent 0 2.9rem, rgb(255 255 255 / 0.025) 2.9rem 3rem),
		var(--ss-bg-soft);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius-lg);
	display: grid;
	margin: 1.5rem 0 0;
	min-height: 15rem;
	min-width: 0;
	overflow: hidden;
	position: relative;
}

.ss-how-hero .ss-research-placeholder {
	aspect-ratio: 4 / 3;
	margin: 0;
}

.ss-research-placeholder::before {
	background: var(--ss-spectrum);
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.ss-research-placeholder > div {
	align-self: center;
	justify-self: stretch;
	padding: 2rem;
}

.ss-research-placeholder figcaption {
	align-self: end;
	background: rgb(7 8 13 / 0.86);
	border-top: 1px solid var(--ss-border);
	display: grid;
	gap: 0.15rem;
	padding: 0.75rem 0.9rem;
}

.ss-research-placeholder figcaption strong {
	color: var(--ss-gold);
	font-family: var(--ss-font-data);
	font-size: 0.7rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ss-research-placeholder figcaption span {
	color: var(--ss-muted);
	font-size: 0.8rem;
}

.ss-placeholder-visual {
	display: grid;
	gap: 0.7rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ss-placeholder-visual span {
	background: linear-gradient(180deg, #303fa3, #11131b 48%, #e97700 49% 55%, #090a0f 56%);
	border: 1px solid rgb(255 255 255 / 0.2);
	border-radius: 1.5rem 1.5rem 0.5rem 0.5rem;
	box-shadow: 0 0 1.5rem rgb(23 87 181 / 0.25);
	height: 9rem;
}

.ss-placeholder-controls,
.ss-placeholder-paytable,
.ss-placeholder-sequence,
.ss-placeholder-comparison,
.ss-placeholder-flow,
.ss-placeholder-responsible {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	justify-content: center;
}

.ss-placeholder-controls span,
.ss-placeholder-paytable span,
.ss-placeholder-sequence span,
.ss-placeholder-comparison span,
.ss-placeholder-flow span,
.ss-placeholder-responsible span {
	background: rgb(7 8 13 / 0.8);
	border: 1px solid rgb(25 211 255 / 0.42);
	border-radius: 0.5rem;
	color: var(--ss-text);
	font-family: var(--ss-font-data);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	padding: 0.7rem;
	text-align: center;
}

.ss-placeholder-controls span:last-child {
	background: var(--ss-gold);
	border-color: var(--ss-gold);
	color: #07080d;
}

.ss-placeholder-chart {
	align-items: end;
	display: flex;
	gap: 0.45rem;
	height: 10rem;
}

.ss-placeholder-chart i {
	background: linear-gradient(#00a17f, #1757b5);
	border-radius: 0.25rem 0.25rem 0 0;
	flex: 1;
}

.ss-placeholder-chart i:nth-child(1) { height: 28%; }
.ss-placeholder-chart i:nth-child(2) { height: 86%; }
.ss-placeholder-chart i:nth-child(3) { height: 42%; }
.ss-placeholder-chart i:nth-child(4) { height: 68%; }
.ss-placeholder-chart i:nth-child(5) { height: 35%; }
.ss-placeholder-chart i:nth-child(6) { height: 57%; }

.ss-placeholder-persistence,
.ss-placeholder-class {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-placeholder-persistence span,
.ss-placeholder-class span {
	align-items: center;
	background: rgb(7 8 13 / 0.75);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius);
	color: var(--ss-muted);
	display: grid;
	font-family: var(--ss-font-data);
	font-size: 0.68rem;
	gap: 0.4rem;
	justify-items: center;
	padding: 1.2rem;
	text-align: center;
}

.ss-placeholder-persistence b,
.ss-placeholder-class b {
	color: var(--ss-gold);
	font-size: 1.5rem;
}

.ss-placeholder-class {
	align-items: center;
	grid-template-columns: 1fr auto 1fr;
}

.ss-placeholder-class i,
.ss-placeholder-flow i {
	color: var(--ss-cyan);
	font-family: var(--ss-font-data);
	font-size: 0.7rem;
	font-style: normal;
	text-align: center;
}

.ss-placeholder-meter,
.ss-placeholder-card,
.ss-placeholder-map {
	align-items: center;
	display: grid;
	gap: 0.5rem;
	justify-items: center;
	text-align: center;
}

.ss-placeholder-meter small,
.ss-placeholder-card span,
.ss-placeholder-map span {
	color: var(--ss-gold);
	font-family: var(--ss-font-data);
	font-weight: 850;
	letter-spacing: 0.08em;
}

.ss-placeholder-meter strong {
	color: var(--ss-text);
	font-family: var(--ss-font-data);
	font-size: clamp(1.8rem, 5vw, 3.2rem);
}

.ss-placeholder-meter span,
.ss-placeholder-card small {
	color: var(--ss-muted);
	font-family: var(--ss-font-data);
	font-size: 0.68rem;
}

.ss-placeholder-card strong,
.ss-placeholder-map strong {
	color: var(--ss-text);
	font-size: 1.6rem;
}

.ss-placeholder-map span {
	background: rgb(7 8 13 / 0.72);
	border: 1px solid var(--ss-border-strong);
	border-radius: 999px;
	font-size: 0.68rem;
	padding: 0.45rem 0.7rem;
}

@media (max-width: 1020px) {
	.ss-how-card-grid--3,
	.ss-how-term-grid,
	.ss-how-myth-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ss-evidence-levels {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.ss-how-hero,
	.ss-how-split,
	.ss-how-media-row,
	.ss-how-section--answer,
	.ss-how-section--responsible {
		grid-template-columns: 1fr;
	}

	.ss-how-hero .ss-research-placeholder {
		aspect-ratio: 16 / 8;
	}

	.ss-how-sources ol {
		columns: 1;
	}
}

@media (max-width: 700px) {
	.ss-page:has(.ss-how-slots-page) .ss-page-header > .wp-block-group,
	.ss-page:has(.ss-how-slots-page) .ss-page-content {
		width: calc(100% - 2rem) !important;
	}

	.ss-page:has(.ss-how-slots-page) .ss-page-header h1 {
		font-size: clamp(2.6rem, 13vw, 4.4rem);
	}

	.ss-how-section {
		margin-top: 4rem;
	}

	.ss-how-section--framed,
	.ss-how-section--answer,
	.ss-how-section--responsible {
		padding: 1.1rem;
	}

	.ss-how-metric-grid,
	.ss-how-formula-panel,
	.ss-how-class-grid,
	.ss-evidence-levels {
		grid-template-columns: 1fr;
	}

	.ss-how-formula-panel > div {
		border-bottom: 1px solid var(--ss-border) !important;
		border-right: 0 !important;
	}

	.ss-how-formula-panel > div:last-child {
		border-bottom: 0 !important;
	}

	.ss-how-hero .ss-research-placeholder {
		aspect-ratio: auto;
	}

	.ss-placeholder-visual {
		gap: 0.4rem;
	}

	.ss-placeholder-visual span {
		height: 7rem;
	}
}

@media (max-width: 520px) {
	.ss-how-card-grid--3,
	.ss-how-term-grid,
	.ss-how-myth-grid {
		grid-template-columns: 1fr;
	}

	.ss-how-topic-nav > div {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ss-how-topic-nav a {
		text-align: center;
	}

	.ss-placeholder-class,
	.ss-placeholder-persistence {
		grid-template-columns: 1fr;
	}

	.ss-placeholder-class i {
		transform: rotate(90deg);
	}

	.ss-research-placeholder > div {
		padding: 1.2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ss-game-evidence summary > span:last-child {
		transition: none;
	}
}

@media (forced-colors: active) {
	.ss-research-placeholder,
	.ss-how-section--framed,
	.ss-how-section--answer,
	.ss-how-section--responsible,
	.ss-how-card-grid article {
		border: 1px solid CanvasText;
	}
}

/* Slot Machine Glossary: searchable server-rendered reference content. */
.ss-page:has(.ss-glossary-page) .ss-page-header {
	padding-block: clamp(2.25rem, 4vw, 3.75rem);
}

.ss-page:has(.ss-glossary-page) .ss-page-header > .wp-block-group,
.ss-page:has(.ss-glossary-page) .ss-page-content {
	margin-inline: auto;
	max-width: 75rem;
	width: min(75rem, calc(100vw - 2.5rem));
}

.ss-page:has(.ss-glossary-page) .ss-page-header h1 {
	font-size: clamp(3rem, 7vw, 6rem);
}

.ss-page:has(.ss-glossary-page) .ss-page-header .ss-lede {
	max-width: 47rem;
}

.ss-glossary-page {
	font-size: 1rem;
	line-height: 1.65;
	margin-inline: auto;
	max-width: 72.5rem;
	min-width: 0;
}

.ss-glossary-page :where(a, button, input):focus-visible {
	outline: 3px solid var(--ss-cyan);
	outline-offset: 3px;
}

.ss-glossary-page :where(p, a, h2, h3) {
	overflow-wrap: anywhere;
}

.ss-glossary-intro {
	max-width: 52rem;
}

.ss-glossary-intro .ss-glossary-lede {
	color: var(--ss-text);
	font-size: clamp(1.2rem, 2.2vw, 1.55rem);
	line-height: 1.55;
	margin-top: 0.75rem;
}

.ss-glossary-essentials,
.ss-glossary-tools,
.ss-glossary-misunderstandings,
.ss-glossary-explore {
	background: rgb(17 19 27 / 0.76);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	margin-top: clamp(2.5rem, 5vw, 4rem);
	padding: clamp(1.15rem, 3vw, 2rem);
}

.ss-glossary-essentials {
	border-top: 3px solid #8f0d12;
}

.ss-glossary-essentials h2,
.ss-glossary-misunderstandings h2,
.ss-glossary-explore h2 {
	font-size: clamp(1.75rem, 4vw, 2.75rem);
	margin: 0.25rem 0 1rem;
}

.ss-glossary-chip-list,
.ss-glossary-topic-nav > div,
.ss-glossary-az > div,
.ss-glossary-explore p {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.ss-glossary-chip-list a,
.ss-glossary-topic-nav a,
.ss-glossary-az a,
.ss-glossary-explore a {
	align-items: center;
	background: rgb(255 255 255 / 0.045);
	border: 1px solid var(--ss-border-strong);
	border-radius: 999px;
	color: var(--ss-text);
	display: inline-flex;
	font-size: 0.85rem;
	font-weight: 800;
	min-height: 44px;
	padding: 0.55rem 0.8rem;
	text-decoration: none;
}

.ss-glossary-chip-list a:hover,
.ss-glossary-topic-nav a:hover,
.ss-glossary-az a:hover,
.ss-glossary-explore a:hover {
	background: rgb(0 136 184 / 0.14);
	border-color: rgb(0 136 184 / 0.7);
}

.ss-glossary-tools {
	display: grid;
	gap: 1.25rem;
}

.ss-glossary-search label,
.ss-glossary-topic-nav > span,
.ss-glossary-az > span {
	display: block;
	font-family: var(--ss-font-data);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.07em;
	margin-bottom: 0.45rem;
	text-transform: uppercase;
}

.ss-glossary-search-row {
	display: flex;
	gap: 0.55rem;
	max-width: 43.75rem;
	min-width: 0;
}

.ss-glossary-search input,
.ss-glossary-search button {
	background: var(--ss-bg-soft);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius-sm);
	color: var(--ss-text);
	min-height: 46px;
	padding: 0.6rem 0.75rem;
}

.ss-glossary-search input {
	flex: 1 1 auto;
	min-width: 0;
}

.ss-glossary-search button {
	background: var(--ss-gold);
	color: var(--ss-bg);
	cursor: pointer;
	font-weight: 850;
}

.ss-glossary-search-status {
	color: var(--ss-muted);
	font-size: 0.86rem;
	margin: 0.45rem 0 0;
}

.ss-glossary-az a {
	justify-content: center;
	min-width: 44px;
	padding-inline: 0.55rem;
}

.ss-glossary-sections {
	display: grid;
	gap: clamp(3.5rem, 7vw, 6rem);
	margin-top: clamp(3.5rem, 7vw, 6rem);
}

.ss-glossary-section {
	min-width: 0;
	scroll-margin-top: 6rem;
}

.ss-glossary-section > header {
	border-bottom: 1px solid var(--ss-border);
	margin-bottom: 1.25rem;
	max-width: 52rem;
	padding-bottom: 1rem;
}

.ss-glossary-section > header h2 {
	font-size: clamp(2rem, 4.5vw, 3.4rem);
	line-height: 1;
	margin: 0.25rem 0 0.75rem;
}

.ss-glossary-section > header p:last-child {
	color: var(--ss-muted);
	margin-bottom: 0;
}

.ss-glossary-grid {
	display: grid;
	gap: 0.9rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-glossary-term {
	background: linear-gradient(180deg, rgb(22 25 35 / 0.82), rgb(11 13 20 / 0.94));
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	min-width: 0;
	padding: clamp(1rem, 2vw, 1.35rem);
	scroll-margin-top: 6rem;
}

.ss-glossary-term:hover,
.ss-glossary-term.is-glossary-match {
	border-color: rgb(0 136 184 / 0.62);
}

.ss-glossary-term h3 {
	font-size: clamp(1.15rem, 2vw, 1.4rem);
	line-height: 1.2;
	margin: 0 0 0.6rem;
}

.ss-glossary-term h3 a {
	color: var(--ss-text);
	text-decoration: none;
}

.ss-glossary-term h3 a:hover {
	color: #63c7e8;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.ss-glossary-term p {
	color: var(--ss-muted);
	margin: 0;
	max-width: 44rem;
}

.ss-glossary-term p a,
.ss-glossary-misunderstandings > p a {
	font-weight: 750;
	text-underline-offset: 0.18em;
}

.ss-glossary-no-results {
	background: var(--ss-surface);
	border: 1px dashed var(--ss-border-strong);
	border-radius: var(--ss-radius);
	margin-top: 2rem;
	padding: 1.5rem;
	text-align: center;
}

.ss-glossary-no-results h2 {
	font-size: 1.6rem;
	margin: 0 0 0.4rem;
}

.ss-glossary-no-results p {
	color: var(--ss-muted);
	margin: 0;
}

.ss-glossary-page [hidden] {
	display: none !important;
}

.ss-glossary-misunderstandings {
	border-top: 3px solid #d6a800;
}

.ss-glossary-clarification-grid {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-glossary-clarification-grid article {
	background: rgb(7 8 13 / 0.5);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-sm);
	padding: 1rem;
}

.ss-glossary-clarification-grid h3 {
	font-size: 1.05rem;
	margin: 0 0 0.45rem;
}

.ss-glossary-clarification-grid p {
	color: var(--ss-muted);
	margin: 0;
}

.ss-glossary-explore p {
	margin-bottom: 0;
}

.ss-glossary-reviewed {
	color: var(--ss-muted-quiet);
	font-size: 0.875rem;
	margin: 1.5rem 0 0;
}

@media (max-width: 760px) {
	.ss-page:has(.ss-glossary-page) .ss-page-header > .wp-block-group,
	.ss-page:has(.ss-glossary-page) .ss-page-content {
		width: calc(100vw - 2rem);
	}

	.ss-glossary-grid,
	.ss-glossary-clarification-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.ss-glossary-search-row {
		align-items: stretch;
		flex-direction: column;
	}

	.ss-glossary-search input,
	.ss-glossary-search button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.ss-media-library[data-view="grid"] .ss-video-card:hover {
		transform: none;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* Overnight catalog, credibility, and owner-workflow refinements. */
.ss-youtube-link {
	align-items: center;
	background: linear-gradient(135deg, #ff355d, #ff5a64);
	border: 1px solid rgb(255 255 255 / 0.2);
	border-radius: 999px;
	box-shadow: 0 0.6rem 1.4rem rgb(255 53 93 / 0.2);
	color: #fff !important;
	display: inline-flex;
	font-size: 0.74rem;
	font-weight: 850;
	gap: 0.3rem;
	letter-spacing: 0.045em;
	padding: 0.62rem 0.85rem;
	text-decoration: none;
	text-transform: uppercase;
}

.ss-youtube-link:hover {
	filter: brightness(1.08);
}

.ss-social-link a {
	color: var(--ss-text);
	font-weight: 800;
}

.ss-home-stats-wrap {
	background: var(--ss-bg);
	border-bottom: 1px solid var(--ss-border);
	border-top: 1px solid var(--ss-border);
	padding: 1.25rem var(--wp--preset--spacing--40);
}

.ss-live-stats {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ss-live-stats > div {
	background: linear-gradient(145deg, rgb(255 255 255 / 0.045), rgb(255 255 255 / 0.018));
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	display: grid;
	gap: 0.2rem;
	padding: 1rem 1.15rem;
}

.ss-live-stats strong {
	color: var(--ss-text);
	font-family: var(--ss-font-display);
	font-size: clamp(1.65rem, 4vw, 2.35rem);
	line-height: 1;
}

.ss-live-stats span,
.ss-catalog-card-meta {
	color: var(--ss-muted);
	font-size: 0.76rem;
	font-weight: 750;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ss-catalog-filters {
	align-items: end;
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	display: grid;
	gap: 0.85rem;
	grid-template-columns: minmax(14rem, 2fr) repeat(3, minmax(10rem, 1fr));
	margin-bottom: 2rem;
	padding: 1.1rem;
}

.ss-catalog-filters label {
	display: grid;
	gap: 0.35rem;
}

.ss-catalog-filters label > span {
	color: var(--ss-muted);
	font-size: 0.73rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ss-catalog-filters input[type="search"],
.ss-catalog-filters select {
	background: var(--ss-bg);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius-sm);
	color: var(--ss-text);
	font: inherit;
	min-height: 2.9rem;
	padding: 0.65rem 0.75rem;
	width: 100%;
}

.ss-catalog-filters .ss-catalog-checkbox {
	display: flex;
	gap: 0.55rem;
	grid-column: 1 / -1;
}

.ss-catalog-filters .ss-catalog-checkbox input {
	height: 1.1rem;
	width: 1.1rem;
}

.ss-catalog-actions {
	align-items: center;
	display: flex;
	gap: 0.85rem;
	grid-column: 1 / -1;
}

.ss-catalog-actions button {
	background: var(--ss-gold);
	border: 0;
	border-radius: var(--ss-radius-sm);
	color: #07080d;
	cursor: pointer;
	font: inherit;
	font-weight: 850;
	min-height: 2.8rem;
	padding: 0.7rem 1.1rem;
}

.ss-catalog-actions a {
	color: var(--ss-muted);
}

.ss-card-art--owned,
.ss-single-hero-art--owned {
	padding: 0;
}

.ss-card-art--owned::before,
.ss-single-hero-art--owned::before {
	display: none;
}

.ss-card-art--owned img,
.ss-single-hero-art--owned img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ss-catalog-facts {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	margin-bottom: 2rem;
	padding: 1.25rem;
}

.ss-catalog-facts h2 {
	font-size: 1.2rem;
	margin-top: 0;
}

.ss-catalog-facts dl {
	display: grid;
	gap: 0.65rem;
	margin: 0;
}

.ss-catalog-facts dl > div {
	display: grid;
	gap: 0.25rem;
	grid-template-columns: minmax(7rem, 0.45fr) 1fr;
}

.ss-catalog-facts dt {
	color: var(--ss-muted);
	font-size: 0.75rem;
	font-weight: 800;
	text-transform: uppercase;
}

.ss-catalog-facts dd {
	margin: 0;
}

.ss-venue-detail {
	padding-bottom: clamp(3.5rem, 6vw, 5rem);
	padding-top: 0;
}

.ss-venue-detail .ss-venue-shell {
	margin-inline: auto !important;
	max-width: 85rem !important;
	width: calc(100% - 3rem) !important;
}

.ss-venue-detail .ss-venue-header {
	padding-bottom: clamp(2.25rem, 4vw, 3.75rem);
	padding-top: clamp(2rem, 4vw, 3.5rem);
}

.ss-venue-header-inner {
	margin-inline: auto;
}

.ss-venue-detail .ss-venue-header h1 {
	font-size: clamp(3rem, 5.5vw, 6rem);
	line-height: 0.94;
	margin-bottom: 1rem;
	max-width: 65.625rem;
	text-wrap: balance;
}

.ss-venue-detail .ss-venue-header .ss-lede {
	max-width: 53.125rem;
}

.ss-venue-hero {
	margin-top: clamp(1.5rem, 3vw, 2.5rem);
	min-width: 0;
}

.ss-venue-hero > .wp-block-shortcode {
	margin: 0;
}

.ss-venue-hero .ss-single-hero-art {
	aspect-ratio: 16 / 7;
	max-height: 35rem;
	width: 100%;
}

.ss-venue-hero .ss-single-hero-art img {
	object-position: center 38%;
}

.ss-venue-content {
	padding-bottom: clamp(3.5rem, 5vw, 4.5rem);
	padding-top: clamp(3.5rem, 5vw, 4.5rem);
}

.ss-venue-content > .wp-block-post-content {
	margin-inline: auto;
	max-width: 53.125rem;
}

.ss-venue-content .ss-venue-at-glance {
	margin-inline: auto;
	max-width: 75rem;
}

.ss-venue-gallery-wrap {
	min-width: 0;
}

.ss-venue-gallery {
	margin-top: 0;
}

.ss-venue-gallery > header {
	margin-bottom: 1.25rem;
}

.ss-venue-gallery h2 {
	font-size: clamp(2rem, 4vw, 3.4rem);
	margin: 0;
}

.ss-venue-gallery-grid {
	display: grid;
	gap: clamp(1.25rem, 2vw, 1.75rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ss-venue-gallery-item {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	margin: 0;
	min-width: 0;
	overflow: hidden;
}

.ss-venue-gallery-media {
	aspect-ratio: 16 / 10;
	background: #080a10;
	overflow: hidden;
}

.ss-venue-gallery-media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ss-venue-gallery-item figcaption {
	display: grid;
	gap: 0.2rem;
	padding: 0.8rem 1rem 0.9rem;
}

.ss-venue-gallery-item figcaption strong {
	font-family: var(--ss-font-display);
	font-size: 1rem;
	font-weight: 900;
	letter-spacing: -0.02em;
}

.ss-venue-gallery-item figcaption span {
	color: var(--ss-muted);
	font-size: 0.8rem;
}

.ss-venue-detail .ss-single-modules {
	margin-top: clamp(3.5rem, 5vw, 4.5rem);
	padding-top: clamp(1.5rem, 2.5vw, 2rem);
}

.ss-related-games {
	margin-block: 3rem;
}

.ss-related-games ul {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	list-style: none;
	padding: 0;
}

.ss-related-games a {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	color: var(--ss-text);
	display: block;
	font-weight: 800;
	padding: 1rem;
	text-decoration: none;
}

@media (max-width: 1080px) {
	.ss-catalog-filters {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.ss-youtube-link {
		display: none;
	}

	.ss-live-stats,
	.ss-catalog-filters {
		grid-template-columns: 1fr 1fr;
	}

	.ss-catalog-search {
		grid-column: 1 / -1;
	}

	.ss-venue-gallery-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.ss-live-stats,
	.ss-catalog-filters,
	.ss-catalog-facts dl > div {
		grid-template-columns: 1fr;
	}
}

@media (forced-colors: active) {
	.ss-site-header::before,
	.ss-site-footer::before,
	.ss-kicker::before,
	.ss-discovery-card::before {
		background: CanvasText;
	}

	.ss-about-logo,
	.ss-hero-stage,
	.ss-video-poster,
	.ss-card-art,
	.ss-single-hero-art {
		background: Canvas;
		border: 2px solid CanvasText;
	}

	.ss-hero-stage::before,
	.ss-video-poster::before,
	.ss-card-art::before,
	.ss-single-hero-art::before {
		display: none;
	}
}

@media (max-width: 1180px) {
	.ss-watch-primary-toolbar {
		align-items: flex-start;
		flex-wrap: wrap;
	}

	.ss-watch-search-row {
		flex-basis: 100%;
	}

	.ss-watch-display-controls {
		justify-content: flex-start;
		margin-left: 0;
	}
}

@media (max-width: 599px) {
	.ss-page:has(.ss-media-library) .ss-page-content {
		width: min(100%, calc(100vw - 1rem));
	}

	.ss-watch-discovery {
		position: static;
	}

	.ss-watch-form {
		grid-template-columns: minmax(0, 1fr);
	}

	.ss-watch-primary-toolbar,
	.ss-watch-filter-panel {
		grid-column: 1 / -1;
	}

	.ss-watch-primary-toolbar {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}

	.ss-watch-search-row {
		max-width: none;
		width: 100%;
	}

	.ss-watch-filter-panel > summary {
		display: list-item;
	}

	.ss-watch-filter-fields {
		grid-template-columns: minmax(0, 1fr);
	}

	.ss-watch-display-controls {
		justify-content: flex-start;
		margin-left: 0;
		width: 100%;
	}

	.ss-watch-display-controls .ss-watch-select {
		flex: 1 1 7rem;
	}
}

/* Consumer game-guide layout. */
.ss-game-guide .ss-single-header {
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
}

.ss-game-guide .ss-lede {
	max-width: 52rem;
}

.ss-game-guide-hero {
	margin-top: 0;
	max-width: 76rem;
}

.ss-game-guide-hero .ss-single-hero-art {
	aspect-ratio: 16 / 9;
	margin: 0;
	max-height: 42rem;
	width: 100%;
}

.ss-game-guide-body {
	align-items: start;
	display: grid !important;
	gap: clamp(1.5rem, 4vw, 3.5rem) !important;
	grid-template-columns: minmax(15rem, 20rem) minmax(0, 48rem);
	justify-content: center;
	margin-top: clamp(1.75rem, 4vw, 3rem);
}

.ss-game-guide .ss-game-details {
	margin: 0;
	padding: 1rem;
	position: sticky;
	top: 1rem;
}

.ss-game-guide .ss-game-details h2 {
	font-size: 1.2rem;
	margin: 0 0 0.8rem;
}

.ss-game-guide .ss-game-details dl,
.ss-game-guide .ss-game-details dd {
	margin-bottom: 0;
}

.ss-game-guide .ss-single-content {
	font-size: 1rem;
	line-height: 1.72;
}

.ss-game-guide .ss-single-content > :first-child {
	margin-top: 0;
}

.ss-game-guide .ss-single-content h2,
.ss-game-guide .ss-game-visit h2,
.ss-game-guide .ss-related-media h2,
.ss-game-guide .ss-related-games h2,
.ss-game-guide .ss-game-guide-links h2 {
	font-size: clamp(1.55rem, 2.6vw, 2.15rem);
	letter-spacing: -0.025em;
	line-height: 1.16;
}

.ss-game-guide .ss-single-content h3 {
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	line-height: 1.25;
}

.ss-game-guide .ss-game-photo-wrap,
.ss-game-guide .ss-single-modules {
	max-width: 68rem;
}

.ss-game-guide .ss-game-visit {
	padding-top: clamp(1.5rem, 3vw, 2.25rem);
}

.ss-game-guide .ss-game-visit > header {
	max-width: 48rem;
}

.ss-game-guide .ss-game-photo-grid {
	max-width: 48rem;
}

.ss-game-guide .ss-single-modules {
	margin-top: clamp(1.5rem, 3vw, 2.5rem);
	padding-top: clamp(1.5rem, 3vw, 2.5rem);
}

.ss-game-guide-modules > * + * {
	margin-top: 1.5rem;
}

.ss-game-guide-links ul,
.ss-official-sources ul {
	margin: 0.75rem 0 0;
	padding-left: 1.2rem;
}

.ss-game-guide-links li + li,
.ss-official-sources li + li {
	margin-top: 0.45rem;
}

.ss-official-sources {
	border-top: 1px solid var(--ss-border);
	color: var(--ss-muted);
	font-size: 0.9rem;
	padding-top: 1rem;
}

.ss-official-sources summary {
	color: var(--ss-text);
	cursor: pointer;
	font-weight: 700;
}

.ss-game-guide-note {
	border-left: 2px solid var(--ss-gold);
	color: var(--ss-muted);
	font-size: 0.88rem;
	line-height: 1.55;
	max-width: 52rem;
	padding: 0.65rem 0.85rem;
}

@media (max-width: 800px) {
	.ss-game-guide-body {
		grid-template-columns: minmax(0, 1fr);
	}

	.ss-game-guide .ss-game-details {
		position: static;
	}
}

@media (max-width: 599px) {
	.ss-game-guide .ss-single-header,
	.ss-game-guide-hero,
	.ss-game-guide-body,
	.ss-game-guide .ss-game-photo-wrap,
	.ss-game-guide .ss-single-modules {
		width: calc(100% - 2rem) !important;
	}

	.ss-game-guide .ss-game-details {
		padding: 0.9rem;
	}
}

@media (min-width: 600px) {
	.ss-media-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.ss-media-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1300px) {
	.ss-media-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (min-width: 1800px) {
	.ss-media-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

.ss-media-library[data-view="list"] .ss-media-grid {
	grid-template-columns: minmax(0, 1fr) !important;
}

@media (min-width: 600px) {
	.ss-media-library[data-view="list"] .ss-video-card {
		align-items: start;
		display: grid;
		gap: 0 1rem;
		grid-template-columns: minmax(12rem, 16rem) minmax(0, 1fr);
	}

	.ss-media-library[data-view="list"] .ss-video-card > .ss-media-poster-link {
		grid-column: 1;
		grid-row: 1 / span 8;
		margin: 0;
	}

	.ss-media-library[data-view="list"] .ss-video-card > :not(.ss-media-poster-link) {
		grid-column: 2;
	}

	.ss-media-library[data-view="list"] .ss-video-card h3 {
		margin-top: 0.25rem;
	}

	.ss-media-library[data-view="list"] .ss-media-summary {
		display: none;
	}
}

/* Brand Kit v1.0 visual integration. Keep behavior and content ownership unchanged. */
body {
	background:
		radial-gradient(circle at 12% -10%, rgb(255 59 48 / 0.1), transparent 33rem),
		radial-gradient(circle at 88% 0%, rgb(138 63 252 / 0.11), transparent 34rem),
		var(--ss-bg);
	color-scheme: dark;
}

body,
button,
input,
select,
textarea {
	font-family: var(--ss-font-body);
}

:where(a, button, input, select, textarea, summary):focus-visible {
	outline-color: rgb(25 211 255 / 0.72);
}

.ss-local-banner {
	background: var(--ss-bg-soft);
	border-bottom: 1px solid rgb(255 255 255 / 0.08);
	color: var(--ss-muted);
	font-size: 0.68rem;
	padding-block: 0.32rem;
}

.ss-site-header {
	backdrop-filter: blur(18px) saturate(140%);
	background: rgb(7 8 13 / 0.88);
	border-color: rgb(255 255 255 / 0.08);
	position: sticky;
	top: 0;
	z-index: 50;
}

.ss-site-header::before {
	display: none;
}

.ss-header-inner {
	min-height: 4.5rem;
}

.ss-brand {
	gap: 0.7rem;
}

.ss-header-logo {
	border-radius: 50%;
	box-shadow: 0 0 0 2px rgb(255 255 255 / 0.08), 0 0 1.5rem rgb(25 211 255 / 0.16);
	height: 3rem;
	max-width: none;
	width: 3rem;
}

.ss-brand-name {
	color: var(--ss-text);
	font-size: 0.92rem;
	font-weight: 900;
	letter-spacing: 0.015em;
	white-space: nowrap;
}

.ss-site-header .wp-block-navigation-item__content {
	border-radius: 0.625rem;
	color: var(--ss-muted);
	padding: 0.6rem 0.7rem;
}

.ss-site-header .wp-block-navigation-item__content:hover,
.ss-site-header .current-menu-item > .wp-block-navigation-item__content {
	background: rgb(255 255 255 / 0.07);
	color: var(--ss-text);
}

.ss-youtube-pending {
	display: none;
}

.ss-display,
.ss-archive h1,
.ss-single h1,
.ss-page h1,
.ss-search-page h1,
.ss-error-page h1,
.ss-section-header h2,
.ss-page-content h2,
.ss-single-content h2,
.ss-footer-brand h2 {
	font-family: var(--ss-font-display);
	font-weight: 900;
	letter-spacing: 0.025em;
	line-height: 0.98;
	text-transform: uppercase;
}

.ss-display,
.ss-archive h1,
.ss-single h1,
.ss-page h1,
.ss-search-page h1,
.ss-error-page h1 {
	font-size: clamp(3.25rem, 8vw, 7.5rem);
}

.ss-display .ss-gold {
	background: var(--ss-spectrum);
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
}

.ss-kicker,
.ss-eyebrow {
	color: var(--ss-muted);
}

.ss-hero {
	align-items: end;
	background:
		linear-gradient(90deg, rgb(7 8 13 / 0.98) 0%, rgb(7 8 13 / 0.8) 45%, rgb(7 8 13 / 0.34) 100%),
		linear-gradient(0deg, rgb(7 8 13 / 0.96), transparent 54%),
		url("assets/images/channel-banner-primary.webp") center / cover no-repeat;
	border-bottom: 1px solid rgb(255 255 255 / 0.08);
	display: grid;
	min-height: min(78vh, 48rem);
	overflow: hidden;
}

.ss-hero::after {
	background: var(--ss-spectrum);
	bottom: 0;
	height: 4px;
	inset: auto 0 0;
	mask-image: none;
}

.ss-hero-grid {
	grid-template-columns: minmax(0, 50rem) !important;
	justify-content: start;
}

.ss-hero-logo-stage {
	display: none;
}

.ss-lede {
	color: var(--ss-muted);
}

.wp-block-button__link,
.wp-element-button,
.ss-watch-search-submit {
	background: var(--ss-gold);
	border-color: transparent;
	color: #07080d;
}

.wp-block-button__link:hover,
.wp-element-button:hover,
.ss-watch-search-submit:hover {
	background: #ffd45a;
	border-color: transparent;
	box-shadow: 0 0.875rem 2.625rem rgb(138 63 252 / 0.25);
	color: #07080d;
	transform: translateY(-2px);
}

.wp-block-button__link,
.wp-element-button,
.ss-watch-search-submit,
.ss-watch-display-controls button {
	transition: transform 180ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 180ms cubic-bezier(0.2, 0.8, 0.2, 1), border-color 180ms ease;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background: rgb(17 19 27 / 0.84);
	border-color: var(--ss-border-strong);
}

.ss-section--surface {
	background: linear-gradient(180deg, rgb(17 19 27 / 0.82), rgb(11 13 20 / 0.96));
	border-color: rgb(255 255 255 / 0.08);
}

.ss-discovery-card,
.ss-info-card,
.ss-query-card,
.ss-video-card,
.ss-stat-card,
.ss-empty-state,
.ss-inline-cta,
.ss-dev-banner,
.ss-definition-list {
	background: linear-gradient(180deg, #181b26 0%, #10121a 100%);
	border-color: var(--ss-border);
	box-shadow: var(--ss-shadow);
}

.ss-discovery-card,
.ss-info-card,
.ss-query-card,
.ss-video-card,
.ss-stat-card {
	border-radius: var(--ss-radius-lg);
}

.ss-media-library .ss-video-card h3 {
	font-family: var(--ss-font-body);
	font-weight: 800;
	letter-spacing: -0.02em;
	text-transform: none;
}

.ss-video-card p,
.ss-media-date,
.ss-media-summary {
	color: var(--ss-muted-quiet);
}

.ss-media-library[data-view="grid"] .ss-video-card:hover {
	border-color: rgb(25 211 255 / 0.35);
	box-shadow: 0 1.375rem 4.375rem rgb(0 0 0 / 0.46);
	transform: translateY(-4px);
}

.ss-media-poster {
	border-color: rgb(255 255 255 / 0.08);
}

.ss-media-duration {
	font-family: var(--ss-font-data);
	font-variant-numeric: tabular-nums lining-nums;
}

.ss-badge,
.ss-media-relationships a,
.ss-media-quick-types a,
.ss-active-filters a {
	background: rgb(255 255 255 / 0.055);
	border-color: rgb(255 255 255 / 0.11);
	color: var(--ss-muted);
}

.ss-page:has(.ss-media-library) .ss-page-header {
	background:
		radial-gradient(circle at 88% 0%, rgb(138 63 252 / 0.13), transparent 26rem),
		linear-gradient(180deg, rgb(17 19 27 / 0.94), rgb(7 8 13 / 0.82));
	border-color: rgb(255 255 255 / 0.08);
}

.ss-page:has(.ss-media-library) .ss-page-header::after {
	height: 3px;
}

.ss-watch-discovery {
	backdrop-filter: blur(18px) saturate(130%);
	background: rgb(17 19 27 / 0.9);
	border-color: var(--ss-border);
	border-radius: var(--ss-radius);
	top: 5.25rem;
}

.ss-watch-form input,
.ss-watch-form select,
.ss-watch-search-submit,
.ss-watch-display-controls button {
	background-color: var(--ss-bg-soft);
	border-color: var(--ss-border-strong);
	border-radius: 0.625rem;
}

.ss-watch-search-submit {
	background-image: none;
}

.ss-watch-display-controls button[aria-pressed="true"] {
	background: var(--ss-spectrum-action);
	border-color: transparent;
	color: #fff;
}

.ss-media-quick-types a[aria-current="page"],
.ss-media-filters a[aria-current="page"] {
	background: var(--ss-spectrum-action);
	border-color: transparent;
	color: #fff;
}

.ss-media-quick-types a:hover,
.ss-active-filters a:hover {
	background: rgb(25 211 255 / 0.08);
	border-color: rgb(25 211 255 / 0.38);
	color: var(--ss-text);
}

.ss-media-library[data-view="grid"] .ss-media-grid {
	--ss-watch-card-min: 15rem;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--ss-watch-card-min)), 1fr)) !important;
}

.ss-media-library[data-view="grid"][data-card-size="large"] .ss-media-grid {
	--ss-watch-card-min: 23rem;
}

.ss-media-library[data-view="grid"][data-card-size="medium"] .ss-media-grid {
	--ss-watch-card-min: 19rem;
}

.ss-media-library[data-view="grid"][data-card-size="compact"] .ss-media-grid {
	--ss-watch-card-min: 16rem;
}

.ss-media-library[data-card-size="compact"] .ss-video-card {
	padding: 0.65rem;
}

.ss-media-library[data-card-size="compact"] .ss-video-card h3 {
	font-size: 0.92rem;
}

.ss-media-library[data-card-size="compact"] .ss-media-summary {
	display: none;
}

.ss-watch-featured-feeds {
	display: grid;
	gap: clamp(3rem, 4vw, 4rem);
}

.ss-media-quick-types--primary {
	gap: 0.65rem;
	justify-content: flex-start;
}

.ss-media-quick-types--primary a {
	font-size: 0.86rem;
	font-weight: 800;
	justify-content: center;
	min-width: 7.5rem;
}

.ss-watch-feed {
	border-top: 1px solid rgb(255 255 255 / 0.1);
	margin-inline: auto;
	max-width: 86.25rem;
	min-width: 0;
	padding-top: clamp(1.35rem, 3vw, 2.25rem);
	width: min(86.25rem, calc(100vw - 2.5rem));
}

.ss-watch-feed .ss-section-header {
	margin-bottom: 1rem;
}

.ss-page:has(.ss-media-library) .ss-media-library {
	margin-top: clamp(3rem, 4vw, 4rem);
}

.ss-media-library > .ss-section-header,
.ss-media-library > .ss-media-grid,
.ss-media-library > .ss-empty-state,
.ss-media-library > .ss-media-pagination {
	margin-inline: auto;
	max-width: 115rem;
	width: min(115rem, calc(100vw - 2rem));
}

.ss-media-library > .ss-section-header {
	margin-top: clamp(3rem, 4vw, 4rem);
}

.ss-media-library > .ss-active-filters,
.ss-media-library > .ss-skip-results {
	margin-inline: auto;
	max-width: 73.75rem;
	width: min(73.75rem, calc(100vw - 2.5rem));
}

.ss-media-grid.ss-media-grid--shorts {
	display: grid !important;
	gap: clamp(0.65rem, 1.3vw, 1rem) !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ss-video-card--short {
	min-width: 0;
	padding: 0.55rem;
}

.ss-video-card--short .ss-media-poster-link {
	margin-bottom: 0.55rem;
}

.ss-media-poster--short {
	aspect-ratio: 9 / 16;
}

.ss-media-poster--short img {
	height: 100%;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

.ss-video-card--short h3 {
	-webkit-line-clamp: 3;
	font-size: clamp(0.78rem, 1.1vw, 0.96rem);
	line-height: 1.25;
	margin: 0;
}

.ss-video-card--short .ss-media-duration {
	bottom: 0.4rem;
	font-size: 0.68rem;
	padding: 0.2rem 0.34rem;
	right: 0.4rem;
}

.ss-media-live-flag {
	background: #e3222d;
	border-radius: 0.3rem;
	color: #fff;
	font-family: var(--ss-font-data);
	font-size: 0.7rem;
	font-weight: 900;
	left: 0.5rem;
	letter-spacing: 0.06em;
	line-height: 1;
	padding: 0.35rem 0.45rem;
	position: absolute;
	text-transform: uppercase;
	top: 0.5rem;
	z-index: 2;
}

.ss-video-card--live {
	border-color: rgb(227 34 45 / 0.55);
}

@media (min-width: 600px) {
	.ss-media-grid.ss-media-grid--shorts {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 900px) {
	.ss-media-grid.ss-media-grid--shorts {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 1200px) {
	.ss-media-grid.ss-media-grid--shorts {
		grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 1450px) {
	.ss-media-grid.ss-media-grid--shorts {
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 1750px) {
	.ss-media-grid.ss-media-grid--shorts {
		grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 2050px) {
	.ss-media-grid.ss-media-grid--shorts {
		grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 768px) {
	.ss-page:has(.ss-media-library) .ss-page-content,
	.ss-page:has(.ss-media-library) .ss-page-header > .wp-block-group,
	.ss-page:has(.ss-media-library) .ss-page-content > .wp-block-post-content > :where(.ss-kicker, .has-large-font-size),
	.ss-media-quick-types--primary,
	.ss-watch-feed,
	.ss-watch-discovery,
	.ss-media-library > .ss-section-header,
	.ss-media-library > .ss-media-grid,
	.ss-media-library > .ss-empty-state,
	.ss-media-library > .ss-media-pagination,
	.ss-media-library > .ss-active-filters,
	.ss-media-library > .ss-skip-results {
		width: calc(100vw - 2rem);
	}
}

@media (max-width: 599px) {
	.ss-media-quick-types--primary a {
		flex: 1 1 calc(50% - 0.4rem);
		min-width: 0;
	}

	.ss-watch-feed .ss-section-header {
		align-items: flex-start;
		gap: 0.5rem;
	}
}

.ss-about-logo,
.ss-footer-logo {
	border-radius: 50%;
	object-fit: cover;
}

.ss-about-logo {
	max-width: 22rem;
}

.ss-site-footer {
	background: #050609;
	border-color: rgb(255 255 255 / 0.08);
}

.ss-footer-logo {
	margin: 0 0 1rem;
	max-width: 8rem;
}

.ss-footer-col h3 {
	color: var(--ss-muted);
}

@media (max-width: 700px) {
	.ss-brand-name {
		font-size: 0.8rem;
	}

	.ss-hero {
		background-position: 58% center;
		min-height: 42rem;
	}

	.ss-watch-discovery {
		top: 4.75rem;
	}
}

@media (max-width: 420px) {
	.ss-brand-name {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-button__link:hover,
	.wp-element-button:hover,
	.ss-watch-search-submit:hover {
		transform: none;
	}
}

/* Master experience pass: navigation, discovery, catalog clarity, and resilient content. */
html {
	scroll-padding-top: 7rem;
}

body.admin-bar .ss-site-header {
	top: 32px;
}

body.admin-bar .ss-watch-discovery {
	top: 7.25rem;
}

:where(p, li, dd, h1, h2, h3, h4, a) {
	overflow-wrap: anywhere;
}

:where(input, select, textarea) {
	accent-color: var(--ss-cyan);
	color-scheme: dark;
}

:where(input, select, textarea):hover {
	border-color: #626b84;
}

.ss-header-inner {
	position: relative;
}

.ss-header-search {
	flex: 0 0 auto;
	position: relative;
}

.ss-header-search summary {
	align-items: center;
	border: 1px solid transparent;
	border-radius: 999px;
	color: var(--ss-muted);
	cursor: pointer;
	display: flex;
	height: 44px;
	justify-content: center;
	list-style: none;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
	width: 44px;
}

.ss-header-search summary::-webkit-details-marker {
	display: none;
}

.ss-header-search summary:hover,
.ss-header-search[open] summary {
	background: rgb(255 255 255 / 0.07);
	border-color: var(--ss-border);
	color: var(--ss-text);
}

.ss-header-search form {
	background: rgb(17 19 27 / 0.98);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius);
	box-shadow: var(--ss-shadow);
	padding: 1rem;
	position: absolute;
	right: 0;
	top: calc(100% + 0.65rem);
	width: min(23rem, calc(100vw - 2rem));
	z-index: 80;
}

.ss-header-search form > label {
	color: var(--ss-muted);
	display: block;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	margin-bottom: 0.45rem;
	text-transform: uppercase;
}

.ss-header-search form > div {
	display: flex;
	gap: 0.5rem;
}

.ss-header-search input {
	background: var(--ss-bg);
	border: 1px solid var(--ss-border-strong);
	border-radius: var(--ss-radius-sm);
	color: var(--ss-text);
	font: inherit;
	min-height: 44px;
	min-width: 0;
	padding: 0.65rem 0.75rem;
	width: 100%;
}

.ss-header-search button {
	background: var(--ss-gold);
	border: 0;
	border-radius: var(--ss-radius-sm);
	color: var(--ss-bg);
	cursor: pointer;
	font: inherit;
	font-weight: 850;
	min-height: 44px;
	padding-inline: 0.9rem;
}

.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
	align-items: center;
	border-radius: 999px;
	height: 44px;
	justify-content: center;
	width: 44px;
}

.wp-block-navigation__responsive-container-open:hover,
.wp-block-navigation__responsive-container-close:hover {
	background: rgb(255 255 255 / 0.08);
}

.ss-live-stats > a {
	background: linear-gradient(145deg, rgb(255 255 255 / 0.045), rgb(255 255 255 / 0.018));
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	color: inherit;
	display: grid;
	gap: 0.2rem;
	padding: 1rem 1.15rem;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.ss-live-stats > a:hover,
.ss-live-stats > a:focus-visible {
	background: var(--ss-surface-strong);
	border-color: rgb(25 211 255 / 0.42);
	color: var(--ss-text);
	transform: translateY(-2px);
}

.ss-live-stats > a strong,
.ss-live-stats > a span {
	display: block;
}

.ss-discovery-card,
.ss-query-card {
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.ss-discovery-card:hover,
.ss-discovery-card:focus-within,
.ss-query-card:hover,
.ss-query-card:focus-within {
	border-color: rgb(25 211 255 / 0.34);
	box-shadow: 0 1.25rem 3.75rem rgb(0 0 0 / 0.34);
	transform: translateY(-3px);
}

.ss-discovery-card a,
.ss-query-card .wp-block-post-excerpt__more-link {
	align-items: center;
	display: inline-flex;
	min-height: 44px;
}

.ss-learning-grid {
	display: grid !important;
	gap: 1rem !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ss-learning-card {
	background: rgb(7 8 13 / 0.52);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	min-height: 15rem;
	padding: clamp(1.25rem, 3vw, 2rem);
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.ss-learning-card:hover,
.ss-learning-card:focus-within {
	background: var(--ss-surface-strong);
	border-color: rgb(25 211 255 / 0.36);
	transform: translateY(-3px);
}

.ss-learning-card h3 {
	font-size: clamp(1.35rem, 2.5vw, 1.9rem);
	line-height: 1.08;
	margin-block: 1.15rem 0.75rem;
}

.ss-learning-card h3 a {
	color: var(--ss-text);
	text-decoration: none;
}

.ss-learning-card h3 a:hover {
	color: var(--ss-cyan);
}

.ss-learning-card p:last-child {
	color: var(--ss-muted);
}

.ss-archive-tools:has(.ss-catalog-filters) {
	grid-template-columns: minmax(0, 1fr);
}

.ss-catalog-filters {
	margin-bottom: 0.9rem;
}

.ss-catalog-filter-help {
	color: var(--ss-muted);
	font-size: 0.88rem;
	grid-column: 1 / -1;
	margin: 0;
}

.ss-catalog-filters:not(:has(select)) .ss-catalog-search {
	grid-column: 1 / -1;
}

.ss-catalog-filters.is-submitting {
	opacity: 0.72;
	pointer-events: none;
}

.ss-catalog-actions button {
	min-height: 44px;
}

.ss-catalog-actions a {
	align-items: center;
	display: inline-flex;
	min-height: 44px;
}

.ss-catalog-result-summary {
	align-items: end;
	border-bottom: 1px solid var(--ss-border);
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem 1.25rem;
	justify-content: space-between;
	margin: 0.5rem 0 1.25rem;
	padding: 0.8rem 0 1.25rem;
}

.ss-catalog-result-summary .ss-eyebrow {
	flex-basis: 100%;
	margin: 0;
}

.ss-catalog-result-summary h2 {
	font-family: var(--ss-font-display);
	font-size: clamp(1.55rem, 2.5vw, 2rem);
	letter-spacing: 0.02em;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.ss-catalog-result-summary > p:last-child {
	color: var(--ss-muted);
	margin: 0;
}

.ss-query-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.ss-query-card .wp-block-post-excerpt {
	flex: 1 1 auto;
}

.ss-query-card .ss-seed-state {
	margin-top: auto;
}

.ss-card-art-link {
	border-radius: 0.75rem;
	display: block;
	overflow: hidden;
	text-decoration: none;
}

.ss-card-art-link .ss-card-art {
	margin-bottom: 0;
}

.ss-query-card > .wp-block-shortcode {
	margin: 0;
}

.ss-query-card > .wp-block-shortcode + .ss-badge,
.ss-card-art-link + .ss-badge {
	margin-top: 1rem;
}

.ss-single-grid > .wp-block-shortcode {
	align-self: start;
	margin: 0;
}

.ss-card-art-link img {
	transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.ss-query-card:hover .ss-card-art-link img,
.ss-card-art-link:focus-visible img {
	transform: scale(1.025);
}

.ss-catalog-art-placeholder {
	align-items: flex-start;
	background:
		radial-gradient(circle at 78% 22%, rgb(138 63 252 / 0.24), transparent 30%),
		radial-gradient(circle at 20% 88%, rgb(25 211 255 / 0.18), transparent 36%),
		linear-gradient(145deg, #171a25, #0b0d14);
	justify-content: flex-end;
}

.ss-catalog-art-placeholder::before {
	display: none;
}

.ss-card-art-monogram {
	color: rgb(245 247 250 / 0.16);
	font-family: var(--ss-font-display);
	font-size: clamp(5rem, 12vw, 8rem) !important;
	font-weight: 900;
	line-height: 0.72;
	position: absolute !important;
	right: 0.75rem;
	top: 0.8rem;
}

.ss-catalog-art-placeholder > span {
	color: var(--ss-text);
	font-size: 0.7rem;
	position: relative;
	z-index: 2;
}

.ss-media-play {
	align-items: center;
	background: rgb(7 8 13 / 0.82);
	border: 1px solid rgb(255 255 255 / 0.36);
	border-radius: 50%;
	color: #fff;
	display: flex;
	font-size: 0.8rem;
	height: 2.65rem;
	justify-content: center;
	left: 50%;
	padding-left: 0.12rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
	width: 2.65rem;
}

.ss-media-poster-link:hover .ss-media-play,
.ss-media-poster-link:focus-visible .ss-media-play {
	background: rgb(7 8 13 / 0.96);
	border-color: var(--ss-cyan);
	transform: translate(-50%, -50%) scale(1.08);
}

.ss-media-title-link {
	color: var(--ss-text) !important;
	text-decoration: none;
}

.ss-media-title-link:hover {
	color: var(--ss-cyan) !important;
}

.ss-result-count {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: 999px;
	color: var(--ss-muted);
	font-family: var(--ss-font-data);
	font-size: 0.75rem;
	font-variant-numeric: tabular-nums;
	padding: 0.45rem 0.7rem;
}

.ss-skip-results {
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	margin-bottom: 0.6rem;
	min-height: 44px;
	align-items: center;
}

.ss-watch-filter-panel > summary span {
	color: var(--ss-muted);
	font-size: 0.75rem;
	font-weight: 600;
}

.ss-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ss-breadcrumbs li {
	align-items: center;
	display: inline-flex;
	gap: 0.35rem;
}

.ss-breadcrumbs li + li::before {
	color: var(--ss-muted-quiet);
	content: "/";
}

.ss-breadcrumbs [aria-current="page"] {
	color: var(--ss-text);
}

.ss-disclosure {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	margin-block: 2.5rem;
	overflow: clip;
}

.ss-disclosure > summary {
	cursor: pointer;
	font-weight: 850;
	list-style-position: inside;
	min-height: 52px;
	padding: 0.9rem 1rem;
}

.ss-disclosure > summary:hover {
	background: rgb(255 255 255 / 0.04);
}

.ss-disclosure[open] > summary {
	border-bottom: 1px solid var(--ss-border);
	color: var(--ss-cyan);
}

.ss-disclosure > div {
	color: var(--ss-muted);
	display: grid;
	gap: 0.65rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: 1.25rem;
}

.ss-disclosure > div h2 {
	font-size: 1.05rem;
	letter-spacing: 0.02em;
	margin: 0;
	text-transform: uppercase;
}

.ss-disclosure > div p {
	margin: 0;
}

.ss-disclosure--archive {
	margin-top: 3rem;
}

.ss-page-content :where(h3, h4),
.ss-single-content :where(h3, h4) {
	line-height: 1.15;
	margin-top: 2rem;
}

.ss-page-content :where(ul, ol),
.ss-single-content :where(ul, ol) {
	padding-left: 1.35rem;
}

.ss-page-content li + li,
.ss-single-content li + li {
	margin-top: 0.45rem;
}

.ss-page-content hr,
.ss-single-content hr {
	border: 0;
	border-top: 1px solid var(--ss-border);
	margin-block: 2.5rem;
}

.ss-page-content :where(table),
.ss-single-content :where(table) {
	border-collapse: collapse;
	font-size: 0.92rem;
	width: 100%;
}

.ss-page-content :where(th, td),
.ss-single-content :where(th, td) {
	border: 1px solid var(--ss-border);
	padding: 0.7rem;
	text-align: left;
	vertical-align: top;
}

.ss-page-content th,
.ss-single-content th {
	background: var(--ss-surface-strong);
}

.ss-search-page > .wp-block-search {
	max-width: 46rem;
}

.ss-footer-home {
	display: inline-flex;
}

.ss-footer-col a {
	align-items: center;
	display: inline-flex;
	min-height: 2.5rem;
}

@media (max-width: 1100px) {
	.ss-brand-name {
		display: none;
	}
}

@media (max-width: 880px) {
	.ss-youtube-link {
		display: none;
	}

	.ss-learning-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ss-watch-discovery {
		position: static;
	}
}

@media (max-width: 782px) {
	body.admin-bar .ss-site-header {
		top: 46px;
	}

	body.admin-bar .ss-watch-discovery {
		top: 8rem;
	}
}

@media (max-width: 700px) {
	.ss-query-grid > .wp-block-post-template:has(> :nth-child(2):last-child) {
		grid-template-columns: 1fr;
	}

	.ss-catalog-result-summary {
		align-items: flex-start;
		flex-direction: column;
	}

	.ss-disclosure > div {
		grid-template-columns: minmax(0, 1fr);
	}

	.ss-learning-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 599px) {
	.ss-header-inner {
		gap: 0.5rem !important;
	}

	.ss-site-header .wp-block-navigation__responsive-container.is-menu-open {
		background:
			radial-gradient(circle at 90% 10%, rgb(138 63 252 / 0.18), transparent 22rem),
			var(--ss-bg);
		padding: 1rem;
	}

	.ss-site-header .wp-block-navigation__responsive-container-content,
	.ss-site-header .wp-block-navigation__container {
		align-items: stretch !important;
		gap: 0.35rem !important;
		width: 100%;
	}

	.ss-site-header .wp-block-navigation-item__content {
		font-size: 1.15rem;
		justify-content: flex-start;
		min-height: 3.25rem;
		padding-inline: 1rem;
		width: 100%;
	}

	.ss-header-search form {
		right: -0.25rem;
	}

	.ss-catalog-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.ss-catalog-actions button,
	.ss-catalog-actions a {
		justify-content: center;
		width: 100%;
	}

	.ss-watch-filter-panel > summary {
		align-items: center;
		display: flex;
		justify-content: space-between;
	}
}

@media (max-width: 380px) {
	.ss-header-logo {
		height: 2.6rem;
		width: 2.6rem;
	}

	.ss-header-search form {
		right: -3.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ss-live-stats > a:hover,
	.ss-live-stats > a:focus-visible,
	.ss-discovery-card:hover,
	.ss-discovery-card:focus-within,
	.ss-query-card:hover,
	.ss-query-card:focus-within,
	.ss-query-card:hover .ss-card-art-link img,
	.ss-card-art-link:focus-visible img,
	.ss-learning-card:hover,
	.ss-learning-card:focus-within,
	.ss-media-poster-link:hover .ss-media-play,
	.ss-media-poster-link:focus-visible .ss-media-play {
		transform: none;
	}
}

@media (forced-colors: active) {
	.ss-header-search form,
	.ss-live-stats > a,
	.ss-catalog-result-summary,
	.ss-disclosure,
	.ss-media-play {
		border: 2px solid CanvasText;
	}
}

/* Compact Games toolbar: unwrap wpautop's paragraph without changing form behavior. */
.post-type-archive-game .ss-catalog-filters {
	align-items: end;
	gap: 0.65rem;
	grid-template-columns: minmax(0, 1fr);
	margin-bottom: 0.75rem;
	padding: 0.8rem;
	position: relative;
}

.post-type-archive-game .ss-catalog-filters > p:not(.ss-catalog-filter-help) {
	display: contents;
}

.post-type-archive-game .ss-catalog-filters > p:not(.ss-catalog-filter-help) > br {
	display: none;
}

.post-type-archive-game .ss-catalog-filter-help {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.post-type-archive-game .ss-catalog-filters label {
	gap: 0.25rem;
	grid-column: auto;
	margin: 0;
	min-width: 0;
}

.post-type-archive-game .ss-catalog-filters label > span {
	font-size: 0.69rem;
	line-height: 1.2;
}

.post-type-archive-game .ss-catalog-filters input[type="search"],
.post-type-archive-game .ss-catalog-filters select {
	height: 44px;
	min-height: 44px;
	min-width: 0;
	padding: 0.5rem 0.65rem;
}

.post-type-archive-game .ss-catalog-filters .ss-catalog-checkbox {
	align-items: center;
	align-self: end;
	background: rgb(255 255 255 / 0.035);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-sm);
	display: flex;
	gap: 0.45rem;
	grid-column: auto;
	height: 44px;
	padding: 0.5rem 0.65rem;
	white-space: nowrap;
}

.post-type-archive-game .ss-catalog-filters .ss-catalog-checkbox input {
	flex: 0 0 auto;
	height: 1rem;
	margin: 0;
	width: 1rem;
}

.post-type-archive-game .ss-catalog-filters .ss-catalog-checkbox > span {
	font-size: 0.72rem;
	letter-spacing: 0;
	text-transform: none;
}

.post-type-archive-game .ss-catalog-actions {
	align-items: center;
	align-self: end;
	display: flex;
	flex-direction: row;
	gap: 0.55rem;
	grid-column: auto;
	margin: 0;
	min-width: 0;
}

.post-type-archive-game .ss-catalog-actions button,
.post-type-archive-game .ss-catalog-actions a {
	height: 44px;
	justify-content: center;
	margin: 0;
	min-height: 44px;
	white-space: nowrap;
	width: auto;
}

.post-type-archive-game .ss-catalog-actions button {
	padding: 0.5rem 0.85rem;
}

@media (min-width: 600px) {
	.post-type-archive-game .ss-catalog-filters {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.post-type-archive-game .ss-catalog-filters {
		grid-template-columns: minmax(16rem, 2fr) repeat(2, minmax(9.5rem, 1fr));
	}
}

@media (min-width: 1400px) {
	.post-type-archive-game .ss-catalog-filters {
		grid-template-columns: minmax(280px, 2fr) repeat(3, minmax(150px, 0.8fr)) max-content max-content;
	}
}

@media (max-width: 599px) {
	.post-type-archive-game .ss-catalog-filters,
	.post-type-archive-game .ss-catalog-filters label,
	.post-type-archive-game .ss-catalog-filters input[type="search"],
	.post-type-archive-game .ss-catalog-filters select,
	.post-type-archive-game .ss-catalog-filters .ss-catalog-checkbox,
	.post-type-archive-game .ss-catalog-actions,
	.post-type-archive-game .ss-catalog-actions button,
	.post-type-archive-game .ss-catalog-actions a {
		width: 100%;
	}
}

/* Sourced casino facts: compact cards and a calm single-page reference panel. */
.ss-venue-card-meta {
	min-width: 0;
}

.ss-venue-card-location {
	color: var(--ss-text) !important;
	font-size: 0.9rem;
	font-weight: 750;
	margin: -0.15rem 0 0.8rem;
}

.ss-venue-fact-chips {
	display: grid;
	gap: 0.45rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.ss-venue-fact-chips li {
	align-items: center;
	background: rgb(255 255 255 / 0.045);
	border: 1px solid var(--ss-border);
	border-radius: 999px;
	color: var(--ss-text);
	display: flex;
	font-size: 0.73rem;
	font-weight: 750;
	justify-content: center;
	line-height: 1.2;
	min-height: 2rem;
	overflow-wrap: anywhere;
	padding: 0.35rem 0.55rem;
	text-align: center;
}

.ss-venue-visit-status {
	align-items: center;
	color: var(--ss-cyan) !important;
	display: flex;
	font-size: 0.78rem;
	font-weight: 800;
	gap: 0.35rem;
	letter-spacing: 0.025em;
	margin: 0.8rem 0 0;
}

.ss-venue-visit-status span {
	color: var(--ss-gold);
	font-size: 0.65rem;
}

.ss-venue-at-glance .ss-eyebrow {
	margin-bottom: 0.35rem;
}

.ss-venue-at-glance {
	padding: clamp(1.25rem, 2.5vw, 2rem);
}

.ss-venue-at-glance h2 {
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	margin-bottom: 1.25rem;
}

.ss-venue-at-glance .ss-venue-facts {
	display: grid;
	margin: 0;
}

.ss-venue-at-glance .ss-venue-facts--primary {
	gap: 0.75rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ss-venue-at-glance .ss-venue-facts--primary .ss-venue-fact {
	align-content: start;
	background: rgb(255 255 255 / 0.045);
	border: 1px solid rgb(255 255 255 / 0.09);
	border-radius: var(--ss-radius-sm);
	display: grid;
	gap: 0.35rem;
	grid-template-columns: 1fr;
	min-height: 5.25rem;
	padding: 0.85rem 0.95rem;
}

.ss-venue-at-glance .ss-venue-facts--primary dd {
	color: var(--ss-text);
	font-size: 1.05rem;
	font-weight: 800;
	line-height: 1.25;
}

.ss-venue-at-glance .ss-venue-facts--secondary {
	border-top: 1px solid var(--ss-border);
	gap: 0.7rem 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.25rem;
	padding-top: 1rem;
}

.ss-venue-at-glance .ss-venue-facts--secondary .ss-venue-fact {
	display: grid;
	gap: 0.15rem;
	grid-template-columns: 1fr;
	padding: 0.25rem 0;
}

.ss-venue-at-glance .ss-venue-facts--secondary dd {
	color: var(--ss-muted);
	font-size: 0.9rem;
	line-height: 1.4;
}

.ss-venue-at-glance dd,
.ss-venue-at-glance a,
.ss-venue-sources li {
	overflow-wrap: anywhere;
}

.ss-venue-sources {
	border-top: 1px solid var(--ss-border);
	color: var(--ss-muted);
	font-size: 0.82rem;
	margin-top: 1rem;
	padding-top: 0.85rem;
}

.ss-venue-sources details {
	margin: 0;
}

.ss-venue-sources summary {
	color: var(--ss-text);
	cursor: pointer;
	font-weight: 800;
}

.ss-venue-sources ul {
	margin: 0.65rem 0 0;
	padding-left: 1.1rem;
}

.ss-venue-sources li + li {
	margin-top: 0.4rem;
}

@media (max-width: 1024px) {
	.ss-venue-at-glance .ss-venue-facts--primary,
	.ss-venue-at-glance .ss-venue-facts--secondary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.ss-venue-detail .ss-venue-shell {
		width: calc(100% - 2rem) !important;
	}

	.ss-venue-detail .ss-venue-header h1 {
		font-size: clamp(2.75rem, 13vw, 4rem);
	}

	.ss-venue-hero .ss-single-hero-art {
		aspect-ratio: 16 / 10;
		max-height: none;
	}

	.ss-venue-content {
		padding-bottom: 3rem;
		padding-top: 3rem;
	}

	.ss-venue-at-glance .ss-venue-facts--primary,
	.ss-venue-at-glance .ss-venue-facts--secondary {
		grid-template-columns: 1fr;
	}

	.ss-venue-detail .ss-single-modules {
		margin-top: 3rem;
	}
}

@media (max-width: 480px) {
	.ss-venue-fact-chips {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ss-venue-at-glance dl > div {
		grid-template-columns: 1fr;
	}
}

/* Hero brand refinement: a dense data-spectrum with a deliberate red lead-in. */
:root {
	--ss-hero-spectrum: var(--ss-spectrum);
	--ss-font-hero: "Arial Black", "Franklin Gothic Heavy", "Arial Narrow", Arial, sans-serif;
}

.ss-hero .ss-display,
.home .ss-section-header h2 {
	font-family: var(--ss-font-hero);
	font-weight: 900;
	letter-spacing: -0.035em;
	text-transform: uppercase;
}

.ss-hero .ss-display {
	line-height: 0.92;
	text-shadow: 0 0.15em 0.38em rgb(0 0 0 / 0.38);
}

.home .ss-section-header h2 {
	line-height: 0.95;
}

.ss-hero .ss-display .ss-gold {
	background: var(--ss-hero-spectrum);
	background-clip: text;
	color: transparent;
	filter: drop-shadow(0 0.14rem 0.22rem rgb(0 0 0 / 0.3));
	-webkit-background-clip: text;
}

.ss-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.ss-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background: var(--ss-spectrum-action);
	border-color: transparent;
	color: #fff;
}

/* Responsible Gaming: focused guidance and clearly identified support resources. */
.ss-rg-page {
	padding-bottom: clamp(4rem, 7vw, 6rem);
	padding-top: 0;
}

.ss-rg-page .ss-rg-shell {
	margin-inline: auto !important;
	max-width: 68.75rem !important;
	width: calc(100% - 3rem) !important;
}

.ss-rg-page .ss-rg-header {
	padding-bottom: clamp(2.5rem, 4vw, 4rem);
	padding-top: clamp(2.5rem, 4vw, 4rem);
}

.ss-rg-page .ss-rg-header h1 {
	font-size: clamp(3rem, 6vw, 5.5rem);
	line-height: 0.94;
	margin-bottom: 0.85rem;
	max-width: 56.25rem;
}

.ss-rg-page .ss-rg-header .ss-lede {
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	max-width: 48rem;
}

.ss-responsible-gaming {
	font-size: 1rem;
	line-height: 1.65;
	padding-top: clamp(3rem, 5vw, 4.5rem);
}

.ss-rg-intro,
.ss-rg-section > :where(p):not(.ss-eyebrow):not(.ss-rg-context-links) {
	max-width: 53.125rem;
}

.ss-rg-intro {
	margin-inline: auto;
}

.ss-rg-intro > * + * {
	margin-top: 1rem;
}

.ss-rg-principle {
	color: var(--ss-text);
	font-weight: 750;
	line-height: 1.45;
}

.ss-rg-section {
	margin-top: clamp(4rem, 7vw, 5.5rem);
	min-width: 0;
}

.ss-rg-section h2 {
	font-size: clamp(2rem, 4vw, 3.25rem);
	margin-bottom: 0.8rem;
}

.ss-rg-guidance-grid,
.ss-rg-resource-links,
.ss-rg-crisis-links {
	list-style: none;
	padding: 0;
}

.ss-rg-guidance-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 1.5rem 0 0;
}

.ss-rg-guidance-grid li {
	background: linear-gradient(180deg, rgb(255 255 255 / 0.045), rgb(255 255 255 / 0.025));
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	box-shadow: inset 3px 0 0 rgb(244 201 107 / 0.8);
	display: grid;
	gap: 0.35rem;
	margin: 0;
	min-width: 0;
	padding: 1.05rem 1.15rem;
}

.ss-rg-guidance-grid strong {
	color: var(--ss-text);
	font-size: 1rem;
}

.ss-rg-guidance-grid span {
	color: var(--ss-muted);
}

.ss-rg-resource-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.ss-rg-resource-card {
	background: linear-gradient(180deg, #181b26, #10121a);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	padding: 1.25rem;
	position: relative;
}

.ss-rg-resource-card::before {
	background: var(--ss-spectrum);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.ss-rg-resource-type {
	color: var(--ss-gold);
	font-size: 0.78rem;
	font-weight: 850;
	letter-spacing: 0.09em;
	margin: 0 0 0.65rem;
}

.ss-rg-resource-card h3 {
	font-size: clamp(1.35rem, 2.4vw, 1.8rem);
	line-height: 1.08;
	margin: 0 0 0.8rem;
}

.ss-rg-resource-card > p:not(.ss-rg-resource-type) {
	color: var(--ss-muted);
	font-size: 0.95rem;
	margin: 0 0 1rem;
}

.ss-rg-resource-links {
	display: grid;
	gap: 0.55rem;
	margin: auto 0 0;
}

.ss-rg-resource-links li {
	margin: 0;
}

.ss-rg-resource-links a,
.ss-rg-crisis-links a {
	font-weight: 800;
	overflow-wrap: anywhere;
	text-underline-offset: 0.2em;
}

.ss-rg-crisis {
	background: linear-gradient(135deg, rgb(25 211 255 / 0.08), rgb(138 63 252 / 0.07));
	border: 1px solid rgb(25 211 255 / 0.28);
	border-left: 4px solid var(--ss-cyan);
	border-radius: var(--ss-radius-lg);
	display: grid;
	gap: clamp(1.5rem, 4vw, 3rem);
	grid-template-columns: minmax(0, 1.25fr) minmax(16rem, 0.75fr);
	padding: clamp(1.35rem, 3vw, 2.25rem);
}

.ss-rg-crisis h2 {
	margin-top: 0;
}

.ss-rg-crisis-links {
	display: grid;
	gap: 0.75rem;
	margin: 0;
}

.ss-rg-crisis-links li {
	background: rgb(7 8 13 / 0.5);
	border: 1px solid rgb(255 255 255 / 0.1);
	border-radius: var(--ss-radius-sm);
	display: grid;
	gap: 0.2rem;
	margin: 0;
	padding: 0.75rem 0.85rem;
}

.ss-rg-crisis-links strong {
	color: var(--ss-muted);
	font-size: 0.8rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ss-rg-site-context {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	padding: clamp(1.35rem, 3vw, 2.25rem);
}

.ss-rg-site-context h2 {
	margin-top: 0;
}

.ss-rg-context-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1.25rem;
	margin-bottom: 0;
}

.ss-rg-context-links a {
	font-weight: 800;
}

.ss-rg-reviewed {
	color: var(--ss-muted-quiet);
	font-size: 0.875rem;
	margin: 1.5rem 0 0;
}

@media (max-width: 900px) {
	.ss-rg-resource-grid,
	.ss-rg-crisis {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 700px) {
	.ss-rg-page .ss-rg-shell {
		width: calc(100% - 2rem) !important;
	}

	.ss-rg-page .ss-rg-header {
		padding-bottom: 2.5rem;
		padding-top: 2.5rem;
	}

	.ss-rg-page .ss-rg-header h1 {
		font-size: clamp(2.75rem, 13vw, 4rem);
	}

	.ss-responsible-gaming {
		padding-top: 2.75rem;
	}

	.ss-rg-section {
		margin-top: 3rem;
	}

	.ss-rg-guidance-grid {
		grid-template-columns: 1fr;
	}

	.ss-rg-resource-card,
	.ss-rg-crisis,
	.ss-rg-site-context {
		padding: 1.1rem;
	}
}

/* Original game photography: individual guides own the images; archives consume featured media. */
.post-type-archive-game .ss-query-grid > .wp-block-post-template {
	grid-template-columns: minmax(0, 1fr);
}

.post-type-archive-game .ss-query-card {
	padding: 1rem;
}

.post-type-archive-game .ss-query-card .wp-block-post-title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.post-type-archive-game .ss-query-card .wp-block-post-excerpt__excerpt {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.ss-single-grid .ss-single-hero-art {
	aspect-ratio: 16 / 9;
}

.ss-game-photo-wrap {
	margin-top: clamp(1rem, 3vw, 2.5rem);
}

.ss-game-visit,
.ss-venue-games {
	border-top: 1px solid var(--ss-border);
	padding-top: clamp(2.5rem, 5vw, 4rem);
}

.ss-game-visit > header,
.ss-venue-games > header {
	max-width: 52rem;
}

.ss-game-visit h2,
.ss-venue-games h2 {
	font-size: clamp(2rem, 4vw, 3.4rem);
	margin: 0 0 0.85rem;
}

.ss-scope-notice,
.ss-catalog-facts__caveat {
	background: rgb(25 211 255 / 0.06);
	border-left: 3px solid var(--ss-cyan);
	color: var(--ss-muted);
	font-size: 0.88rem;
	padding: 0.75rem 0.9rem;
}

.ss-game-photo-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 28rem), 1fr));
	margin-top: 1.5rem;
}

.ss-game-photo {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius-lg);
	margin: 0;
	overflow: hidden;
}

.ss-game-photo__media {
	aspect-ratio: 4 / 3;
	background: #080a10;
}

.ss-game-photo__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ss-game-photo figcaption {
	color: var(--ss-muted);
	font-size: 0.85rem;
	padding: 0.85rem 1rem 1rem;
}

.ss-venue-games-wrap {
	margin-bottom: clamp(3rem, 5vw, 4.5rem);
}

.ss-venue-games-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.ss-venue-game-card {
	background: var(--ss-surface);
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius);
	min-width: 0;
	padding: 0.85rem;
}

.ss-venue-game-card h3 {
	font-size: 1rem;
	line-height: 1.2;
	margin: 0.8rem 0 0.45rem;
}

.ss-venue-game-card h3 a {
	color: var(--ss-text);
	text-decoration: none;
}

.ss-venue-game-card .ss-catalog-card-meta {
	font-size: 0.78rem;
	margin: 0;
}

@media (min-width: 600px) {
	.post-type-archive-game .ss-query-grid > .wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.post-type-archive-game .ss-query-grid > .wp-block-post-template {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1400px) {
	.post-type-archive-game .ss-query-grid > .wp-block-post-template {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.ss-venue-games-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 599px) {
	.ss-game-photo-wrap {
		width: calc(100% - 2rem) !important;
	}

	.ss-venue-games-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}
