/* 9MinGames game design system. Plugin templates provide semantics and data. */

body.nmg-theme .nmg-icon,
body.nmg-theme .nmg-inline-icon,
body.nmg-theme .nmg-action-button__icon,
body.nmg-theme .nmg-section-icon svg,
body.nmg-theme .nmg-player-start svg,
body.nmg-theme .nmg-toolbar-button svg {
	display: block;
	width: 1.15em;
	height: 1.15em;
	flex: 0 0 auto;
}

body.nmg-theme.nmg-game-home .site-content,
body.nmg-theme .nmg-front-page .site-content {
	width: min(100% - clamp(28px, 4vw, 56px), var(--nmg-container));
	padding-top: clamp(10px, 1.25vw, 18px);
}

body.nmg-theme .nmg-home {
	display: flex;
	width: 100%;
	min-width: 0;
	flex-direction: column;
}
body.nmg-theme .nmg-home-intro {
	max-width: 780px;
	margin: 0 0 30px;
}
body.nmg-theme .nmg-home-intro h1 { margin-bottom: 10px; font-size: clamp(1.75rem, 3vw, 2.6rem); }
body.nmg-theme .nmg-home-intro p { color: var(--nmg-text-soft); }
body.nmg-theme .nmg-home-intro--compact { margin-bottom: 22px; }

@media (min-width: 981px) {
	body.nmg-theme .nmg-play-collections { order: 10; }
	body.nmg-theme .nmg-home-intro { order: 15; }
	body.nmg-theme .nmg-home-section--trending { order: 20; }
	body.nmg-theme .nmg-home-section--categories { order: 30; }
	body.nmg-theme .nmg-home-section--popular { order: 40; }
	body.nmg-theme .nmg-home-section--new { order: 50; }
	body.nmg-theme .nmg-home-section--recommended { order: 60; }
	body.nmg-theme .nmg-home-seo-content { order: 70; }
}
body.nmg-theme .nmg-home-seo-content {
	max-width: 900px;
	margin: 38px auto 0;
	border-top: 1px solid var(--nmg-border);
	padding-top: 28px;
	color: var(--nmg-text-soft);
}

body.nmg-theme .nmg-game-section { margin: 0 0 34px; }
body.nmg-theme .nmg-game-section__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 14px;
}
body.nmg-theme .nmg-game-section__title {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0;
	font-size: clamp(1.1rem, 1.6vw, 1.38rem);
	letter-spacing: -.02em;
}
body.nmg-theme .nmg-section-icon {
	display: inline-grid;
	place-items: center;
	width: 25px;
	height: 25px;
	color: var(--nmg-warning);
}
body.nmg-theme .nmg-section-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-height: 34px;
	border: 1px solid var(--nmg-border);
	border-radius: 9px;
	background: var(--nmg-surface);
	padding: 5px 10px;
	color: var(--nmg-text-soft);
	font-size: .75rem;
	font-weight: 700;
	text-decoration: none;
}
body.nmg-theme .nmg-section-link:hover { border-color: var(--nmg-border-strong); background: var(--nmg-surface-2); color: #fff; }

body.nmg-theme .nmg-game-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 14px;
}
body.nmg-theme .nmg-play-collections { margin: 0 0 30px; }
body.nmg-theme .nmg-play-collections__header { margin-bottom: 12px; }
body.nmg-theme .nmg-play-collections__rail {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
}
body.nmg-theme .nmg-play-collection {
	--nmg-collection-color: #6d5dfc;
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	min-width: 0;
	min-height: 112px;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--nmg-collection-color) 34%, var(--nmg-border));
	border-radius: 14px;
	background: linear-gradient(135deg, color-mix(in srgb, var(--nmg-collection-color) 22%, var(--nmg-surface)), var(--nmg-surface) 72%);
	padding: 15px 12px;
	color: var(--nmg-text);
	text-decoration: none;
	transition: transform var(--nmg-transition), border-color var(--nmg-transition), background-color var(--nmg-transition);
}
body.nmg-theme .nmg-play-collection:hover,
body.nmg-theme .nmg-play-collection:focus-visible {
	border-color: color-mix(in srgb, var(--nmg-collection-color) 72%, var(--nmg-border));
	transform: translateY(-2px);
}
body.nmg-theme .nmg-play-collection__copy { position: relative; z-index: 2; display: grid; gap: 4px; max-width: 72%; }
body.nmg-theme .nmg-play-collection__copy strong { font-size: .86rem; line-height: 1.15; }
body.nmg-theme .nmg-play-collection__copy > span { color: var(--nmg-text-soft); font-size: .65rem; line-height: 1.25; }
body.nmg-theme .nmg-play-collection__art {
	position: absolute;
	top: 10px;
	right: 10px;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: color-mix(in srgb, var(--nmg-collection-color) 22%, transparent);
	color: color-mix(in srgb, var(--nmg-collection-color) 84%, #fff);
}
body.nmg-theme .nmg-play-collection__svg { width: 28px; height: 28px; }
body.nmg-theme .nmg-play-collection--cyan { --nmg-collection-color: #35c7e8; }
body.nmg-theme .nmg-play-collection--amber { --nmg-collection-color: #ffb53d; }
body.nmg-theme .nmg-play-collection--red { --nmg-collection-color: #ff665e; }
body.nmg-theme .nmg-play-collection--blue { --nmg-collection-color: #4c8fff; }
body.nmg-theme .nmg-play-collection--green { --nmg-collection-color: #4ed59a; }
body.nmg-theme .nmg-play-collection--pink { --nmg-collection-color: #f166bf; }
body.nmg-theme .nmg-play-collection--violet { --nmg-collection-color: #a777ff; }
body.nmg-theme .nmg-play-collection--lime { --nmg-collection-color: #a8d94e; }
body.nmg-theme .nmg-play-collection--purple { --nmg-collection-color: #8b6cff; }
body.nmg-theme .nmg-game-card {
	overflow: hidden;
	min-width: 0;
	border: 1px solid var(--nmg-border);
	border-radius: 11px;
	background: var(--nmg-surface);
	transition: transform var(--nmg-transition), border-color var(--nmg-transition), background-color var(--nmg-transition);
}
body.nmg-theme .nmg-game-card:hover,
body.nmg-theme .nmg-game-card:focus-within {
	border-color: var(--nmg-border-strong);
	background: var(--nmg-surface-2);
	transform: translateY(-2px);
}
body.nmg-theme .nmg-game-card__link { display: block; color: inherit; text-decoration: none; }
body.nmg-theme .nmg-game-card__media {
	position: relative;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: var(--nmg-surface-2);
}
body.nmg-theme .nmg-game-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 220ms ease, filter 220ms ease;
}
body.nmg-theme .nmg-game-card:hover .nmg-game-card__image,
body.nmg-theme .nmg-game-card:focus-within .nmg-game-card__image {
	transform: scale(1.035);
	filter: brightness(.72);
}
body.nmg-theme .nmg-game-card__title-layer {
	position: absolute;
	inset: auto 0 0;
	display: flex;
	align-items: flex-end;
	min-height: 58%;
	background: linear-gradient(180deg, transparent, rgba(3, 9, 17, .92));
	padding: 24px 11px 11px;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity var(--nmg-transition), transform var(--nmg-transition);
	pointer-events: none;
}
body.nmg-theme .nmg-game-card:hover .nmg-game-card__title-layer,
body.nmg-theme .nmg-game-card:focus-within .nmg-game-card__title-layer {
	opacity: 1;
	transform: translateY(0);
}
body.nmg-theme .nmg-game-card__title {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	color: #fff;
	font-size: .82rem;
	font-weight: 800;
	line-height: 1.18;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
body.nmg-theme .nmg-game-card__body { padding: 8px 10px 9px; }
body.nmg-theme .nmg-game-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-width: 0;
	color: var(--nmg-muted);
	font-size: .68rem;
	line-height: 1.2;
}
body.nmg-theme .nmg-game-card__category,
body.nmg-theme .nmg-game-card__type {
	overflow: hidden;
	min-width: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}
body.nmg-theme .nmg-game-card__category { color: var(--nmg-text-soft); }
body.nmg-theme .nmg-game-card__type { text-align: right; }

body.nmg-theme .nmg-category-grid { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 12px; }
body.nmg-theme .nmg-category-card {
	--nmg-category-color: #8b7cff;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 7px;
	min-height: 106px;
	border: 1px solid var(--nmg-border);
	border-radius: 13px;
	background: linear-gradient(180deg, color-mix(in srgb, var(--nmg-category-color) 7%, var(--nmg-surface)), var(--nmg-surface));
	padding: 14px 10px;
	color: var(--nmg-text);
	text-align: center;
	text-decoration: none;
}
body.nmg-theme .nmg-category-card:hover { border-color: color-mix(in srgb, var(--nmg-category-color) 46%, var(--nmg-border)); background: color-mix(in srgb, var(--nmg-category-color) 9%, var(--nmg-surface-2)); }
body.nmg-theme .nmg-category-card__icon {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border: 1px solid color-mix(in srgb, var(--nmg-category-color) 55%, var(--nmg-border));
	border-radius: 12px;
	background: color-mix(in srgb, var(--nmg-category-color) 16%, transparent);
	color: var(--nmg-category-color);
}
body.nmg-theme .nmg-category-card__icon svg { width: 26px; height: 26px; }
body.nmg-theme .nmg-category-card strong { font-size: .86rem; }
body.nmg-theme .nmg-category-card > span:last-child { color: var(--nmg-muted); font-size: .7rem; }
body.nmg-theme .nmg-category-card--racing,
body.nmg-theme .nmg-category-card--car { --nmg-category-color: #ff5fb7; }
body.nmg-theme .nmg-category-card--action { --nmg-category-color: #ff6d6d; }
body.nmg-theme .nmg-category-card--puzzle,
body.nmg-theme .nmg-category-card--brain { --nmg-category-color: #54dfa1; }
body.nmg-theme .nmg-category-card--adventure { --nmg-category-color: #ffb843; }
body.nmg-theme .nmg-category-card--sports,
body.nmg-theme .nmg-category-card--football { --nmg-category-color: #4ea1ff; }
body.nmg-theme .nmg-category-card--shooting { --nmg-category-color: #b568ff; }
body.nmg-theme .nmg-category-card--arcade { --nmg-category-color: #ef55c7; }
body.nmg-theme .nmg-category-card--hypercasual { --nmg-category-color: #5bd4e8; }
body.nmg-theme .nmg-category-card--girls { --nmg-category-color: #ff85b9; }

body.nmg-theme .nmg-category-card--bike,
body.nmg-theme .nmg-category-card--motorcycle { --nmg-category-color: #ff8b47; }
body.nmg-theme .nmg-category-card--beauty,
body.nmg-theme .nmg-category-card--dress-up,
body.nmg-theme .nmg-category-card--dressup { --nmg-category-color: #ff74c8; }
body.nmg-theme .nmg-category-card--cooking { --nmg-category-color: #ff9f43; }
body.nmg-theme .nmg-category-card--music { --nmg-category-color: #8f7cff; }
body.nmg-theme .nmg-category-card--multiplayer { --nmg-category-color: #45c8ff; }
body.nmg-theme .nmg-category-card--kids,
body.nmg-theme .nmg-category-card--educational { --nmg-category-color: #f1d64b; }
body.nmg-theme .nmg-category-card--animals,
body.nmg-theme .nmg-category-card--animal { --nmg-category-color: #73d98f; }

/* Single game */
body.nmg-theme.nmg-game-view .site-content {
	width: min(100% - clamp(28px, 4vw, 56px), var(--nmg-game-container));
	padding-top: 14px;
}
body.nmg-theme.nmg-game-view .nmg-breadcrumbs-wrap { margin-bottom: 11px; }
body.nmg-theme .nmg-game-entry { min-width: 0; }
body.nmg-theme .nmg-game-header {
	display: grid;
	grid-template-columns: 78px minmax(0, 1fr) auto;
	align-items: center;
	gap: 13px;
	margin-bottom: 13px;
}
body.nmg-theme .nmg-game-header__thumb { display: block; width: 78px; aspect-ratio: 4 / 3; border-radius: 12px; object-fit: cover; }
body.nmg-theme .nmg-game-header__title { margin: 0; font-size: clamp(1.75rem, 3vw, 2.45rem); }
body.nmg-theme .nmg-game-header__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 5px; color: var(--nmg-muted); font-size: .83rem; }
body.nmg-theme .nmg-rating-summary { display: inline-flex; align-items: center; gap: 5px; }
body.nmg-theme .nmg-rating-summary svg { color: #ffc42f; fill: #ffc42f; }
body.nmg-theme .nmg-rating-summary strong { color: #fff; }
body.nmg-theme .nmg-category-pill { display: inline-flex; align-items: center; min-height: 27px; border-radius: 999px; background: var(--nmg-surface-2); padding: 4px 10px; color: var(--nmg-text-soft); text-decoration: none; }
body.nmg-theme .nmg-game-header__actions { display: flex; align-items: center; gap: 8px; }
body.nmg-theme .nmg-action-button {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 40px;
	border: 1px solid var(--nmg-border-strong);
	border-radius: 9px;
	background: transparent;
	padding: 8px 12px;
	color: var(--nmg-text-soft);
	font-size: .78rem;
	font-weight: 700;
}
body.nmg-theme .nmg-action-button small { color: var(--nmg-muted); font-size: .68rem; }
body.nmg-theme .nmg-action-button--square { width: 40px; padding: 0; }
body.nmg-theme .nmg-action-button:hover,
body.nmg-theme .nmg-action-button.is-active { border-color: color-mix(in srgb, var(--nmg-accent) 55%, var(--nmg-border)); background: var(--nmg-accent-soft); color: #fff; transform: none; }
body.nmg-theme [data-nmg-favorite].is-active svg { color: #ff647c; fill: #ff647c; }

body.nmg-theme .nmg-game-player-shell {
	width: min(100%, var(--nmg-player-shell-width, 1120px));
	margin: 0 auto;
	overflow: visible;
	background: transparent;
}
body.nmg-theme .nmg-game-player-stage {
	display: flex;
	width: 100%;
	min-width: 0;
	justify-content: center;
}
body.nmg-theme .nmg-game-player {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	width: min(100%, var(--nmg-player-native-width, 1120px), var(--nmg-player-vh-width, 138.667vh));
	aspect-ratio: var(--nmg-game-ratio, 16 / 9);
	border: 1px solid var(--nmg-border);
	border-radius: 13px;
	background: #02050a;
}
body.nmg-theme .nmg-game-player iframe { display: block; width: 100%; height: 100%; border: 0; background: #000; }
body.nmg-theme .nmg-player-cover,
body.nmg-theme .nmg-player-loading { position: absolute; inset: 0; display: grid; place-items: center; }
body.nmg-theme .nmg-player-cover {
	z-index: 2;
	overflow: hidden;
	background: #02050a;
}
body.nmg-theme .nmg-player-cover::after {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: linear-gradient(rgba(3, 8, 15, .16), rgba(3, 8, 15, .42));
	content: "";
	pointer-events: none;
}
body.nmg-theme .nmg-player-cover__backdrop {
	position: absolute;
	inset: -5%;
	z-index: 0;
	background: var(--nmg-game-backdrop, #050b14) center / cover no-repeat;
	filter: blur(18px) brightness(.58) saturate(.9);
	transform: scale(1.08);
}
body.nmg-theme .nmg-player-cover__image {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
body.nmg-theme .nmg-game-player--cover-contain .nmg-player-cover__image { object-fit: contain; }
body.nmg-theme .nmg-game-player.is-loaded .nmg-player-cover { display: none; }
body.nmg-theme .nmg-player-loading { z-index: 1; background: #02050a; color: var(--nmg-text-soft); font-size: .9rem; }
body.nmg-theme .nmg-player-loading[hidden] { display: none; }
body.nmg-theme button.nmg-player-start {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 7px;
	min-width: 104px;
	min-height: 88px;
	border: 0;
	background: transparent;
	padding: 0;
	color: #fff;
	font-size: .82rem;
	font-weight: 750;
	text-shadow: 0 2px 8px rgba(0,0,0,.72);
	box-shadow: none;
}
body.nmg-theme button.nmg-player-start:hover { border: 0; background: transparent; transform: scale(1.04); }
body.nmg-theme .nmg-player-start__icon {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border: 2px solid rgba(255,255,255,.9);
	border-radius: 50%;
	background: rgba(0,0,0,.08);
	backdrop-filter: blur(2px);
}
body.nmg-theme .nmg-player-start__icon svg { width: 27px; height: 27px; margin-left: 3px; fill: currentColor; }

body.nmg-theme .nmg-game-toolbar {
	position: relative;
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 58px;
	border: 1px solid var(--nmg-border);
	border-radius: 13px;
	background: var(--nmg-surface);
	margin-top: 10px;
	padding: 9px 12px;
}
body.nmg-theme .nmg-game-player-shell[data-orientation="landscape"] .nmg-game-player { border-radius: 13px 13px 0 0; }
body.nmg-theme .nmg-game-player-shell[data-orientation="landscape"] .nmg-game-toolbar {
	margin-top: 0;
	border-top: 0;
	border-radius: 0 0 13px 13px;
}
body.nmg-theme .nmg-toolbar-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 38px;
	border: 1px solid var(--nmg-border);
	border-radius: 8px;
	background: transparent;
	padding: 7px 11px;
	color: var(--nmg-text-soft);
	font-size: .76rem;
	font-weight: 700;
}
body.nmg-theme .nmg-toolbar-button:hover,
body.nmg-theme .nmg-toolbar-button.is-active { border-color: var(--nmg-border-strong); background: var(--nmg-surface-2); color: #fff; transform: none; }
body.nmg-theme .nmg-toolbar-button--primary { border-color: transparent; background: var(--nmg-accent); color: #fff; }
body.nmg-theme .nmg-toolbar-button--primary:hover { background: var(--nmg-accent-hover); }
body.nmg-theme .nmg-toolbar-button--secondary { margin-left: auto; }
body.nmg-theme .nmg-toolbar-button--secondary + .nmg-toolbar-button--secondary { margin-left: 0; }
body.nmg-theme [data-nmg-reaction="1"].is-active svg { color: var(--nmg-success); }
body.nmg-theme [data-nmg-reaction="-1"].is-active svg { color: var(--nmg-danger); }
body.nmg-theme .nmg-rating-picker { position: relative; }
body.nmg-theme .nmg-rating-picker__panel {
	position: absolute;
	left: 0;
	bottom: calc(100% + 8px);
	z-index: 20;
	display: flex;
	gap: 3px;
	border: 1px solid var(--nmg-border-strong);
	border-radius: 10px;
	background: var(--nmg-surface-2);
	padding: 7px;
	box-shadow: var(--nmg-shadow);
}
body.nmg-theme .nmg-rating-picker__panel[hidden] { display: none; }
body.nmg-theme .nmg-rating-picker__panel button { min-width: 32px; min-height: 32px; border: 0; background: transparent; padding: 4px; color: #718096; }
body.nmg-theme .nmg-rating-picker__panel button:hover,
body.nmg-theme .nmg-rating-picker__panel button.is-active { background: transparent; color: #ffc42f; transform: none; }
body.nmg-theme .nmg-rating-picker__panel button.is-active svg { fill: currentColor; }
body.nmg-theme .nmg-game-player:fullscreen { width: 100vw; height: 100vh; max-width: none; aspect-ratio: auto; border-radius: 0; background: #000; }

body.nmg-theme .nmg-game-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 350px;
	align-items: start;
	gap: 18px;
	margin-top: 18px;
}
body.nmg-theme .nmg-game-content,
body.nmg-theme .nmg-game-sidebar-section {
	border: 1px solid var(--nmg-border);
	border-radius: 13px;
	background: var(--nmg-surface);
}
body.nmg-theme .nmg-game-content { overflow: hidden; }
body.nmg-theme .nmg-game-tabs { display: none; align-items: center; gap: 4px; border-bottom: 1px solid var(--nmg-border); padding: 0 14px; }
body.nmg-theme .nmg-game-tab { position: relative; min-height: 48px; border: 0; border-radius: 0; background: transparent; padding: 0 12px; color: var(--nmg-muted); font-size: .86rem; }
body.nmg-theme .nmg-game-tab:hover { background: transparent; color: #fff; transform: none; }
body.nmg-theme .nmg-game-tab[aria-selected="true"] { color: #fff; }
body.nmg-theme .nmg-game-tab[aria-selected="true"]::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: -1px; height: 2px; background: var(--nmg-accent); }
body.nmg-theme .nmg-game-panel { padding: 20px 22px; }
body.nmg-theme .nmg-game-panel + .nmg-game-panel { border-top: 1px solid var(--nmg-border); }
body.nmg-theme .nmg-game-panel h2,
body.nmg-theme .nmg-game-tags h2 { margin: 0 0 12px; font-size: 1.02rem; }
body.nmg-theme .nmg-game-panel__body { position: relative; color: var(--nmg-text-soft); font-size: .89rem; line-height: 1.65; }
body.nmg-theme .nmg-game-panel__body > :last-child { margin-bottom: 0; }
body.nmg-theme .nmg-game-panel__body.is-collapsible:not(.is-expanded) { max-height: 8em; overflow: hidden; }
body.nmg-theme .nmg-game-panel__body.is-collapsible:not(.is-expanded)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3.2em; background: linear-gradient(transparent, var(--nmg-surface)); pointer-events: none; }
body.nmg-theme .nmg-show-more { min-height: 28px; border: 0; background: transparent; padding: 4px 0 0; color: #9d8eff; font-size: .79rem; }
body.nmg-theme .nmg-show-more:hover { border: 0; background: transparent; color: #c9c1ff; transform: none; }
body.nmg-theme .nmg-game-tags { border-top: 1px solid var(--nmg-border); padding: 18px 22px 20px; }
body.nmg-theme .nmg-game-tags__list { display: flex; flex-wrap: wrap; gap: 8px; }
body.nmg-theme .nmg-game-tags__list span { display: inline-flex; min-height: 29px; align-items: center; border-radius: 8px; background: var(--nmg-surface-2); padding: 5px 10px; color: var(--nmg-text-soft); font-size: .75rem; }

body.nmg-theme .nmg-game-sidebar { display: grid; gap: 16px; min-width: 0; }
body.nmg-theme .nmg-game-sidebar-section { overflow: hidden; padding: 13px; }
body.nmg-theme .nmg-game-sidebar-section .nmg-game-section__header { margin-bottom: 11px; }
body.nmg-theme .nmg-game-sidebar-section .nmg-game-section__title { font-size: .98rem; }
body.nmg-theme .nmg-related-game-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
body.nmg-theme .nmg-related-game-grid .nmg-game-card__body { padding: 6px 7px 7px; }
body.nmg-theme .nmg-related-game-grid .nmg-game-card__meta { font-size: .58rem; }
body.nmg-theme .nmg-related-game-grid .nmg-game-card__title { font-size: .68rem; }

body.nmg-theme .nmg-interaction-status { position: fixed; right: 18px; bottom: 18px; z-index: 100; max-width: 320px; border-radius: 9px; background: var(--nmg-surface-3); color: #fff; font-size: .8rem; }
body.nmg-theme .nmg-interaction-status:not(:empty) { border: 1px solid var(--nmg-border-strong); padding: 9px 12px; box-shadow: var(--nmg-shadow); }
body.nmg-theme .nmg-report-dialog { width: min(92vw, 480px); border: 1px solid var(--nmg-border-strong); border-radius: 14px; background: var(--nmg-surface); padding: 0; color: var(--nmg-text); }
body.nmg-theme .nmg-report-dialog::backdrop { background: rgba(1,5,11,.72); backdrop-filter: blur(3px); }
body.nmg-theme .nmg-report-dialog__surface { display: grid; gap: 12px; padding: 20px; }
body.nmg-theme .nmg-report-dialog__header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
body.nmg-theme .nmg-report-dialog__header h2 { margin: 0; font-size: 1.18rem; }
body.nmg-theme .nmg-report-dialog__header button { width: 34px; min-height: 34px; border: 0; background: transparent; padding: 0; font-size: 1.5rem; }
body.nmg-theme .nmg-report-dialog__actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 4px; }

body.nmg-theme .nmg-game-archive-header { margin-bottom: 18px; }
body.nmg-theme .nmg-game-archive-description { max-width: 760px; color: var(--nmg-text-soft); }


/* Recently Played and Continue marker. */
body.nmg-theme .nmg-game-card__continue-badge {
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	max-width: calc(100% - 16px);
	min-height: 24px;
	border: 1px solid color-mix(in srgb, var(--nmg-accent) 65%, #fff 12%);
	border-radius: 999px;
	background: color-mix(in srgb, var(--nmg-accent) 88%, #07111f);
	padding: 4px 8px;
	color: #fff;
	font-size: .63rem;
	font-weight: 800;
	line-height: 1;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
body.nmg-theme .nmg-game-card--continue { border-color: color-mix(in srgb, var(--nmg-accent) 55%, var(--nmg-border)); }
body.nmg-theme .nmg-game-card__activity { display: block; overflow: hidden; margin-top: 6px; color: var(--nmg-muted); font-size: .68rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
body.nmg-theme .nmg-activity-history-header { margin-bottom: 18px; }
body.nmg-theme .nmg-activity-history-header .nmg-game-archive-description { margin: 7px 0 0; }
body.nmg-theme .nmg-activity-history__status { margin: 20px 0; color: var(--nmg-muted); text-align: center; }
body.nmg-theme .nmg-activity-history__more { display: flex; justify-content: center; margin-top: 24px; }
body.nmg-theme .nmg-activity-history__empty { margin-top: 18px; }
body.nmg-theme .nmg-activity-history [hidden] { display: none !important; }

@media (max-width: 1180px) {
	body.nmg-theme .nmg-play-collections__rail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	body.nmg-theme .nmg-game-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	body.nmg-theme .nmg-category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
	body.nmg-theme .nmg-game-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	body.nmg-theme .nmg-category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	body.nmg-theme .nmg-game-layout { grid-template-columns: 1fr; }
	body.nmg-theme .nmg-game-sidebar { grid-template-columns: 1fr 1fr; }
	body.nmg-theme .nmg-related-game-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 782px) {
	body.nmg-theme .nmg-game-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	body.nmg-theme.nmg-game-view .site-content { padding-top: 10px; }
	body.nmg-theme .nmg-game-header {
		grid-template-columns: 72px minmax(0, 1fr);
		grid-template-rows: auto auto auto;
		column-gap: 10px;
		row-gap: 3px;
	}
	body.nmg-theme .nmg-game-header__thumb { grid-column: 1; grid-row: 1 / span 2; width: 72px; }
	body.nmg-theme .nmg-game-header__copy { display: contents; }
	body.nmg-theme .nmg-game-header__title {
		grid-column: 2;
		grid-row: 1;
		align-self: end;
		overflow: hidden;
		min-width: 0;
		font-size: clamp(1.05rem, 4.8vw, 1.38rem);
		line-height: 1.15;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	body.nmg-theme .nmg-game-header__meta {
		grid-column: 2;
		grid-row: 2;
		align-self: start;
		flex-wrap: nowrap;
		overflow: hidden;
		min-width: 0;
		margin-top: 0;
		gap: 6px;
		font-size: .72rem;
	}
	body.nmg-theme .nmg-rating-summary { flex: 0 0 auto; white-space: nowrap; }
	body.nmg-theme .nmg-category-pill { overflow: hidden; min-width: 0; max-width: 100%; min-height: 24px; padding: 3px 8px; text-overflow: ellipsis; white-space: nowrap; }
	body.nmg-theme .nmg-game-header__actions { grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: 1fr 1fr 48px; margin-top: 6px; }
	body.nmg-theme .nmg-action-button { justify-content: center; }
	body.nmg-theme .nmg-game-toolbar { flex-wrap: wrap; }
	body.nmg-theme .nmg-game-sidebar { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
	body.nmg-theme .nmg-play-collections__rail {
		grid-auto-flow: column;
		grid-auto-columns: minmax(164px, 46vw);
		grid-template-columns: none;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: inline mandatory;
		padding-bottom: 7px;
	}
	body.nmg-theme .nmg-play-collection { min-height: 104px; scroll-snap-align: start; }
	body.nmg-theme .nmg-play-collection__copy > span { display: none; }
	body.nmg-theme .nmg-game-section { margin-bottom: 30px; }
	body.nmg-theme .nmg-home .nmg-game-section .nmg-game-grid {
		display: grid;
		grid-auto-flow: row;
		grid-auto-columns: auto;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
		overflow: visible;
		padding-bottom: 0;
	}
	body.nmg-theme.nmg-game-home .nmg-game-section .nmg-game-grid > .nmg-game-card:nth-child(n+7) { display: none; }
	body.nmg-theme.nmg-game-home .nmg-home-section--recent .nmg-game-grid > .nmg-game-card:nth-child(n+7) { display: block; }
	body.nmg-theme .nmg-game-archive-page .nmg-game-grid,
	body.nmg-theme .nmg-search-results .nmg-game-grid { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
	body.nmg-theme .nmg-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.nmg-theme .nmg-category-card { min-height: 104px; }
	body.nmg-theme .nmg-game-player { border-radius: 10px 10px 0 0; }
	body.nmg-theme .nmg-game-toolbar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 0; border-top: 0; border-radius: 0 0 10px 10px; }
	body.nmg-theme .nmg-toolbar-button { min-width: 0; padding-inline: 7px; }
	body.nmg-theme .nmg-toolbar-button--primary { grid-column: 1 / -1; min-height: 48px; font-size: .88rem; }
	body.nmg-theme .nmg-toolbar-button--secondary { margin-left: 0; }
	body.nmg-theme .nmg-rating-picker { position: static; }
	body.nmg-theme .nmg-rating-picker__panel { left: 8px; right: 8px; bottom: calc(100% + 8px); justify-content: center; }
	body.nmg-theme .nmg-game-tabs { display: flex; overflow-x: auto; }
	body.nmg-theme.js .nmg-game-panel:not(.is-active) { display: none; }
	body.nmg-theme .nmg-game-panel { padding: 18px; }
	body.nmg-theme .nmg-game-tags { padding: 17px 18px; }
	body.nmg-theme .nmg-related-game-grid { grid-auto-flow: column; grid-auto-columns: minmax(140px, 42vw); grid-template-columns: none; overflow-x: auto; scroll-snap-type: inline mandatory; }
	body.nmg-theme .nmg-related-game-grid .nmg-game-card { scroll-snap-align: start; }
	body.nmg-theme .nmg-report-dialog { width: calc(100% - 24px); }
}

body.nmg-theme .nmg-game-content,
body.nmg-theme .nmg-game-sidebar,
body.nmg-theme .nmg-game-sidebar-section,
body.nmg-theme .nmg-related-game-grid { min-width: 0; max-width: 100%; }
body.nmg-theme .nmg-home-page__title { max-width: 880px; margin: 0 0 18px; font-size: clamp(1.7rem, 3vw, 2.5rem); }
body.nmg-theme .nmg-home-page__content > p:first-child { max-width: 880px; color: var(--nmg-text-soft); }


/* Archive discovery controls. */
body.nmg-theme .nmg-game-filters {
	display: grid;
	grid-template-columns: minmax(170px, 1.35fr) repeat(5, minmax(120px, 1fr)) auto;
	align-items: end;
	gap: 10px;
	margin: 0 0 20px;
	border: 1px solid var(--nmg-border);
	border-radius: 14px;
	background: var(--nmg-surface);
	padding: 14px;
}
body.nmg-theme .nmg-game-filter { display: grid; gap: 5px; min-width: 0; }
body.nmg-theme .nmg-game-filter label { color: var(--nmg-muted); font-size: .69rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
body.nmg-theme .nmg-game-filter input,
body.nmg-theme .nmg-game-filter select { min-height: 40px; margin: 0; padding-block: 7px; font-size: .82rem; }
body.nmg-theme .nmg-game-filter-actions { display: flex; align-items: center; gap: 7px; }
body.nmg-theme .nmg-game-filter-actions .nmg-button { min-height: 40px; padding: 8px 12px; font-size: .8rem; }
body.nmg-theme .nmg-filter-summary { margin: -6px 0 16px; color: var(--nmg-muted); font-size: .78rem; }

@media (max-width: 1040px) {
	body.nmg-theme .nmg-game-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.nmg-theme .nmg-game-filter-actions { grid-column: 1 / -1; justify-content: flex-end; }
}
@media (max-width: 640px) {
	body.nmg-theme .nmg-game-filters { grid-template-columns: 1fr; padding: 12px; }
	body.nmg-theme .nmg-game-filter-actions { grid-column: auto; justify-content: stretch; }
	body.nmg-theme .nmg-game-filter-actions .nmg-button { flex: 1 1 0; }
}

/* Homepage long-form copy: visually separate SEO/editorial content from game discovery. */
body.nmg-theme.nmg-game-home .nmg-home-page__content { width: 100%; }
body.nmg-theme.nmg-game-home .nmg-home-editorial {
	position: relative;
	width: min(100%, 980px);
	margin: clamp(42px, 5vw, 72px) auto 0;
	overflow: hidden;
	border: 1px solid var(--nmg-border);
	border-radius: 20px;
	background:
		radial-gradient(circle at 100% 0, color-mix(in srgb, var(--nmg-accent) 11%, transparent), transparent 34%),
		linear-gradient(180deg, color-mix(in srgb, var(--nmg-surface-2) 78%, transparent), var(--nmg-surface));
	padding: clamp(32px, 4vw, 52px);
	color: var(--nmg-text-soft);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
}
body.nmg-theme.nmg-game-home .nmg-home-editorial::before {
	content: "";
	position: absolute;
	top: 0;
	left: clamp(24px, 5vw, 52px);
	right: clamp(24px, 5vw, 52px);
	height: 3px;
	border-radius: 0 0 999px 999px;
	background: linear-gradient(90deg, transparent, var(--nmg-accent), #35c7e8, transparent);
	opacity: .88;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial > * {
	width: min(100%, 76ch);
	margin-right: auto;
	margin-left: auto;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial h2 {
	position: relative;
	margin-top: 46px;
	margin-bottom: 17px;
	padding-left: 17px;
	color: var(--nmg-text);
	font-size: clamp(1.3rem, 2vw, 1.68rem);
	font-weight: 820;
	letter-spacing: -.025em;
	line-height: 1.25;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial h2::before {
	content: "";
	position: absolute;
	top: .13em;
	bottom: .13em;
	left: 0;
	width: 3px;
	border-radius: 999px;
	background: var(--nmg-accent);
	box-shadow: 0 0 0 4px var(--nmg-accent-soft);
}
body.nmg-theme.nmg-game-home .nmg-home-editorial h2:first-child { margin-top: 0; }
body.nmg-theme.nmg-game-home .nmg-home-editorial p,
body.nmg-theme.nmg-game-home .nmg-home-editorial li {
	font-size: .98rem;
	line-height: 1.78;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial p { margin-top: 0; margin-bottom: 1.12em; }
body.nmg-theme.nmg-game-home .nmg-home-editorial strong { color: var(--nmg-text); font-weight: 760; }
body.nmg-theme.nmg-game-home .nmg-home-editorial a {
	color: #b9d4ff;
	font-weight: 680;
	text-decoration-line: underline;
	text-decoration-color: color-mix(in srgb, var(--nmg-accent) 72%, transparent);
	text-decoration-thickness: 1.5px;
	text-underline-offset: .2em;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial a:hover { color: #fff; }
body.nmg-theme.nmg-game-home .nmg-home-editorial ul,
body.nmg-theme.nmg-game-home .nmg-home-editorial ol {
	margin-top: 0;
	margin-bottom: 1.3em;
	padding-left: 1.35rem;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial li + li { margin-top: .45em; }
body.nmg-theme.nmg-game-home .nmg-home-editorial p:has(> strong:first-child + br) {
	border: 1px solid var(--nmg-border);
	border-radius: 12px;
	background: color-mix(in srgb, var(--nmg-surface-2) 84%, transparent);
	padding: 15px 17px;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial p:has(> strong:first-child + br) > strong:first-child {
	display: inline-block;
	margin-bottom: 4px;
	color: #fff;
}
body.nmg-theme.nmg-game-home .nmg-home-editorial > :last-child { margin-bottom: 0; }
body.nmg-theme.nmg-game-home .nmg-home-editorial--before { margin-top: 0; margin-bottom: 36px; }

@media (max-width: 700px) {
	body.nmg-theme.nmg-game-home .nmg-home-editorial {
		margin-top: 34px;
		border-radius: 15px;
		padding: 24px 17px;
	}
	body.nmg-theme.nmg-game-home .nmg-home-editorial::before {
		left: 18px;
		right: 18px;
	}
	body.nmg-theme.nmg-game-home .nmg-home-editorial h2 {
		margin-top: 36px;
		margin-bottom: 14px;
		padding-left: 13px;
		font-size: clamp(1.14rem, 5vw, 1.32rem);
	}
	body.nmg-theme.nmg-game-home .nmg-home-editorial p,
	body.nmg-theme.nmg-game-home .nmg-home-editorial li {
		font-size: .93rem;
		line-height: 1.7;
	}
	body.nmg-theme.nmg-game-home .nmg-home-editorial p:has(> strong:first-child + br) {
		border-radius: 10px;
		padding: 13px 14px;
	}
}

@media (max-width: 420px) {
	body.nmg-theme.nmg-game-home .nmg-home-editorial {
		padding: 20px 13px;
		border-radius: 13px;
	}
	body.nmg-theme.nmg-game-home .nmg-home-editorial h2 { padding-left: 12px; }
}

/* v0.9.8 archive tabs and managed game-category presentation. */
body.nmg-theme .nmg-archive-tabs {
	display: flex;
	align-items: center;
	gap: 8px;
	overflow-x: auto;
	margin: 0 0 22px;
	padding: 0 0 8px;
	scrollbar-width: thin;
}
body.nmg-theme .nmg-archive-tab {
	flex: 0 0 auto;
	min-height: 44px;
	border: 1px solid transparent;
	border-radius: 12px;
	padding: 10px 16px;
	color: var(--nmg-text-soft);
	font-size: .9rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}
body.nmg-theme .nmg-archive-tab:hover,
body.nmg-theme .nmg-archive-tab:focus-visible {
	border-color: var(--nmg-border);
	background: var(--nmg-surface-2);
	color: #fff;
}
body.nmg-theme .nmg-archive-tab.is-active {
	border-color: color-mix(in srgb, var(--nmg-accent) 48%, var(--nmg-border));
	background: color-mix(in srgb, var(--nmg-accent) 24%, var(--nmg-surface-2));
	color: #fff;
}

body.nmg-theme .nmg-category-card__icon--image {
	overflow: hidden;
	border-color: var(--nmg-border-strong);
	background: var(--nmg-surface-2);
}
body.nmg-theme .nmg-category-card__icon--image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.nmg-theme .nmg-category-directory-header { margin-bottom: 20px; }
body.nmg-theme .nmg-category-directory-header .nmg-game-archive-description { margin: 7px 0 0; }
body.nmg-theme .nmg-category-directory-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}
body.nmg-theme .nmg-category-directory-card {
	--nmg-category-color: #8b7cff;
	display: grid;
	grid-template-columns: minmax(92px, 38%) minmax(0, 1fr);
	align-items: center;
	min-height: 128px;
	overflow: hidden;
	border: 1px solid var(--nmg-border);
	border-radius: 15px;
	background: linear-gradient(135deg, color-mix(in srgb, var(--nmg-category-color) 10%, var(--nmg-surface-2)), var(--nmg-surface));
	color: var(--nmg-text);
	text-decoration: none;
	transition: transform var(--nmg-transition), border-color var(--nmg-transition), background-color var(--nmg-transition);
}
body.nmg-theme .nmg-category-directory-card:hover,
body.nmg-theme .nmg-category-directory-card:focus-visible {
	border-color: color-mix(in srgb, var(--nmg-category-color) 52%, var(--nmg-border));
	background: color-mix(in srgb, var(--nmg-category-color) 9%, var(--nmg-surface-2));
	transform: translateY(-2px);
}
body.nmg-theme .nmg-category-directory-card__media {
	display: grid;
	place-items: center;
	align-self: stretch;
	min-height: 128px;
	overflow: hidden;
	background: color-mix(in srgb, var(--nmg-category-color) 11%, var(--nmg-surface-3));
}
body.nmg-theme .nmg-category-directory-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	padding: 8px;
	object-fit: contain;
}
body.nmg-theme .nmg-category-directory-card__fallback {
	display: grid;
	place-items: center;
	width: 70px;
	height: 70px;
	border: 1px solid color-mix(in srgb, var(--nmg-category-color) 48%, var(--nmg-border));
	border-radius: 18px;
	background: color-mix(in srgb, var(--nmg-category-color) 18%, transparent);
	color: var(--nmg-category-color);
}
body.nmg-theme .nmg-category-directory-card__fallback svg { width: 38px; height: 38px; }
body.nmg-theme .nmg-category-directory-card__copy {
	display: grid;
	gap: 7px;
	min-width: 0;
	padding: 16px;
}
body.nmg-theme .nmg-category-directory-card__copy strong {
	font-size: 1rem;
	font-weight: 760;
	line-height: 1.2;
}
body.nmg-theme .nmg-category-directory-card__copy small { color: var(--nmg-muted); font-size: .76rem; }

body.nmg-theme .nmg-category-archive-hero {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	margin: 0 0 20px;
	border: 1px solid var(--nmg-border);
	border-radius: 16px;
	background: linear-gradient(135deg, var(--nmg-surface-2), var(--nmg-surface));
	padding: 16px;
}
body.nmg-theme .nmg-category-archive-hero__media {
	display: grid;
	place-items: center;
	width: 132px;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border: 1px solid var(--nmg-border);
	border-radius: 13px;
	background: var(--nmg-surface-3);
}
body.nmg-theme .nmg-category-archive-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	padding: 8px;
	object-fit: contain;
}
body.nmg-theme .nmg-category-archive-hero__media--fallback { color: var(--nmg-accent); }
body.nmg-theme .nmg-category-archive-hero__media--fallback svg { width: 50px; height: 50px; }
body.nmg-theme .nmg-category-archive-hero__copy { min-width: 0; }
body.nmg-theme .nmg-category-archive-hero__copy h1 { margin: 0; }
body.nmg-theme .nmg-category-archive-hero__copy .nmg-game-archive-description { margin-top: 7px; }
body.nmg-theme .nmg-category-archive-hero__count { margin: 8px 0 0; color: var(--nmg-muted); font-size: .78rem; }

body.nmg-theme .nmg-category-seo-content {
	width: min(100%, 920px);
	margin: clamp(36px, 5vw, 64px) auto 0;
	border: 1px solid var(--nmg-border);
	border-radius: 18px;
	background: linear-gradient(180deg, var(--nmg-surface-2), var(--nmg-surface));
	padding: clamp(28px, 4vw, 44px);
	color: var(--nmg-text-soft);
}
body.nmg-theme .nmg-category-seo-content > * { width: min(100%, 74ch); margin-right: auto; margin-left: auto; }
body.nmg-theme .nmg-category-seo-content h2,
body.nmg-theme .nmg-category-seo-content h3 { color: var(--nmg-text); line-height: 1.28; }
body.nmg-theme .nmg-category-seo-content h2 { margin-top: 38px; font-size: clamp(1.28rem, 2vw, 1.62rem); }
body.nmg-theme .nmg-category-seo-content h2:first-child { margin-top: 0; }
body.nmg-theme .nmg-category-seo-content p,
body.nmg-theme .nmg-category-seo-content li { line-height: 1.76; }
body.nmg-theme .nmg-category-seo-content > :last-child { margin-bottom: 0; }

@media (max-width: 1100px) {
	body.nmg-theme .nmg-category-directory-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	body.nmg-theme .nmg-archive-tabs { margin-bottom: 17px; }
	body.nmg-theme .nmg-archive-tab { min-height: 40px; padding: 9px 13px; font-size: .82rem; }
	body.nmg-theme .nmg-category-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	body.nmg-theme .nmg-category-directory-card { grid-template-columns: 1fr; min-height: 0; }
	body.nmg-theme .nmg-category-directory-card__media { min-height: 96px; aspect-ratio: 4 / 3; }
	body.nmg-theme .nmg-category-directory-card__copy { gap: 4px; padding: 11px 12px 13px; }
	body.nmg-theme .nmg-category-directory-card__copy strong { font-size: .86rem; }
	body.nmg-theme .nmg-category-archive-hero { grid-template-columns: 92px minmax(0, 1fr); gap: 12px; padding: 12px; }
	body.nmg-theme .nmg-category-archive-hero__media { width: 92px; }
	body.nmg-theme .nmg-category-seo-content { border-radius: 14px; padding: 22px 16px; }
}
@media (max-width: 768px) {
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-1 > .nmg-category-card:nth-child(n+2),
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-2 > .nmg-category-card:nth-child(n+3),
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-3 > .nmg-category-card:nth-child(n+4),
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-4 > .nmg-category-card:nth-child(n+5),
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-5 > .nmg-category-card:nth-child(n+6),
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-6 > .nmg-category-card:nth-child(n+7),
	body.nmg-theme.nmg-game-home .nmg-category-grid--mobile-7 > .nmg-category-card:nth-child(n+8) { display: none; }
}
@media (max-width: 420px) {
	body.nmg-theme .nmg-category-directory-card__media { min-height: 82px; }
	body.nmg-theme .nmg-category-archive-hero { grid-template-columns: 72px minmax(0, 1fr); }
	body.nmg-theme .nmg-category-archive-hero__media { width: 72px; }
	body.nmg-theme .nmg-category-archive-hero__copy .nmg-game-archive-description { font-size: .8rem; }
	body.nmg-theme .nmg-category-seo-content { padding: 19px 13px; }
}
