/* PinkuGames 2.4.4. Loaded last to keep the theme and Game Studio palette in sync. */
:root {
  color-scheme: dark;
  --pg-bg: #0B0914;
  --pg-bg-soft: #15121F;
  --pg-surface: #15121F;
  --pg-surface-2: #1C1629;
  --pg-line: #2F2542;
  --pg-text: #FFFFFF;
  --pg-muted: #A99BB8;
  --pg-pink: #FF2E63;
  --pg-pink-strong: #FF2E63;
  --pg-pink-hover: #FF4D7A;
  --pg-secondary: #FF6B9D;
  --pg-lilac: #B89AF3;
  --pg-purple: #2A1B45;
  --pg-mint: #34D399;
  --pg-amber: #FBBF24;
  --pgs-bg: var(--pg-bg);
  --pgs-surface: var(--pg-surface);
  --pgs-surface-2: var(--pg-surface-2);
  --pgs-line: var(--pg-line);
  --pgs-text: var(--pg-text);
  --pgs-muted: var(--pg-muted);
  --pgs-pink: var(--pg-pink);
  --pgs-hot: var(--pg-pink);
  --pgs-purple: var(--pg-secondary);
}

body {
  background: radial-gradient(ellipse at 12% 0, #2A1B4566, transparent 38rem),
    radial-gradient(ellipse at 95% 15%, #FF2E6310, transparent 36rem), var(--pg-bg);
  color: var(--pg-text);
}
.pgs-site-main {
  --pgs-bg: #0B0914;
  --pgs-surface: #15121F;
  --pgs-surface-2: #1C1629;
  --pgs-line: #2F2542;
  --pgs-text: #FFFFFF;
  --pgs-muted: #A99BB8;
  --pgs-pink: #FF2E63;
  --pgs-hot: #FF2E63;
  --pgs-purple: #FF6B9D;
  background: radial-gradient(ellipse at 8% 0, #2A1B4570, transparent 38rem),
    radial-gradient(ellipse at 94% 18%, #FF2E6312, transparent 34rem), var(--pg-bg);
  color: var(--pg-text);
}
::selection { background: #FF2E6366; color: #FFFFFF; }

/* Clear, readable branding at every width. */
.site-header { background: #0B0914ed; border-color: var(--pg-line); }
.pg-brand-copy { display: grid !important; flex-shrink: 0; }
.pg-brand-name { display: inline-block !important; color: #FFFFFF; white-space: nowrap; }
.pg-brand-name span, .pg-footer-brand span { color: var(--pg-pink); }
.pg-brand-mark { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.pg-brand-mark img { display: block; width: 184%; height: 184%; max-width: none; object-fit: contain; }
.pg-game-count { display: inline-flex; border-radius: 11px; border-color: var(--pg-line); }
.pg-game-count svg { display: block; width: 18px; height: 18px; flex: 0 0 18px; color: var(--pg-secondary); }
.pg-game-count > span:first-child { display: inline-flex; color: var(--pg-secondary); }
.pg-new-dot { background: var(--pg-pink); box-shadow: 0 0 0 4px #FF2E631c; }
.pg-new-link { border-color: #FF2E6340; color: var(--pg-secondary); }
.pg-nav a { color: var(--pg-muted); }
.pg-nav a:hover, .pg-nav .current-menu-item > a { color: var(--pg-secondary); }
.pg-platform-icon { display: inline-block; width: 17px; height: 17px; flex: 0 0 17px; vertical-align: -.15em; }
.pg-platform-icon svg { display: block; width: 100%; height: 100%; }
.pg-platform-nav a { gap: 6px; }
a[data-platform-kind="windows"], .pg-platform-nav a[data-platform-kind="windows"] { color: var(--pg-secondary); }
a[data-platform-kind="android"], .pg-platform-nav a[data-platform-kind="android"] { color: var(--pg-mint); }
a[data-platform-kind="mac"], .pg-platform-nav a[data-platform-kind="mac"] { color: var(--pg-lilac); }
.pg-platform-nav a:hover { color: #FFFFFF; }

/* Matching surfaces across the theme and plugin. */
.pg-game-card, .pg-content-card, .pg-sidebar-card, .pg-archive-genres,
.pg-browse-group, .pg-game-facts-card, .pg-archive-taxonomy,
.pgs-game-card, .pgs-public-section, .pgs-filter-panel, .pgs-browse-group,
.pgs-empty-state, .pg-empty {
  border-color: var(--pg-line);
  background: var(--pg-surface);
}
.pg-game-card:hover, .pgs-game-card:hover { border-color: #FF2E6366; background: #191423; }
.pg-game-card-media, .pgs-game-card-image-wrap, .pgs-game-card-image {
  background: linear-gradient(135deg, #FF2E6318, #2A1B4577), var(--pg-surface);
}
/* Fit every visible game image inside its frame without cutting off artwork. */
.pg-game-card .pg-game-card-media, .pgs-game-card .pgs-game-card-image { display: block; aspect-ratio: auto; min-height: 0; }
.pg-game-card .pg-game-card-media > img, .pgs-game-card .pgs-game-card-image > img {
  display: block; width: 100%; height: auto; max-height: none; aspect-ratio: auto; object-fit: contain; object-position: center;
  transform: none;
}
.pg-game-card-media > .pg-card-placeholder, .pgs-game-card-image > .pgs-card-placeholder { display: grid; width: 100%; height: auto; min-height: 120px; aspect-ratio: 1.6; place-items: center; }
.pg-game-card:hover .pg-game-card-media img, .pgs-game-card:hover .pgs-game-card-image img { transform: none; }
.pg-game-cover > img, .pg-single-hero .pg-game-cover > img, .pgs-cover > img {
  display: block; width: 100%; height: auto; max-height: 440px; aspect-ratio: auto;
  object-fit: contain; object-position: center;
}
.pg-featured-carousel { min-height: 0; }
.pg-feature-slide.is-active { position: relative; inset: auto; }
.pg-feature-image { position: relative; inset: auto; display: block; width: 100%; height: auto; object-fit: contain; object-position: center; }
.pg-feature-image--fallback { display: grid; min-height: 300px; aspect-ratio: 16 / 9; place-items: center; }
.pg-carousel-arrow { top: var(--pg-feature-nav-top, 50%); }
.pg-feature-slide--wide .pg-feature-content { position: relative; inset: auto; max-width: none; padding: 24px 64px 55px; background: var(--pg-surface); }
.pg-feature-slide--portrait.is-active { display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: center; gap: 20px; padding: 24px; background: var(--pg-surface); }
.pg-feature-slide--portrait .pg-feature-image { width: auto; height: auto; max-width: min(35vw, 340px); max-height: 520px; }
.pg-feature-slide--portrait .pg-feature-content { position: relative; inset: auto; min-width: 0; max-width: none; padding: 30px 40px 44px 0; }
.pg-feature-slide--portrait .pg-feature-content h1 { font-size: clamp(1.8rem, 3vw, 3.2rem); }
.pg-screen-thumb img, .pg-screen-thumbnails--grid .pg-screen-thumb img,
.pgs-gallery-grid .pgs-gallery-thumb img, .pgs-public-gallery-grid .pgs-gallery-open img,
.pg-screenshot-item img, .pg-screenshot-content figure img, .pg-screenshot-content img {
  object-fit: contain; object-position: center; transform: none;
}
.pg-screen-thumbnails--grid .pg-screen-thumb:hover img, .pg-screen-thumb:hover img,
.pgs-gallery-grid .pgs-gallery-thumb:hover img, .pgs-public-gallery-grid .pgs-gallery-open:hover img,
.pg-screenshot-item:hover img, .pg-screenshot-content figure:hover img { transform: none; }
.pgs-rich-content img, .entry-content img { object-fit: contain; }
.pg-game-card-title a:hover, .pgs-game-card-body h2 a:hover,
.pgs-game-card-body h3 a:hover { color: var(--pg-secondary); }
.pg-game-facts .pg-fact, .pgs-meta-group {
  background: var(--pg-surface-2);
  border-color: var(--pg-line);
}
.pg-tax-chip, .pg-heading-chip, .pgs-meta-group a {
  border-color: var(--pg-line);
  background: var(--pg-surface-2);
  color: #DDCFE8;
}
.pg-tax-chip--status, .pg-heading-chip--status { color: var(--pg-secondary); background: #FF6B9D12; border-color: #FF6B9D30; }
.pg-status--completed, .pgs-meta-group a.pg-status--completed {
  color: var(--pg-mint); background: #34D39912; border-color: #34D39940;
}
.pg-status--development, .pgs-meta-group a.pg-status--development {
  color: var(--pg-amber); background: #FBBF2412; border-color: #FBBF2440;
}
.pg-genre-tag, .pgs-game-genres a {
  color: var(--pg-secondary) !important; background: #FF6B9D10; border-color: #FF6B9D33;
}
.pg-genre-tag:hover, .pgs-game-genres a:hover { color: #FFFFFF !important; background: #FF2E6329; border-color: var(--pg-pink); }
.pg-eyebrow, .pgs-eyebrow, .pg-feature-kicker { color: var(--pg-secondary); }
.pg-feature-kicker { background: #1C1629df; border-color: #FF6B9D4d; }
.pg-content-card a:not(.pg-button), .pg-fact-value a, .pgs-rich-content a {
  color: var(--pg-secondary); text-decoration-color: #FF6B9D55;
}
.pg-card-excerpt, .pg-sidebar-note, .pgs-rich-content, .pgs-gallery-hint,
.pgs-support-copy > p:not(.pgs-eyebrow), .pg-support-ad-copy > p:last-of-type {
  color: var(--pg-muted);
}

.pg-button, .pg-support-ad-button, .pgs-support-button,
.pgs-filter-submit, .pgs-archive-search button {
  color: #FFFFFF; background: var(--pg-pink); border-color: #FF2E6355;
  box-shadow: 0 7px 21px #FF2E6322;
}
.pg-button:hover, .pg-support-ad-button:hover, .pgs-support-button:hover,
.pgs-filter-submit:hover, .pgs-archive-search button:hover {
  background: var(--pg-pink-hover); color: #FFFFFF;
}
.pg-button--soft { background: var(--pg-surface-2); border-color: var(--pg-line); color: #FFFFFF; box-shadow: none; }
.pg-button--soft:hover { background: #2A1B45; border-color: #FF6B9D66; }
.pg-icon-button, .pg-menu-toggle, .pg-game-count, .pg-new-link,
.pg-search-panel, .pg-header-search input, .pg-search-popover,
.pg-archive-tools, .pgs-archive-search, .pg-see-all {
  background: var(--pg-surface); border-color: var(--pg-line);
}
.pg-icon-button:hover, .pg-menu-toggle:hover { border-color: #FF2E6370; color: var(--pg-secondary); }
.pg-filter-field, .pgs-filter-field { background: var(--pg-surface-2) !important; border-color: var(--pg-line) !important; }
.pg-filter-field select, .pgs-filter-field select { background-color: var(--pg-surface-2); color: #FFFFFF; border-color: var(--pg-line); }
.pg-filter-field select option, .pgs-filter-field select option { background: var(--pg-surface-2); color: #FFFFFF; }
/* Header search is an absolutely positioned popover; keep only inline/catalog
   search forms as positioning contexts for their autocomplete results. */
.pg-game-search-form:not(.pg-search-popover) { position: relative; z-index: 20; overflow: visible; }
.pg-game-search-suggestions {
  position: absolute; z-index: 1000; top: calc(100% + 8px); right: 0; left: 0;
  display: grid; max-height: min(58vh, 390px); overflow-y: auto; gap: 5px; padding: 8px;
  border: 1px solid var(--pg-line); border-radius: 14px; background: var(--pg-surface);
  box-shadow: 0 18px 50px #0009;
}
.pg-game-search-suggestions[hidden] { display: none; }
.pg-game-search-option {
  display: grid; grid-template-columns: 58px minmax(0, 1fr); min-height: 54px; align-items: center; gap: 11px;
  padding: 6px; border: 1px solid transparent; border-radius: 10px; color: var(--pg-text); text-decoration: none;
  font-size: 13px; font-weight: 750; line-height: 1.35;
}
.pg-game-search-option:hover, .pg-game-search-option:focus-visible { outline: none; border-color: #FF6B9D55; background: var(--pg-surface-2); color: #FFFFFF; }
.pg-game-search-option img { display: block; width: 58px; height: 42px; border-radius: 7px; background: var(--pg-bg); object-fit: contain; }
.pg-game-search-option span { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.pg-game-search-empty { padding: 13px 12px; color: var(--pg-muted); font-size: 12px; }
.pgs-preview-more, #game-results > .pg-catalog-more {
  display: flex; width: fit-content; min-height: 44px; align-items: center; justify-content: center; gap: 8px;
  margin: 22px auto 0; padding: 10px 18px; border: 1px solid #FF6B9D55; border-radius: 12px;
  background: var(--pg-surface); color: var(--pg-secondary); font-size: 13px; font-weight: 800; text-decoration: none;
}
.pgs-preview-more:hover, #game-results > .pg-catalog-more:hover { border-color: var(--pg-pink); background: var(--pg-surface-2); color: #FFFFFF; }
.pg-archive-taxonomy .pg-browse-chips a, .pgs-term-tiles a {
  background: var(--pg-surface-2); border-color: var(--pg-line); color: var(--pg-muted);
}
.pg-archive-taxonomy .pg-browse-chips a:hover, .pgs-term-tiles a:hover {
  color: #FFFFFF; background: #FF2E6314; border-color: #FF2E6366;
}
.pgs-filter-heading > a, .pgs-browse-group-heading > a,
.pg-archive-taxonomy .pg-browse-chips a small { color: var(--pg-secondary); }
.pg-pagination .page-numbers, .pgs-pagination .page-numbers { background: var(--pg-surface); border-color: var(--pg-line); }
.pg-pagination .current, .pg-pagination a:hover,
.pgs-pagination .current, .pgs-pagination a:hover { background: var(--pg-pink); border-color: var(--pg-pink); color: #FFFFFF; }

.pg-like-button, .pgs-like-button, .pg-like-button.is-liked,
.pgs-like-button.is-liked, .pgs-like-button--hero {
  background: var(--pg-pink); color: #FFFFFF; border-color: #FF6B9D66;
  box-shadow: 0 5px 17px #FF2E6333;
}
.pg-like-button:hover:not(:disabled), .pgs-like-button:hover:not(:disabled) { background: var(--pg-pink-hover); border-color: var(--pg-secondary); }
.pg-like-heart, .pgs-like-heart {
  display: inline-flex; align-items: center; justify-content: center;
  width: 16px; height: 16px; flex: 0 0 16px; line-height: 1; color: #FFFFFF;
}
.pg-like-heart svg, .pgs-like-heart svg, svg.pg-like-heart, svg.pgs-like-heart {
  display: block; width: 16px; height: 16px; max-width: none; flex-shrink: 0; fill: currentColor;
}
.pg-like-button, .pgs-like-button { align-items: center; min-width: 44px; min-height: 44px; font-variant-numeric: tabular-nums; line-height: 1; white-space: nowrap; }
.pg-like-button [data-like-count], .pgs-like-button [data-pgs-like-count] { line-height: 1; }
.pg-game-card .pg-like-button--card, .pgs-game-card .pgs-like-button--card { min-width: 44px; min-height: 44px; padding: 6px 9px; }

/* Small host icons stay inline even when the editor applies broad image rules. */
.pg-link-icon, img.pg-link-icon, .pg-link-icon img {
  display: inline-block !important; width: 16px !important; height: 16px !important;
  min-width: 16px; max-width: 16px !important; max-height: 16px !important;
  margin: 0 5px 0 0 !important; padding: 0; border: 0 !important; border-radius: 3px;
  object-fit: contain; vertical-align: -.16em; background: transparent !important; box-shadow: none !important;
}
.pg-link-icon img { margin: 0 !important; }
.pg-domain-icon, .pgs-download-icon { background: var(--pg-surface-2); border-color: var(--pg-line); }
.pg-download-link, .pgs-download-card {
  background: linear-gradient(110deg, #FF2E630d, #2A1B452c), var(--pg-surface-2);
  border-color: #FF6B9D30;
}
.pg-download-link:hover, .pgs-download-card:hover { background: #FF2E6314; border-color: var(--pg-pink); }
.pg-download-arrow, .pgs-download-arrow { color: var(--pg-secondary); }
.pg-lightbox, .pgs-lightbox { background: #0B0914f5; }
.pg-lightbox-close, .pg-lightbox-arrow,
.pgs-lightbox .pgs-lightbox-close, .pgs-lightbox .pgs-lightbox-arrow {
  background: #1C1629e6; border-color: #FF6B9D45; color: #FFFFFF;
}
.pg-lightbox-close:hover, .pg-lightbox-arrow:hover,
.pgs-lightbox .pgs-lightbox-close:hover, .pgs-lightbox .pgs-lightbox-arrow:hover { background: var(--pg-pink); }
.pg-lightbox-count, .pgs-lightbox-count { background: #1C1629df; border-color: var(--pg-line); color: #FFFFFF; }
.pg-mobile-bottom-nav, .pgs-mobile-sheet { background: var(--pg-surface); border-color: var(--pg-line); }
.pgs-mobile-nav-group h3 { color: var(--pg-muted); }
.pgs-mobile-nav-tiles a { background: var(--pg-surface-2); border-color: var(--pg-line); color: #FFFFFF; }
.pgs-mobile-nav-tiles a:hover { background: #FF2E6314; border-color: #FF2E6366; }
.pgs-mobile-nav-tiles--browse a > span { background: #FF6B9D15; color: var(--pg-secondary); }
.site-footer { background: var(--pg-surface); border-color: var(--pg-line); }

/* Compact desktop article with a soft cover-image backdrop and two useful rails. */
.pg-final-post {
  position: relative; isolation: isolate; padding: 1px 0 54px;
  background: radial-gradient(ellipse at 50% 0, #2A1B4577, transparent 850px), var(--pg-bg);
  font-size: 15px; line-height: 1.65;
}
.pg-final-backdrop { position: absolute; z-index: -1; inset: 0 0 auto; height: 650px; overflow: hidden; pointer-events: none; }
.pg-final-backdrop img { width: 100%; height: 100%; object-fit: cover; object-position: center 30%; opacity: .24; filter: saturate(.88); }
.pg-final-backdrop::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, #0B091430, #0B09149e 42%, #0B0914 100%); }
.pg-final-wrap { position: relative; width: min(1440px, calc(100% - 40px)); margin-inline: auto; }
.pg-final-layout {
  display: grid; grid-template-columns: 220px minmax(0, 1fr) 240px;
  grid-template-areas: "support main related"; align-items: start; gap: 20px;
}
.pg-final-layout--no-support { grid-template-columns: minmax(0, 1fr) 240px; grid-template-areas: "main related"; }
.pg-final-layout--no-related { grid-template-columns: 220px minmax(0, 1fr); grid-template-areas: "support main"; }
.pg-final-layout--no-support.pg-final-layout--no-related { grid-template-columns: minmax(0, 1fr); grid-template-areas: "main"; }
.pg-final-main { grid-area: main; min-width: 0; }
.pg-final-aside { min-width: 0; align-self: stretch; }
.pg-final-support-rail { grid-area: support; }
.pg-final-related-rail { grid-area: related; }
.pg-final-sidebar-stick { position: sticky; top: 100px; }
body.admin-bar .pg-final-sidebar-stick { top: 132px; }
.pg-final-post .pgs-breadcrumb, .pg-final-post .pg-breadcrumbs { padding: 18px 0; font-size: 11px; line-height: 1.45; }
.pg-final-post .pgs-breadcrumb [aria-current], .pg-final-post .pg-breadcrumbs [aria-current] { min-width: 0; overflow-wrap: anywhere; }
.pg-final-main .pg-final-hero {
  display: grid; grid-template-columns: 240px minmax(0, 1fr); align-items: center; gap: 18px;
  margin: 0 0 14px; padding: 18px; border: 1px solid var(--pg-line); border-radius: 18px;
  background: #15121Fea; box-shadow: 0 12px 32px #00000024;
}
.pg-final-hero .pg-game-heading, .pg-final-hero .pgs-game-heading { min-width: 0; padding: 0; }
.pg-final-main .pg-final-hero h1 { margin: 0 0 12px; font-size: clamp(1.45rem, 2.15vw, 2rem); line-height: 1.14; letter-spacing: -.035em; overflow-wrap: anywhere; }
.pg-final-hero .pgs-eyebrow, .pg-final-hero .pg-eyebrow { margin: 0 0 7px; font-size: 9px; }
.pg-final-hero .pgs-cover, .pg-final-hero .pg-game-cover { width: 100%; min-height: 0; margin: 0; border-color: var(--pg-line); border-radius: 13px; background: var(--pg-surface-2); box-shadow: none; }
.pg-final-hero .pgs-cover img, .pg-final-hero .pg-game-cover > img { display: block; width: 100%; height: auto; max-height: 250px; aspect-ratio: auto; object-fit: contain; }
.pg-final-hero .pgs-cover-placeholder, .pg-final-hero .pg-game-cover-placeholder { min-height: 180px; font-size: 60px; }
.pg-final-hero .pgs-like-button--hero, .pg-final-hero .pg-like-button--cover { top: 9px; right: 9px; min-height: 44px; padding: 6px 9px; gap: 5px; font-size: 11px; }
.pg-final-hero .pgs-meta-strip { display: flex; gap: 7px; margin: 10px 0 0; }
.pg-final-hero .pgs-meta-group { padding: 7px 8px; border-radius: 10px; }
.pg-final-hero .pgs-meta-group > span { margin-bottom: 4px; font-size: 8px; letter-spacing: .08em; }
.pg-final-hero .pgs-meta-group a { min-height: 25px; padding: 4px 7px; font-size: 10px; }
.pg-final-hero .pg-heading-chip { min-height: 28px; padding: 5px 9px; font-size: 11px; }
.pg-final-hero .pg-single-hero-actions { gap: 7px; margin: 13px 0 0; }
.pg-final-hero .pg-button { min-height: 37px; padding: 8px 12px; border-radius: 10px; font-size: 12px; }
.pg-final-main .pg-game-tabs, .pg-final-jump {
  position: static; display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; padding: 8px;
  border: 1px solid var(--pg-line); border-radius: 13px; background: var(--pg-surface); box-shadow: none;
}
.pg-final-main .pg-game-tabs a, .pg-final-jump a { min-height: 34px; padding: 7px 10px; border-radius: 9px; color: var(--pg-muted); background: var(--pg-surface-2); font-size: 11px; }
.pg-final-main .pg-game-tabs a:hover, .pg-final-jump a:hover { background: #FF2E6317; border-color: #FF2E6350; color: var(--pg-secondary); }
.pg-final-sections { gap: 14px; }
.pg-final-main .pg-content-card, .pg-final-main .pgs-public-section { margin: 0 0 14px; padding: 20px; border-radius: 17px; box-shadow: 0 8px 25px #00000016; }
.pg-final-main .pgs-game-sections > .pgs-public-section { margin: 0; }
.pg-final-main .pg-card-heading, .pg-final-main .pgs-section-heading { margin-bottom: 13px; gap: 10px; }
.pg-final-main .pg-content-card h2, .pg-final-main .pgs-public-section h2 { margin-bottom: 12px; font-size: 1.2rem; line-height: 1.25; }
.pg-final-main .pg-card-heading h2, .pg-final-main .pgs-section-heading h2 { margin: 0; }
.pg-final-main .pg-eyebrow, .pg-final-main .pgs-eyebrow { font-size: 9px; }
.pg-final-main .entry-content, .pg-final-main .pgs-rich-content { font-size: 15px; line-height: 1.7; overflow-wrap: break-word; }
.pg-final-main .entry-content > h1, .pg-final-main .pgs-rich-content > h1 { font-size: 1.55rem; line-height: 1.25; }
.pg-final-main .entry-content h2, .pg-final-main .pgs-rich-content h2 { font-size: 1.25rem; }
.pg-final-main .entry-content h3, .pg-final-main .pgs-rich-content h3 { font-size: 1.1rem; }
.pg-final-main .entry-content table, .pg-final-main .pgs-rich-content table { max-width: 100%; }
.pg-final-main .pg-game-facts { gap: 8px; margin: 0; }
.pg-final-main .pg-fact { padding: 10px 11px; border-radius: 11px; }
.pg-final-main .pg-fact-label { font-size: 9px; }
.pg-final-main .pg-fact-value { margin: 0; font-size: 12px; }
.pg-final-main .pgs-gallery-grid, .pg-final-main .pg-screen-thumbnails--grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.pg-final-main .pgs-gallery-thumb, .pg-final-main .pg-screen-thumbnails--grid .pg-screen-thumb { aspect-ratio: auto; border-radius: 10px; background: var(--pg-bg); border-color: var(--pg-line); }
.pg-final-main .pgs-gallery-thumb img, .pg-final-main .pg-screen-thumbnails--grid .pg-screen-thumb img { display: block; width: 100%; height: auto; aspect-ratio: auto; opacity: 1; }
.pgs-gallery-grid, .pg-screen-thumbnails--grid { align-items: start; }
.pgs-gallery-grid .pgs-gallery-thumb, .pg-screen-thumbnails--grid .pg-screen-thumb { aspect-ratio: auto; }
.pgs-gallery-grid .pgs-gallery-thumb img, .pg-screen-thumbnails--grid .pg-screen-thumb img { display: block; width: 100%; height: auto; aspect-ratio: auto; }
.pg-final-main .pgs-gallery-hint { max-width: 140px; font-size: 10px; }
.pg-final-main .pgs-game-downloads .pgs-download-grid { grid-template-columns: 1fr; }
.pg-final-main .pgs-download-card, .pg-final-main .pg-download-link { min-height: 60px; padding-block: 10px; }

/* Quiet support panel remains with the article on wide screens. */
.pg-support-ad, .pgs-support-ad {
  background: radial-gradient(ellipse at 12% 40%, #FF2E631f, transparent 65%), var(--pg-surface);
  border-color: #FF6B9D40; box-shadow: 0 12px 30px #00000020;
}
.pgs-support-art, .pg-support-ad-art { background: radial-gradient(circle at 50% 30%, #FF6B9D1a, #2A1B4533); border-color: var(--pg-line); }
.pg-support-heart, .pgs-support-art > span { color: var(--pg-secondary); }
.pg-final-support-rail .pgs-support-ad, .pg-final-support-rail .pg-support-ad {
  display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; max-width: none;
  gap: 14px; margin: 0; padding: 17px; border-radius: 18px; text-align: center;
}
.pg-final-support-rail .pgs-support-art, .pg-final-support-rail .pg-support-ad-art { width: 100%; min-height: 156px; border-radius: 13px; }
.pg-final-support-rail .pgs-support-art img, .pg-final-support-rail .pg-support-ad-art img { width: 100%; height: 156px; border-radius: 10px; object-fit: contain; }
.pg-final-support-rail .pgs-support-copy h2, .pg-final-support-rail .pg-support-ad-copy h2 { font-size: 1.1rem; line-height: 1.3; }
.pg-final-support-rail .pgs-support-copy > p:not(.pgs-eyebrow), .pg-final-support-rail .pg-support-ad-copy > p:last-of-type { margin: 9px 0 0; font-size: 12px; line-height: 1.65; }
.pg-final-support-rail .pgs-eyebrow, .pg-final-support-rail .pg-eyebrow { justify-content: center; font-size: 8px; letter-spacing: .1em; }
.pg-final-support-rail .pgs-support-button, .pg-final-support-rail .pg-support-ad-button { grid-column: auto; width: 100%; justify-self: stretch; min-height: 40px; margin: 0; border-radius: 10px; }

.pg-final-related { padding: 17px; border: 1px solid var(--pg-line); border-radius: 18px; background: #15121Fef; box-shadow: 0 12px 30px #00000020; }
.pg-final-related > h2, .pg-final-related-title { display: flex; align-items: center; gap: 8px; margin: 0 0 15px; color: #FFFFFF; font-size: 15px; font-weight: 850; line-height: 1.3; }
.pg-final-related > h2 svg, .pg-final-related-title svg { width: 19px; height: 19px; flex: 0 0 19px; color: var(--pg-secondary); }
.pg-final-related-list { display: grid; gap: 12px; }
.pg-final-related-item { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 10px; padding: 0 0 12px; border-bottom: 1px solid var(--pg-line); color: #FFFFFF; }
.pg-final-related-item:last-child { padding-bottom: 0; border-bottom: 0; }
.pg-final-related-cover { display: block; width: 64px; height: 48px; overflow: hidden; border-radius: 9px; background: var(--pg-surface-2); object-fit: cover; object-position: center; }
.pg-final-related-cover img { display: block; width: 100%; height: auto; object-fit: contain; object-position: center; }
.pg-final-related-item > img.pg-final-related-cover { width: 64px; height: 48px; object-fit: cover; object-position: center; }
.pg-final-related-item strong, .pg-final-related-item h3 { display: block; margin: 0; color: #FFFFFF; font-size: 11px; font-weight: 750; line-height: 1.45; overflow-wrap: anywhere; }
.pg-final-related-body { display: block; min-width: 0; }
.pg-final-related-item:hover strong, .pg-final-related-item:hover h3 { color: var(--pg-secondary); }
.pg-final-related-meta, .pg-final-related-item small { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-top: 5px; color: var(--pg-muted); font-size: 10px; line-height: 1.4; }
.pg-final-related-meta > span { padding: 2px 5px; border: 1px solid var(--pg-line); border-radius: 5px; }
.pg-final-related-item .pg-tax-chip { padding: 3px 6px; font-size: 9px; }
.pg-final-related-likes { color: var(--pg-secondary); white-space: nowrap; }

/* The article's full-width related catalog follows both desktop side rails. */
.pg-related-grid-section {
  margin-top: 28px; padding: 22px; border: 1px solid var(--pg-line); border-radius: 18px;
  background: var(--pg-surface); scroll-margin-top: 110px;
}
.pg-related-grid-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.pg-related-grid-heading h2 { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 1.3rem; line-height: 1.3; letter-spacing: -.025em; }
.pg-related-grid-heading h2 svg { display: block; width: 20px; height: 20px; flex: 0 0 20px; color: var(--pg-secondary); }
.pg-related-grid-heading p { margin: 5px 0 0; color: var(--pg-muted); font-size: 12px; line-height: 1.5; }
.pg-related-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 18px; }
.pg-related-grid > article, .pg-related-grid > .pg-game-card, .pg-related-grid > .pgs-game-card { min-width: 0; height: auto; }
.pg-related-grid .pg-game-card-title { font-size: 14px; line-height: 1.4; }
.pg-related-grid .pg-game-card-media, .pg-related-grid .pgs-game-card-image { aspect-ratio: auto; }
.pg-related-pages { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; margin: 22px 0 0; }
.pg-related-page {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  min-height: 42px; padding: 9px 16px; border: 1px solid var(--pg-line); border-radius: 10px;
  color: var(--pg-text); background: var(--pg-surface-2); font-size: 12px; font-weight: 750;
  line-height: 1.3; text-decoration: none; transition: background .18s ease, border-color .18s ease;
}
.pg-related-page:hover { color: #FFFFFF; border-color: var(--pg-pink); background: #FF2E6318; }
.pg-related-page:focus-visible { outline: 2px solid var(--pg-secondary); outline-offset: 3px; }
.pg-related-page[aria-disabled="true"], .pg-related-page:disabled { opacity: .45; cursor: default; }

/* The same card rhythm is used by home, search, and the game library. */
.pg-game-grid, .pgs-card-grid, .pg-home-section .pg-game-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 18px; }
.pg-game-grid > article, .pgs-card-grid > article { min-width: 0; }
.pg-catalog-more {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  width: fit-content; min-width: 150px; min-height: 44px; margin: 22px auto 0; padding: 10px 19px;
  border: 1px solid #FF6B9D66; border-radius: 11px; background: var(--pg-pink); color: #FFFFFF;
  font: inherit; font-size: 13px; font-weight: 800; line-height: 1.35; text-align: center;
  cursor: pointer; box-shadow: 0 6px 18px #FF2E6322; transition: background .18s ease, border-color .18s ease;
}
.pg-catalog-more:hover:not(:disabled) { background: var(--pg-pink-hover); border-color: var(--pg-secondary); }
.pg-catalog-more:focus-visible { outline: 2px solid var(--pg-secondary); outline-offset: 3px; }
.pg-catalog-more:disabled, .pg-catalog-more[aria-disabled="true"] { opacity: .65; cursor: wait; }
.pg-catalog-status { display: block; margin: 12px 0 0; min-height: 20px; color: var(--pg-muted); font-size: 12px; line-height: 1.5; text-align: center; }
.pg-catalog-enhanced [data-pg-page-links] { display: none; }
[data-pg-catalog-sentinel] { display: block; height: 1px; }
.pg-catalog-pagination { margin-top: 20px; text-align: center; }
.pg-catalog-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; }
.pg-catalog-pagination .page-numbers {
  display: inline-flex; align-items: center; justify-content: center; min-width: 39px; min-height: 39px;
  padding: 7px 11px; border: 1px solid var(--pg-line); border-radius: 9px;
  background: var(--pg-surface); color: var(--pg-text); font-size: 12px;
}
.pg-catalog-pagination .page-numbers.current, .pg-catalog-pagination a.page-numbers:hover { background: var(--pg-pink); border-color: var(--pg-pink); color: #FFFFFF; }
.pg-catalog-more[hidden], .pg-catalog-status[hidden], .pg-catalog-pagination[hidden] { display: none; }

/* Homepage previews remain compact; the archive contains the complete catalog. */
.pg-home-browse-library .pg-browse-groups { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 12px; }
.pg-home-browse-library .pg-browse-group { min-width: 0; padding: 17px; border: 1px solid var(--pg-line); border-radius: 16px; background: var(--pg-surface); }
.pg-home-browse-library .pg-browse-group h3 { margin-bottom: 11px; }
.pg-home-browse-library .pg-browse-chips { align-items: center; gap: 7px; }
.pg-home-browse-library .pg-browse-chips > a { min-width: 0; max-width: 100%; gap: 7px; padding: 7px 9px; font-size: 12px; }
.pg-home-browse-library .pg-browse-platform-label { display: inline-flex; min-width: 0; align-items: center; gap: 6px; line-height: 1.35; }
.pg-home-browse-library .pg-browse-platform-label .pg-platform-icon { flex: 0 0 17px; width: 17px; height: 17px; }
.pg-home-browse-library .pg-browse-chips small { flex-shrink: 0; }

@media (min-width: 1021px) {
  .pg-home-browse-library .pg-browse-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
  .pgs-results-first .pgs-browse-groups, .pg-archive-browse-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 12px; }
  .pgs-results-first .pgs-browse-group, .pg-archive-taxonomy { align-self: start; min-height: 0; height: auto; }
  .pgs-results-first .pgs-browse-group[data-taxonomy="genre"], .pg-archive-taxonomy[data-taxonomy="genre"] { grid-column: 1 / -1; }
  .pgs-results-first .pgs-browse-group .pgs-term-tiles, .pg-archive-taxonomy .pg-browse-chips { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pgs-results-first .pgs-browse-group[data-taxonomy="genre"] .pgs-term-tiles, .pg-archive-taxonomy[data-taxonomy="genre"] .pg-browse-chips { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .pgs-results-first .pgs-filter-panel { padding: 16px; }
  .pgs-results-first .pgs-filter-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: start; gap: 8px; }
}

@media (max-width: 1200px) and (min-width: 1021px) {
  .pg-final-layout { grid-template-columns: 190px minmax(0, 1fr) 210px; gap: 14px; }
  .pg-final-layout--no-support { grid-template-columns: minmax(0, 1fr) 210px; }
  .pg-final-layout--no-related { grid-template-columns: 190px minmax(0, 1fr); }
  .pg-final-layout--no-support.pg-final-layout--no-related { grid-template-columns: minmax(0, 1fr); }
  .pg-final-main .pg-final-hero { grid-template-columns: 210px minmax(0, 1fr); gap: 13px; padding: 15px; }
  .pg-final-hero .pgs-cover img, .pg-final-hero .pg-game-cover > img { height: auto; max-height: 250px; }
  .pg-final-hero .pgs-meta-strip { gap: 5px; }
  .pg-final-hero .pgs-meta-group { padding: 6px; }
  .pg-final-main .pgs-gallery-grid, .pg-final-main .pg-screen-thumbnails--grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pg-final-support-rail .pgs-support-ad { padding: 13px; }
  .pg-final-related { padding: 13px; }
}

@media (max-width: 1020px) {
  .pg-final-layout, .pg-final-layout--no-support, .pg-final-layout--no-related,
  .pg-final-layout--no-support.pg-final-layout--no-related {
    grid-template-columns: minmax(0, 1fr); grid-template-areas: "main" "support"; gap: 17px;
  }
  .pg-final-layout--no-support { grid-template-areas: "main"; }
  .pg-final-layout--no-related { grid-template-areas: "main" "support"; }
  .pg-final-layout--no-support.pg-final-layout--no-related { grid-template-areas: "main"; }
  .pg-final-sidebar-stick, body.admin-bar .pg-final-sidebar-stick { position: static; top: auto; }
  .pg-final-related-rail { display: none; }
  .pg-final-main .pg-final-hero { grid-template-columns: 240px minmax(0, 1fr); }
  .pg-related-grid, .pg-game-grid, .pgs-card-grid, .pg-home-section .pg-game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .pg-final-main .pgs-gallery-grid, .pg-final-main .pg-screen-thumbnails--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pg-final-support-rail .pgs-support-ad, .pg-final-support-rail .pg-support-ad { grid-template-columns: 130px minmax(0, 1fr); gap: 16px; padding: 16px; text-align: left; }
  .pg-final-support-rail .pgs-support-art, .pg-final-support-rail .pg-support-ad-art { grid-row: span 2; min-height: 122px; }
  .pg-final-support-rail .pgs-support-art img, .pg-final-support-rail .pg-support-ad-art img { height: 122px; }
  .pg-final-support-rail .pgs-eyebrow, .pg-final-support-rail .pg-eyebrow { justify-content: flex-start; }
  .pg-final-support-rail .pgs-support-button, .pg-final-support-rail .pg-support-ad-button { grid-column: 2; width: fit-content; min-width: 120px; justify-self: start; }
  .pg-final-related-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 18px; }
  .pg-final-related-item:last-child { padding-bottom: 12px; border-bottom: 1px solid var(--pg-line); }
}

@media (max-width: 930px) {
  .site-header .pg-header-inner .pg-nav { background: var(--pg-surface); border-color: var(--pg-line); }
  .pg-nav .pg-nav-inner > ul > li > a, .pg-nav .pg-nav-inner > div > ul > li > a { background: var(--pg-surface-2); border-color: var(--pg-line); color: #FFFFFF; }
}

@media (max-width: 640px) {
  .pg-feature-slide.is-active, .pg-feature-slide--portrait.is-active { display: block; padding: 0; }
  .pg-feature-slide .pg-feature-image { width: 100%; height: auto; max-width: none; max-height: none; }
  .pg-feature-slide .pg-feature-content { position: relative; inset: auto; max-width: none; padding: 16px 18px 50px; background: var(--pg-surface); }
  .pg-feature-slide .pg-feature-content h1 { font-size: clamp(1.45rem, 6.5vw, 2rem); }
  .pg-feature-slide .pg-feature-actions { margin-top: 14px; }
  .pg-feature-image--fallback { min-height: 200px; }
  .pg-header-inner { gap: 10px; }
  .pg-brand { gap: 7px; }
  .pg-brand-mark { width: 36px; height: 36px; }
  .pg-brand-name { font-size: 1rem; }
  .pg-header-tools { gap: 6px; }
  .pg-game-count { min-height: 34px; gap: 4px; padding: 0 7px; }
  .pg-game-count > span:last-child { display: none; }
  .pg-game-count svg { width: 16px; height: 16px; flex-basis: 16px; }
  .pg-final-post { padding-bottom: 28px; font-size: 14px; }
  .pg-final-backdrop { height: 470px; }
  .pg-final-backdrop img { opacity: .17; object-position: 62% top; }
  .pg-final-wrap { width: calc(100% - 24px); }
  .pg-final-post .pgs-breadcrumb, .pg-final-post .pg-breadcrumbs { padding: 13px 0; font-size: 10px; }
  .pg-final-main .pg-final-hero { grid-template-columns: minmax(0, 1fr); gap: 13px; padding: 13px; border-radius: 16px; background: #15121Fee; }
  .pg-final-hero .pgs-cover, .pg-final-hero .pg-game-cover { grid-row: 1; }
  .pg-final-hero .pgs-cover img, .pg-final-hero .pg-game-cover > img { height: auto; max-height: 260px; aspect-ratio: auto; object-fit: contain; }
  .pg-final-hero .pgs-game-heading, .pg-final-hero .pg-game-heading { grid-row: 2; }
  .pg-final-main .pg-final-hero h1 { margin-bottom: 10px; font-size: clamp(1.4rem, 5.8vw, 1.8rem); line-height: 1.2; }
  .pg-final-hero .pgs-meta-strip { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .pg-final-hero .pgs-meta-group { padding: 8px; }
  .pg-final-hero .pgs-meta-group a { min-height: 28px; }
  .pg-final-jump { gap: 5px; margin-bottom: 11px; padding: 6px; }
  .pg-final-jump a { flex: 1 1 auto; justify-content: center; min-height: 34px; padding: 6px 7px; font-size: 10px; }
  .pg-final-main .pg-content-card, .pg-final-main .pgs-public-section { padding: 14px; border-radius: 15px; }
  .pg-final-sections { gap: 11px; }
  .pg-final-main .pg-content-card h2, .pg-final-main .pgs-public-section h2 { font-size: 1.05rem; }
  .pg-final-main .entry-content, .pg-final-main .pgs-rich-content { font-size: 14px; line-height: 1.7; }
  .pg-final-main .pgs-gallery-grid, .pg-final-main .pg-screen-thumbnails--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .pg-final-main .pgs-gallery-hint { max-width: 104px; font-size: 9px; }
  .pg-final-support-rail .pgs-support-ad, .pg-final-support-rail .pg-support-ad { grid-template-columns: 84px minmax(0, 1fr); gap: 10px; padding: 13px; border-radius: 16px; }
  .pg-final-support-rail .pgs-support-art, .pg-final-support-rail .pg-support-ad-art { min-height: 98px; }
  .pg-final-support-rail .pgs-support-art img, .pg-final-support-rail .pg-support-ad-art img { height: 98px; }
  .pg-final-support-rail .pgs-support-copy h2, .pg-final-support-rail .pg-support-ad-copy h2 { font-size: 1rem; }
  .pg-final-support-rail .pgs-support-copy > p:not(.pgs-eyebrow), .pg-final-support-rail .pg-support-ad-copy > p:last-of-type { margin-top: 5px; font-size: 11px; line-height: 1.55; }
  .pg-final-related { padding: 14px; border-radius: 16px; }
  .pg-final-related-list { gap: 11px; }
  .pg-final-related-item { grid-template-columns: 46px minmax(0, 1fr); gap: 8px; }
  .pg-final-related-cover { width: 46px; height: auto; }
  .pg-final-related-item strong, .pg-final-related-item h3 { font-size: 10px; }
  .pg-final-related-meta, .pg-final-related-item small { font-size: 9px; }
  .pg-related-grid-section { margin-top: 18px; padding: 14px; border-radius: 16px; scroll-margin-top: 85px; }
  .pg-related-grid-heading { gap: 9px; margin-bottom: 13px; }
  .pg-related-grid-heading h2 { font-size: 1.1rem; }
  .pg-related-grid, .pg-game-grid, .pgs-card-grid, .pg-home-section .pg-game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .pg-related-grid .pg-game-card-media, .pg-related-grid .pgs-game-card-image { aspect-ratio: auto; }
  .pg-game-card .pg-game-card-body, .pgs-game-card .pgs-game-card-body { padding: 10px; }
  .pg-game-card .pg-game-card-title, .pg-related-grid .pg-game-card-title,
  .pgs-game-card .pgs-game-card-body h2, .pgs-game-card .pgs-game-card-body h3 { min-width: 0; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
  .pg-game-card .pg-card-meta, .pgs-game-card .pgs-meta-strip { min-width: 0; flex-wrap: wrap; gap: 5px; }
  .pg-game-card .pg-tax-chip, .pgs-game-card .pgs-meta-group a { max-width: 100%; padding: 4px 6px; font-size: 10px; line-height: 1.35; white-space: normal; overflow-wrap: anywhere; }
  .pgs-game-card .pgs-meta-group { min-width: 0; max-width: 100%; }
  .pg-game-card .pg-like-button--card, .pgs-game-card .pgs-like-button--card { top: 6px; right: 6px; min-width: 44px; min-height: 44px; padding: 5px 8px; gap: 4px; font-size: 10px; }
  .pg-related-pages { gap: 8px; margin-top: 17px; }
  .pg-related-page { flex: 1 1 120px; min-height: 44px; font-size: 12px; }
  .pg-catalog-more { min-height: 44px; margin-top: 18px; }
  .pg-catalog-status { font-size: 11px; }
  .pg-like-heart, .pgs-like-heart { width: 14px; height: 14px; flex-basis: 14px; }
  .pg-like-heart svg, .pgs-like-heart svg, svg.pg-like-heart, svg.pgs-like-heart { width: 14px; height: 14px; }
}

@media (max-width: 390px) {
  .pg-shell.pg-header-inner { width: calc(100% - 18px); gap: 5px; }
  .pg-header-inner .pg-brand { gap: 5px; }
  .pg-header-inner .pg-brand-mark { width: 30px; height: 32px; }
  .pg-header-inner .pg-brand-name { font-size: .88rem; letter-spacing: -.04em; }
  .pg-header-inner .pg-header-tools { gap: 4px; }
  .pg-header-inner .pg-icon-button, .pg-header-inner .pg-menu-toggle { width: 30px; height: 33px; border-radius: 10px; }
  .pg-header-inner .pg-icon-button svg { width: 17px; height: 17px; }
  .pg-header-inner .pg-game-count { display: inline-flex !important; min-height: 33px; gap: 3px; padding: 0 5px; font-size: 10px; border-radius: 10px; }
  .pg-header-inner .pg-game-count strong { font-size: 10px; }
  .pg-header-inner .pg-game-count svg { width: 14px; height: 14px; flex-basis: 14px; }
  .pg-header-inner .pg-new-link { min-height: 33px; padding: 0 7px; gap: 5px; font-size: 10px; }
  .pg-header-inner .pg-new-dot { width: 7px; height: 7px; }
  .pg-final-wrap { width: calc(100% - 20px); }
  .pg-final-main .pg-final-hero h1 { font-size: 1.35rem; }
  .pg-related-grid, .pg-game-grid, .pgs-card-grid, .pg-home-section .pg-game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .pg-game-card .pg-game-card-body, .pgs-game-card .pgs-game-card-body { padding: 8px; }
  .pg-final-related-list { grid-template-columns: minmax(0, 1fr); }
  .pg-final-related-item strong, .pg-final-related-item h3 { font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .pg-final-post *, .pg-game-card, .pgs-game-card, .pg-like-button, .pgs-like-button { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* 2.4.3: keep catalog cards aligned and make the featured carousel stable. */
.pg-game-grid, .pgs-card-grid, .pg-home-section .pg-game-grid { align-items: stretch; }
.pg-game-grid > .pg-game-card, .pgs-card-grid > .pgs-game-card,
.pg-home-section .pg-game-grid > .pg-game-card {
  display: flex; height: 100%; flex-direction: column; min-width: 0;
}
.pg-game-card .pg-game-card-media, .pgs-game-card .pgs-game-card-image {
  display: grid; width: 100%; aspect-ratio: 16 / 10; place-items: center; overflow: hidden;
}
.pg-game-card .pg-game-card-media > img, .pgs-game-card .pgs-game-card-image > img {
  display: block; width: 100%; height: 100%; max-height: none; object-fit: contain; object-position: center;
}
.pg-game-card .pg-game-card-body, .pgs-game-card .pgs-game-card-body { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.pg-game-card .pg-card-more, .pgs-game-card .pgs-card-more { margin-top: auto; padding-top: 10px; }
.pgs-card-placeholder, .pg-game-card-media > .pg-card-placeholder { width: 100%; height: 100%; min-height: 0; aspect-ratio: auto; }

.pg-featured-carousel {
  min-height: clamp(390px, 41vw, 535px);
  transition: height .42s cubic-bezier(.2, .75, .25, 1);
}
.pg-featured-carousel > .pg-carousel-arrow { top: 50%; }
.pg-feature-content {
  display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: center;
  column-gap: 12px; row-gap: 12px;
}
.pg-feature-content .pg-feature-kicker { grid-column: 1; grid-row: 1; justify-self: start; margin: 0; }
.pg-feature-content h1 { grid-column: 1 / -1; grid-row: 2; }
.pg-feature-content .pg-feature-status { grid-column: 2; grid-row: 1; justify-self: start; margin: 0; }
.pg-feature-content .pg-feature-actions { grid-column: 1 / -1; grid-row: 3; margin-top: 0; }

.pg-lightbox img { transition: opacity .16s ease, transform .16s ease; }
.pg-lightbox img.is-changing { opacity: 0; transform: scale(.985); }

@media (max-width: 640px) {
  .pg-featured-carousel { min-height: 0; }
  .pg-feature-content { column-gap: 9px; row-gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .pg-featured-carousel, .pg-lightbox img { transition-duration: .01ms !important; }
}

/* 2.4.6: keep mobile metadata compact and expose all three game facts. */
@media (max-width: 680px) {
  .pg-final-hero .pgs-meta-strip { align-items: start; }
  .pg-final-hero .pgs-meta-group { align-self: start; height: auto; min-height: 0; }
  .pg-final-hero .pgs-meta-group:nth-child(n+3) { display: block !important; }
  .pgs-game-card-body .pgs-meta-group:nth-child(n+3) { display: block !important; }
}

/* 2.4.7: compact mobile facts, larger related-game previews, and a neon-noir palette. */
:root {
  --pg-bg: #0A0610;
  --pg-bg-soft: #130B1B;
  --pg-surface: #170F22;
  --pg-surface-2: #21152F;
  --pg-line: #3A2448;
  --pg-text: #FFF7FC;
  --pg-muted: #C2AFCB;
  --pg-pink: #FF3F88;
  --pg-pink-strong: #E91E63;
  --pg-pink-hover: #FF668F;
  --pg-secondary: #FF657E;
  --pg-lilac: #FF91AE;
  --pg-purple: #29133B;
  --pg-mint: #39DFA5;
  --pg-amber: #FFC857;
  --pgs-bg: var(--pg-bg);
  --pgs-surface: var(--pg-surface);
  --pgs-surface-2: var(--pg-surface-2);
  --pgs-line: var(--pg-line);
  --pgs-text: var(--pg-text);
  --pgs-muted: var(--pg-muted);
  --pgs-pink: var(--pg-pink);
  --pgs-hot: var(--pg-pink);
  --pgs-purple: var(--pg-secondary);
}
body {
  background:
    linear-gradient(#FF3F880C 1px, transparent 1px),
    linear-gradient(90deg, #FF657E08 1px, transparent 1px),
    radial-gradient(ellipse at 12% 0, #94184C2B, transparent 38rem),
    radial-gradient(ellipse at 95% 16%, #FF3F881C, transparent 36rem),
    var(--pg-bg);
  background-size: 8px 8px, 8px 8px, auto, auto, auto;
  color: var(--pg-text);
}
.pgs-site-main {
  --pgs-bg: var(--pg-bg);
  --pgs-surface: var(--pg-surface);
  --pgs-surface-2: var(--pg-surface-2);
  --pgs-line: var(--pg-line);
  --pgs-text: var(--pg-text);
  --pgs-muted: var(--pg-muted);
  --pgs-pink: var(--pg-pink);
  --pgs-hot: var(--pg-pink);
  --pgs-purple: var(--pg-secondary);
  background:
    linear-gradient(#FF3F880C 1px, transparent 1px),
    linear-gradient(90deg, #FF657E08 1px, transparent 1px),
    radial-gradient(ellipse at 8% 0, #94184C2B, transparent 38rem),
    radial-gradient(ellipse at 94% 18%, #FF3F881C, transparent 34rem),
    var(--pg-bg);
  background-size: 8px 8px, 8px 8px, auto, auto, auto;
  color: var(--pg-text);
}
.site-header { background: #080B14ED; border-color: var(--pg-line); }
.pg-final-post { background: radial-gradient(ellipse at 50% 0, #94184C26, transparent 850px), var(--pg-bg); }
.pg-final-backdrop::after { background: linear-gradient(180deg, #0A061030, #0A06109E 42%, #0A0610 100%); }
.pg-final-main .pg-final-hero { border-color: var(--pg-line); background: #170F22EF; }
.pg-game-card, .pg-content-card, .pg-sidebar-card, .pg-archive-genres,
.pg-browse-group, .pg-game-facts-card, .pg-archive-taxonomy,
.pgs-game-card, .pgs-public-section, .pgs-filter-panel, .pgs-browse-group,
.pgs-empty-state, .pg-empty, .pg-final-hero, .pg-final-related,
.pg-related-grid-section { border-color: var(--pg-line); background-color: var(--pg-surface); }
.pg-game-card:hover, .pgs-game-card:hover { border-color: #FF43A377; background-color: #24152F; box-shadow: 0 0 0 1px #FF3F881C, 0 12px 32px #C21B7930; }
.pg-final-related h2 svg, .pg-related-grid-heading h2 svg { color: var(--pg-pink); }
.pg-final-related-item { border-color: var(--pg-line); }
.pg-final-related-item:hover { border-color: #FF657E77; background: #FF3F880D; }
.pg-final-related-meta > .pg-related-type--engine { color: var(--pg-lilac); }
.pg-final-related-meta > .pg-related-type--genre { color: var(--pg-secondary); }
.pg-final-related-meta > .pg-related-type--platform { color: var(--pg-muted); }
a[data-platform-kind="windows"], .pgs-meta-group a[data-platform-kind="windows"] { color: #F1DDED; }
a[data-platform-kind="android"], .pgs-meta-group a[data-platform-kind="android"] { color: #3DDC84; }
a[data-platform-kind="mac"], .pgs-meta-group a[data-platform-kind="mac"] { color: #E2D8F4; }
a[data-platform-kind="linux"], .pgs-meta-group a[data-platform-kind="linux"] { color: #D8C2E2; }
.pgs-filter-submit:focus-visible, .pg-button:focus-visible, .pg-icon-button:focus-visible,
.pg-menu-toggle:focus-visible, .pg-final-related-item:focus-visible { outline-color: var(--pg-secondary); }

@media (max-width: 680px) {
  .pg-final-hero .pgs-meta-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  .pg-final-hero .pgs-meta-group { min-width: 0; align-self: stretch; }
  .pg-final-hero .pgs-meta-group:nth-child(3) { grid-column: 1 / -1; }
  .pg-final-hero .pgs-game-heading .pg-game-update-link {
    display: flex; width: 100%; min-height: 42px; justify-content: center; margin-top: 9px;
  }
  .pg-final-related { padding: 15px; }
  .pg-final-related-list { gap: 10px; }
  .pg-final-related-item { grid-template-columns: 78px minmax(0, 1fr); gap: 10px; align-items: center; }
  .pg-final-related-cover { display: block; width: 78px; height: 56px; aspect-ratio: 7 / 5; object-fit: cover; object-position: center; border: 1px solid var(--pg-line); border-radius: 9px; background: var(--pg-bg); }
  .pg-final-related-item strong, .pg-final-related-item h3 { font-size: 11px; line-height: 1.35; }
  .pg-final-related-meta, .pg-final-related-item small { font-size: 9px; }
}
@media (max-width: 390px) {
  .pg-final-related-item { grid-template-columns: 70px minmax(0, 1fr); gap: 8px; }
  .pg-final-related-cover { width: 70px; height: 52px; }
}

.pg-final-related-meta > .pg-related-type { padding: 2px 5px; border: 1px solid var(--pg-line); border-radius: 5px; }
.pg-final-related-meta > .pg-related-type--engine { color: #B89AF3; }
.pg-final-related-meta > .pg-related-type--genre { color: var(--pg-secondary); }
.pg-final-related-meta > .pg-related-type--platform { color: var(--pg-muted); }

/* Platform colors identify each platform without overpowering the PinkuGames palette. */
a[data-platform-kind="windows"], .pgs-meta-group a[data-platform-kind="windows"] { color: #60A5FA; }
a[data-platform-kind="android"], .pgs-meta-group a[data-platform-kind="android"] { color: #34D399; }
a[data-platform-kind="mac"], .pgs-meta-group a[data-platform-kind="mac"] { color: #D8D3E2; }
a[data-platform-kind="linux"], .pgs-meta-group a[data-platform-kind="linux"] { color: #FBBF24; }

/* Give each game status its own clear, accessible color. */
.pg-status--ongoing { color: #60A5FA !important; background: #60A5FA14 !important; border-color: #60A5FA55 !important; }
.pg-status--in-development { color: #B89AF3 !important; background: #B89AF314 !important; border-color: #B89AF355 !important; }
.pg-status--on-hold { color: #FBBF24 !important; background: #FBBF2414 !important; border-color: #FBBF2455 !important; }
.pg-status--abandoned { color: #A99BB8 !important; background: #A99BB814 !important; border-color: #A99BB855 !important; }
.pg-status--cancelled { color: #FB7185 !important; background: #FB718514 !important; border-color: #FB718555 !important; }
.pg-final-status.pg-status--completed { color: #34D399; background: #34D39914; border-color: #34D39955; }

/* Keep the carousel arrows as clean chevrons while preserving a usable tap target. */
.pg-featured-carousel > .pg-carousel-arrow {
  display: grid; width: 44px; height: 58px; place-items: center; padding: 0;
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
  color: #FFFFFF; font-size: 2.8rem; line-height: 1; text-shadow: 0 2px 12px #000000D9;
  backdrop-filter: none; -webkit-backdrop-filter: none;
}
.pg-featured-carousel > .pg-carousel-arrow:hover { transform: translateY(-50%) scale(1.06); background: transparent; }
.pg-featured-carousel > .pg-carousel-arrow:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 2px; }
.pgs-gallery-arrow, .pg-lightbox-arrow, .pgs-lightbox-arrow {
  width: 46px; height: 54px; border: 0 !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important; color: #FFFFFF !important;
  font-size: 2.8rem !important; line-height: 1; text-shadow: 0 2px 12px #000000E6;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
.pgs-gallery-arrow:hover, .pg-lightbox-arrow:hover, .pgs-lightbox-arrow:hover { background: transparent !important; transform: translateY(-50%) scale(1.06); }
.pgs-gallery-arrow:focus-visible, .pg-lightbox-arrow:focus-visible, .pgs-lightbox-arrow:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 2px; }

.pg-game-update-link { width: fit-content; min-height: 39px; font-size: 12px; }
.pgs-game-heading .pg-game-update-link { margin-top: 10px; }

/* Finish platform cues in pearl, orchid, and mint. */
.pg-final-related { background: #170F22EF; }
a[data-platform-kind="windows"], .pgs-meta-group a[data-platform-kind="windows"] { color: #F1DDED; }
a[data-platform-kind="android"], .pgs-meta-group a[data-platform-kind="android"] { color: #3DDC84; }
a[data-platform-kind="linux"], .pgs-meta-group a[data-platform-kind="linux"] { color: #D8C2E2; }
.pg-platform-nav a[data-platform-kind="windows"] { color: #F1DDED; }
.pg-platform-nav a[data-platform-kind="linux"] { color: #D8C2E2; }
a[data-platform-kind="windows"] .pg-platform-icon,
a[data-platform-kind="linux"] .pg-platform-icon { color: #E7D9EC; }

/* 2.4.9: readable PinkuGames links, download actions, and lightweight motion. */
body, button, input, select, textarea, .pgs-site-main {
  font-family: Inter, "Segoe UI Variable", "Segoe UI", Roboto, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}
.pg-button:not(.pg-button--soft):not(.pg-button--glass),
.pg-support-ad-button, .pgs-support-button, .pgs-filter-submit,
.pgs-archive-search button, .pg-catalog-more, .pgs-preview-more,
#game-results > .pg-catalog-more {
  border-color: #FF688D !important;
  background: linear-gradient(115deg, #E91E63 0%, #D9154D 100%) !important;
  color: #FFFFFF !important;
  box-shadow: 0 7px 20px #FF2E6333 !important;
  transition: box-shadow .16s ease, border-color .16s ease, transform .16s ease;
}
.pg-button:not(.pg-button--soft):not(.pg-button--glass):hover,
.pg-support-ad-button:hover, .pgs-support-button:hover, .pgs-filter-submit:hover,
.pgs-archive-search button:hover, .pg-catalog-more:hover:not(:disabled), .pgs-preview-more:hover {
  border-color: #FF91AD !important;
  background: linear-gradient(115deg, #F04478 0%, #E91E63 100%) !important;
  box-shadow: 0 9px 24px #FF2E6345 !important;
  transform: translateY(-1px);
}
.pg-button--soft {
  border-color: #FF3F885C !important;
  background: #1B101D !important;
  color: #FF82A5 !important;
  box-shadow: none !important;
}
.pg-button--soft:hover {
  border-color: #FF657E !important;
  background: #29101C !important;
  color: #FFFFFF !important;
}
.pg-content-card a:not(.pg-button), .pg-content-page .entry-content a:not(.pg-button),
.pg-final-main .entry-content a:not(.pg-button), .pg-final-main .pgs-rich-content a:not(.pg-button),
.pg-fact-value a, .pgs-rich-content a:not(.pg-button) {
  color: #FF759B !important;
  text-decoration-color: #FF759B88;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color .16s ease, text-decoration-color .16s ease;
}
.pg-content-card a:not(.pg-button):hover, .pg-content-page .entry-content a:not(.pg-button):hover,
.pg-final-main .entry-content a:not(.pg-button):hover, .pg-final-main .pgs-rich-content a:not(.pg-button):hover,
.pg-fact-value a:hover, .pgs-rich-content a:not(.pg-button):hover {
  color: #FFFFFF !important;
  text-decoration-color: #FF3F88;
}
.pg-download-link, .pgs-download-card {
  border-color: #FF3F8866 !important;
  background: linear-gradient(110deg, #FF3F8818, #F51D5B10), var(--pg-surface-2) !important;
  color: var(--pg-text) !important;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.pg-download-link:hover, .pg-download-link:focus-visible,
.pgs-download-card:hover, .pgs-download-card:focus-visible {
  border-color: #FF657E !important;
  background: linear-gradient(110deg, #FF3F8828, #F51D5B1A), var(--pg-surface-2) !important;
  box-shadow: 0 0 0 1px #FF3F881A, 0 8px 20px #FF1B5C24;
  color: #FFFFFF !important;
  transform: translateY(-1px);
}
.pg-download-name, .pgs-download-card .pgs-download-copy strong { color: #FFFFFF !important; }
.pg-download-host, .pgs-download-card .pgs-download-copy small { color: var(--pg-muted) !important; }
.pg-download-arrow, .pgs-download-arrow { color: #FF759B !important; }
.pg-download-link:focus-visible, .pgs-download-card:focus-visible,
.pg-content-card a:focus-visible, .pgs-rich-content a:focus-visible {
  outline: 2px solid #FF759B;
  outline-offset: 3px;
}
.pg-see-all {
  border-color: #FF3F8866 !important;
  background: #FF3F880D !important;
  color: #FF91AE !important;
  transition: color .16s ease, border-color .16s ease, background-color .16s ease;
}
.pg-see-all:hover, .pg-see-all:focus-visible {
  border-color: #FF657E !important;
  background: #FF3F881C !important;
  color: #FFFFFF !important;
}
.pg-see-all:focus-visible { outline: 2px solid #FF759B; outline-offset: 3px; }
.pg-lightbox img { transition: opacity .14s ease; }
.pg-lightbox img.is-changing { opacity: 0; transform: none; }