/* ==========================================================================
   GAMES CALENDAR v10 — Unified Index Aesthetic
   Cells: cover + title + publisher + colored platform logos
   Detail panel: cinematic hero, glass body, polished media gallery
   Entity pages: hero collage, magazine grid
   Loaded LAST. Wins the cascade with surgical !important.
   ========================================================================== */

@property --gc-day-rim-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

@keyframes gc-day-rim-spin {
  to {
    --gc-day-rim-angle: 360deg;
  }
}

:root {
  --v10-accent: 100, 210, 255;
  --v10-accent-2: 150, 120, 255;
  --v10-accent-3: 255, 120, 180;
  --v10-bg: #060611;
  --v10-surface: rgba(255, 255, 255, 0.035);
  --v10-surface-soft: rgba(255, 255, 255, 0.018);
  --v10-surface-strong: rgba(255, 255, 255, 0.06);
  --v10-border: rgba(255, 255, 255, 0.08);
  --v10-border-strong: rgba(255, 255, 255, 0.14);
  --v10-text: rgba(255, 255, 255, 0.96);
  --v10-text-soft: rgba(255, 255, 255, 0.62);
  --v10-text-mute: rgba(255, 255, 255, 0.40);
  --v10-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --v10-radius-lg: 22px;
  --v10-radius-md: 14px;
  --v10-radius-sm: 10px;
}

html[data-theme="light"] {
  --v10-bg: #f6f7fb;
  --v10-surface: rgba(255, 255, 255, 0.62);
  --v10-surface-soft: rgba(255, 255, 255, 0.42);
  --v10-surface-strong: rgba(255, 255, 255, 0.8);
  --v10-border: rgba(0, 0, 0, 0.08);
  --v10-border-strong: rgba(0, 0, 0, 0.14);
  --v10-text: rgba(0, 0, 0, 0.92);
  --v10-text-soft: rgba(0, 0, 0, 0.58);
  --v10-text-mute: rgba(0, 0, 0, 0.40);
}

/* ==========================================================================
   1. PAGE BACKGROUND — unified with index
   ========================================================================== */

body.page-wrap.category-page--games {
  background: var(--v10-bg) !important;
}

body.page-wrap.category-page--games::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 80% 60% at 80% -10%, rgba(var(--v10-accent), 0.16), transparent 55%),
    radial-gradient(ellipse 70% 60% at 10% 10%, rgba(var(--v10-accent-2), 0.12), transparent 55%),
    radial-gradient(ellipse 90% 55% at 50% 110%, rgba(var(--v10-accent-3), 0.08), transparent 60%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

body.page-wrap.category-page--games > .ambient,
body.page-wrap.category-page--games > [data-shell="header"],
body.page-wrap.category-page--games > main,
body.page-wrap.category-page--games > [data-shell="footer"] {
  position: relative !important;
  z-index: 1 !important;
}

/* Keep site nav drawer as overlay — must not inherit relative positioning from body > * */
body.page-wrap.category-page--games .nav-drawer,
body.page-wrap.category-page--games .nav-drawer__backdrop {
  position: fixed !important;
}

body.page-wrap.category-page--games .nav-drawer__backdrop {
  z-index: 900 !important;
}

body.page-wrap.category-page--games .nav-drawer {
  z-index: 910 !important;
}

/* Calendar is full-screen — no site footer under the grid */
body.page-wrap.category-page--games .site-footer {
  display: none !important;
}

/* No duplicate bottom nav — toolbar already has month/week/today/settings */
.gc-bottom-nav {
  display: none !important;
}

html[data-theme="light"] body.page-wrap.category-page--games::before {
  background:
    radial-gradient(ellipse 80% 60% at 80% -10%, rgba(0, 122, 255, 0.10), transparent 55%),
    radial-gradient(ellipse 70% 60% at 10% 10%, rgba(150, 80, 255, 0.06), transparent 55%) !important;
}

/* ==========================================================================
   2. APP CHROME — slim glass shell
   ========================================================================== */

.gc-app.gc-chrome {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Toolbar card — glass premium */
.gc-toolbar {
  background: var(--v10-surface) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: var(--v10-radius-lg) !important;
  backdrop-filter: blur(40px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.04) inset,
    0 32px 80px -32px rgba(0, 0, 0, 0.5) !important;
}

.gc-toolbar__title {
  background: linear-gradient(105deg, #ffffff 0%, #b8ecff 55%, #5ec8f2 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
}

html[data-theme="light"] .gc-toolbar__title {
  background: linear-gradient(105deg, #0a1a40 0%, #0b67c8 55%, #00a3ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ==========================================================================
   3. MONTH GRID — Notion / Apple Calendar hybrid
   ========================================================================== */

.gc-grid--month {
  background: var(--v10-surface-soft) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: var(--v10-radius-lg) !important;
  overflow: hidden !important;
  box-shadow: 0 24px 60px -24px rgba(0, 0, 0, 0.5) !important;
  backdrop-filter: blur(30px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(160%) !important;
}

.gc-grid__weekdays {
  background: rgba(255, 255, 255, 0.025) !important;
  border-bottom: 1px solid var(--v10-border) !important;
  padding: 0.7rem 0 !important;
}

.gc-grid__weekday {
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-soft) !important;
  text-align: center !important;
}

/* SAT / SUN tinted weekday header */
.gc-grid__weekday:nth-child(6),
.gc-grid__weekday:nth-last-child(2) {
  color: rgb(150, 195, 255) !important;
}
.gc-grid__weekday:nth-child(7),
.gc-grid__weekday:nth-last-child(1) {
  color: rgb(255, 150, 165) !important;
}

/* DAY CELL — base */
.gc-grid--month .gc-day--layout-spotlight:not(.gc-day--empty) {
  min-height: 220px !important;
}

.gc-grid--month .gc-day--layout-duo:not(.gc-day--empty) {
  min-height: 220px !important;
}

.gc-grid--month .gc-day--layout-busy:not(.gc-day--empty) {
  min-height: 220px !important;
}

.gc-grid--month .gc-day--layout-busy .gc-day__content {
  padding-top: 1.15rem !important;
}

.gc-grid--month:not(.gc-grid--month-compact) .gc-day:not(.gc-day--empty) {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 180px !important;
  padding: 0.55rem 0.55rem 0.5rem !important;
  background: transparent !important;
  border: 0 !important;
  border-right: 1px solid rgba(255, 255, 255, 0.045) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.045) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  transition: background 0.25s ease !important;
}

.gc-grid--month .gc-day--empty {
  background: rgba(255, 255, 255, 0.008) !important;
  border-right: 1px solid rgba(255, 255, 255, 0.045) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.045) !important;
}

.gc-grid--month .gc-day:not(.gc-day--empty):hover {
  background: rgba(255, 255, 255, 0.02) !important;
}

/* Day number — top-right (Apple Calendar style, desktop month only) */
.gc-grid--month:not(.gc-grid--month-compact) .gc-day__num,
.gc-app--month-pro .gc-grid--month:not(.gc-grid--month-compact) .gc-day__num {
  position: absolute !important;
  top: 0.45rem !important;
  right: 0.5rem !important;
  left: auto !important;
  align-self: auto !important;
  margin: 0 !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
  color: var(--v10-text-soft) !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  z-index: 6 !important;
  text-shadow: none !important;
  min-width: 18px !important;
  text-align: center !important;
}

.gc-grid--month .gc-day--sat:not(.gc-day--today) .gc-day__num {
  color: rgb(150, 195, 255) !important;
}
.gc-grid--month .gc-day--sun:not(.gc-day--today) .gc-day__num {
  color: rgb(255, 160, 175) !important;
}

/* Today — accent circle around number (desktop month only) */
.gc-grid--month:not(.gc-grid--month-compact) .gc-day--today .gc-day__num {
  color: #001220 !important;
  background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(120, 140, 255)) !important;
  width: 22px !important;
  height: 22px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow:
    0 4px 14px rgba(var(--v10-accent), 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.5) !important;
  font-weight: 800 !important;
}

/* ==========================================================================
   4. DAY CONTENT — magazine cards
   ========================================================================== */

.gc-grid--month .gc-day__content {
  position: relative !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  padding: 1.35rem 0 0 !important;
}

/* No letter initials on covers — gradient placeholder only */
.gc-grid--month .gc-day .gc-cover__initial {
  display: none !important;
}

/* Let cover art read clearly in day cells */
.gc-grid--month .gc-day .gc-cover::after {
  opacity: 0.25 !important;
}

.gc-grid--month .gc-day__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  min-height: 0 !important;
}

/* ---------- SPOTLIGHT (1 game) — sketch: poster + platforms, title below ---------- */

.gc-grid--month .gc-day--layout-spotlight .gc-day__body--spotlight {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  gap: 0 !important;
}

.gc-grid--month .gc-day--layout-spotlight .gc-day-spotlight,
.gc-day__body--spotlight .gc-day-spotlight {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: var(--v10-radius-sm) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  overflow: hidden !important;
  cursor: pointer !important;
  text-align: center !important;
  gap: 0 !important;
  transition:
    transform 0.35s var(--v10-ease),
    box-shadow 0.35s var(--v10-ease),
    border-color 0.25s ease !important;
}

.gc-day-spotlight::before {
  display: none !important;
}

.gc-day-spotlight__hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: minmax(0, 1fr) !important;
  gap: 6px !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  align-items: stretch !important;
  width: 100% !important;
  height: 100% !important;
  padding: 3px !important;
}

.gc-day-spotlight__poster {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
}

.gc-grid--month .gc-day--layout-spotlight .gc-day-spotlight__art,
.gc-day__body--spotlight .gc-day-spotlight__art {
  position: relative !important;
  inset: auto !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  min-height: 92px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.42) !important;
}

.gc-day-spotlight__art .gc-cover,
.gc-day-spotlight__art .gc-cover--poster-month-lg {
  width: 100% !important;
  height: 100% !important;
  min-height: 92px !important;
  aspect-ratio: auto !important;
  border-radius: 8px !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.gc-day-spotlight__art .gc-cover__img {
  width: 100% !important;
  height: 100% !important;
  min-height: 92px !important;
  object-fit: cover !important;
  object-position: center 22% !important;
  filter: saturate(1.08) contrast(1.04) !important;
  transition: transform 0.8s var(--v10-ease), filter 0.35s ease !important;
}

.gc-day-spotlight__art .gc-cover__fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: 92px !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg,
    hsl(var(--cover-hue, 220deg), 55%, 32%),
    hsl(calc(var(--cover-hue, 220deg) + 40deg), 50%, 18%)) !important;
}

.gc-day-spotlight__platforms {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  align-self: center !important;
  min-width: 26px !important;
  margin: 0 !important;
  padding: 1rem 2px 0 0 !important;
}

.gc-day-spotlight__platforms .gc-day-meta__platform {
  width: 24px !important;
  height: 24px !important;
  background: rgba(0, 0, 0, 0.72) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.45) !important;
}

.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark-wrap {
  width: 17px !important;
  height: 17px !important;
}

.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark,
.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark--img,
.gc-app--month-pro .gc-day-spotlight__platforms .gc-day-meta__platform img.gc-platform-mark {
  width: 15px !important;
  height: 15px !important;
  filter: none !important;
  opacity: 1 !important;
}

.gc-app--month-pro .gc-day-spotlight__platforms .gc-day-meta__platform svg.gc-platform-mark {
  fill: unset !important;
  color: unset !important;
}

.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark-wrap--switch1 .gc-platform-mark,
.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark-wrap--switch2 .gc-platform-mark {
  width: 18px !important;
  height: 12px !important;
}

.gc-day-spotlight__platforms .gc-day-meta__platform:nth-child(n+4) {
  display: none !important;
}

.gc-day-spotlight__footer {
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 1px !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: 5px 2px 1px !important;
  text-align: center !important;
}

.gc-day-spotlight__title {
  width: 100% !important;
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  line-height: 1.14 !important;
  color: var(--v10-text) !important;
  letter-spacing: -0.012em !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
}

.gc-day-spotlight__studios {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  font-size: 0.6875rem !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  color: var(--v10-text-soft) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.gc-day-spotlight__studios .gc-day-meta__studio,
.gc-day-spotlight__studios .gc-day-meta__studio--pub {
  color: inherit !important;
  text-shadow: none !important;
}

/* Legacy overlay meta — unused in sketch layout */
.gc-day-spotlight__meta {
  display: none !important;
}

.gc-day-meta__platforms,
.gc-day-meta__platforms.gc-day-meta__platforms {
  margin-top: 4px !important;
}

.gc-day-meta__platform {
  position: relative !important;
  width: 22px !important;
  height: 22px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.62) !important;
  backdrop-filter: blur(8px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(8px) saturate(180%) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
}

.gc-day-meta__platform .gc-platform-mark-wrap {
  width: 16px !important;
  height: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

.gc-day-meta__platform .gc-platform-mark,
.gc-day-meta__platform .gc-platform-mark--img {
  width: 14px !important;
  height: 14px !important;
  filter: none !important;
  opacity: 1 !important;
  display: block !important;
}

.gc-day-meta__platform .gc-platform-mark-wrap--switch1 .gc-platform-mark,
.gc-day-meta__platform .gc-platform-mark-wrap--switch2 .gc-platform-mark {
  width: 18px !important;
  height: 12px !important;
}

/* Limit visible platforms to 3 */
.gc-day-meta__platform:nth-child(n+4) {
  display: none !important;
}

/* ---------- DUO (2+ games) — vertical magazine rows ---------- */

.gc-day__body--duo {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

.gc-day__body--duo .gc-day-trio__card {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 50px minmax(0, 1fr) auto !important;
  grid-template-rows: minmax(0, 1fr) !important;
  gap: 6px !important;
  align-items: center !important;
  width: 100% !important;
  height: 74px !important;
  min-height: 74px !important;
  max-height: 74px !important;
  padding: 3px 4px !important;
  background: rgba(255, 255, 255, 0.025) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  text-align: left !important;
  flex: 0 0 auto !important;
  overflow: hidden !important;
  transition:
    transform 0.25s var(--v10-ease),
    border-color 0.25s ease,
    background 0.25s ease !important;
}

.gc-day__body--duo .gc-day-trio__card:hover {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(var(--v10-accent), 0.4) !important;
  transform: translateX(2px) !important;
  z-index: 5 !important;
}

.gc-day__body--duo .gc-day-trio__art {
  width: 50px !important;
  height: 68px !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
}

.gc-day__body--duo .gc-day-trio__art .gc-cover,
.gc-day__body--duo .gc-day-trio__art .gc-cover--poster-month-trio {
  width: 50px !important;
  height: 68px !important;
  min-height: 68px !important;
  aspect-ratio: auto !important;
  border-radius: 6px !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.gc-day__body--duo .gc-day-trio__art .gc-cover__img {
  width: 50px !important;
  height: 68px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
}

.gc-day__body--duo .gc-day-trio__art .gc-cover__fallback {
  width: 50px !important;
  height: 68px !important;
  border-radius: 6px !important;
  display: block !important;
  background: linear-gradient(135deg,
    hsl(var(--cover-hue, 220deg), 55%, 32%),
    hsl(calc(var(--cover-hue, 220deg) + 40deg), 50%, 18%)) !important;
}

.gc-day__body--duo .gc-day-trio__copy {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 2px !important;
  min-width: 0 !important;
  max-height: 68px !important;
  padding: 0 !important;
  overflow: hidden !important;
  width: 100% !important;
}

.gc-day__body--duo .gc-day-trio__title {
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  line-height: 1.14 !important;
  color: var(--v10-text) !important;
  letter-spacing: -0.012em !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

.gc-day__body--duo .gc-day-trio__studios {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.gc-day__body--duo .gc-day-trio__studios .gc-day-meta__studio {
  font-size: 0.6875rem !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  color: var(--v10-text-soft) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.gc-day__body--duo .gc-day-trio__studios .gc-day-meta__studio--pub {
  color: var(--v10-text-mute) !important;
}

/* Legacy single-line studio slot — unused in duo, keep for safety */
.gc-day__body--duo .gc-day-trio__studio {
  display: none !important;
}

/* Platforms — dedicated narrow column, no text overlap */
.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platforms {
  position: static !important;
  top: auto !important;
  right: auto !important;
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: center !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 1px 0 0 !important;
  z-index: 2 !important;
  flex-shrink: 0 !important;
  min-width: 24px !important;
}

.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform {
  width: 24px !important;
  height: 24px !important;
  background: rgba(0, 0, 0, 0.72) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  border-radius: 999px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.45) !important;
}

.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark-wrap {
  width: 17px !important;
  height: 17px !important;
}

.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark,
.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark--img,
.gc-app--month-pro .gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform img.gc-platform-mark {
  width: 15px !important;
  height: 15px !important;
  filter: none !important;
  opacity: 1 !important;
}

.gc-app--month-pro .gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform svg.gc-platform-mark {
  fill: unset !important;
  color: unset !important;
}

.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark-wrap--switch1 .gc-platform-mark,
.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark-wrap--switch2 .gc-platform-mark {
  width: 19px !important;
  height: 13px !important;
}

.gc-day__body--duo .gc-day-trio__card .gc-day-meta__platform:nth-child(n+4) {
  display: none !important;
}

/* ---------- DUO (exactly 2 titles) — sketch pair, no footer ---------- */

.gc-day__body--duo:not(.gc-day__body--busy) {
  gap: 5px !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__card {
  flex: 1 1 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  border-radius: 10px !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  padding: 4px 5px !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__art {
  width: 54px !important;
  height: auto !important;
  min-height: 78px !important;
  align-self: stretch !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__art .gc-cover,
.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__art .gc-cover--poster-month-trio,
.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__art .gc-cover__img,
.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__art .gc-cover__fallback {
  width: 54px !important;
  height: 100% !important;
  min-height: 78px !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__copy {
  max-height: none !important;
  align-self: center !important;
  gap: 2px !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__title {
  -webkit-line-clamp: 2 !important;
  font-size: 0.8125rem !important;
  line-height: 1.16 !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__studios .gc-day-meta__studio {
  font-size: 0.6875rem !important;
  line-height: 1.12 !important;
}

.gc-day__body--duo:not(.gc-day__body--busy) .gc-day-trio__card .gc-day-meta__platforms {
  align-self: center !important;
  gap: 3px !important;
}

/* ---------- BUSY (3+ games) — sketch stack + releases footer ---------- */

.gc-day__body--busy {
  gap: 4px !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

.gc-day__body--busy .gc-day-trio__card {
  flex: 1 1 0 !important;
  height: auto !important;
  min-height: 76px !important;
  max-height: none !important;
  padding: 4px 5px !important;
  border-radius: 10px !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  align-items: stretch !important;
}

.gc-day__body--busy .gc-day-trio__art {
  width: 54px !important;
  height: auto !important;
  min-height: 78px !important;
  align-self: stretch !important;
}

.gc-day__body--busy .gc-day-trio__art .gc-cover,
.gc-day__body--busy .gc-day-trio__art .gc-cover--poster-month-trio {
  width: 54px !important;
  height: 100% !important;
  min-height: 78px !important;
}

.gc-day__body--busy .gc-day-trio__art .gc-cover__img,
.gc-day__body--busy .gc-day-trio__art .gc-cover__fallback {
  width: 54px !important;
  height: 100% !important;
  min-height: 78px !important;
}

.gc-day__body--busy .gc-day-trio__copy {
  max-height: none !important;
  align-self: center !important;
  gap: 2px !important;
}

.gc-day__body--busy .gc-day-trio__title {
  -webkit-line-clamp: 2 !important;
  font-size: 0.8125rem !important;
  line-height: 1.16 !important;
}

.gc-day__body--busy .gc-day-trio__studios .gc-day-meta__studio {
  font-size: 0.6875rem !important;
  line-height: 1.12 !important;
}

.gc-day__body--busy .gc-day-trio__card .gc-day-meta__platforms {
  gap: 4px !important;
  min-width: 24px !important;
  align-self: center !important;
}

.gc-day__body--busy .gc-day-trio__card .gc-day-meta__platform {
  width: 24px !important;
  height: 24px !important;
}

.gc-day__body--busy .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark-wrap {
  width: 16px !important;
  height: 16px !important;
}

.gc-day__body--busy .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark,
.gc-day__body--busy .gc-day-trio__card .gc-day-meta__platform .gc-platform-mark--img,
.gc-app--month-pro .gc-day__body--busy .gc-day-trio__card .gc-day-meta__platform img.gc-platform-mark {
  width: 14px !important;
  height: 14px !important;
  filter: none !important;
  opacity: 1 !important;
}

.gc-app--month-pro .gc-day__body--busy .gc-day-trio__card .gc-day-meta__platform svg.gc-platform-mark {
  fill: unset !important;
  color: unset !important;
}

.gc-day__body--busy .gc-day__more {
  margin-top: auto !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  font-size: 0.6875rem !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.gc-day__body--busy .gc-day__more-count {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-align: left !important;
}

.gc-day__body--busy .gc-day__more-arrow {
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* +N more button */
.gc-day__more {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 4px !important;
  width: 100% !important;
  margin-top: auto !important;
  padding: 4px 8px !important;
  border-radius: 7px !important;
  border: 1px solid rgba(var(--v10-accent), 0.22) !important;
  background: rgba(var(--v10-accent), 0.06) !important;
  color: rgb(var(--v10-accent)) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease !important;
  flex-shrink: 0 !important;
}

.gc-day__more:hover {
  background: rgba(var(--v10-accent), 0.14) !important;
  border-color: rgba(var(--v10-accent), 0.4) !important;
  transform: translateY(-1px) !important;
}

/* Spotlight HOVER */
.gc-day-spotlight:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(var(--v10-accent), 0.35) !important;
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(var(--v10-accent), 0.25) !important;
  z-index: 12 !important;
}

.gc-day-spotlight:hover .gc-cover__img {
  transform: scale(1.06) !important;
  filter: saturate(1.18) brightness(1.05) !important;
}

/* Today cell — accent ring on cover */
.gc-day--today .gc-day-spotlight {
  box-shadow:
    inset 0 0 0 2px rgba(var(--v10-accent), 0.55),
    0 0 24px rgba(var(--v10-accent), 0.2) !important;
}

/* Active state */
.gc-day-spotlight:active,
.gc-day-trio__card:active {
  transform: scale(0.98) !important;
  transition: transform 0.12s ease !important;
}

/* ==========================================================================
   5. UPCOMING STRIP — magazine cards
   ========================================================================== */

.gc-upcoming {
  background: var(--v10-surface) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: var(--v10-radius-lg) !important;
  backdrop-filter: blur(30px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(160%) !important;
  padding: 1.1rem !important;
  margin-bottom: 1rem !important;
}

.gc-upcoming__title,
.gc-upcoming__eyebrow {
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.85) !important;
  margin-bottom: 0.6rem !important;
}

.gc-upcoming-card {
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: var(--v10-radius-md) !important;
  overflow: hidden !important;
  transition:
    transform 0.35s var(--v10-ease),
    border-color 0.35s ease,
    box-shadow 0.35s ease !important;
}

.gc-upcoming-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(var(--v10-accent), 0.4) !important;
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.4),
    0 0 0 1px rgba(var(--v10-accent), 0.25) !important;
}

/* ==========================================================================
   6. DETAIL PANEL SHEET — cinematic ultra-pro
   ========================================================================== */

.gc-game-sheet,
.gc-game-sheet--panel {
  background: rgba(10, 12, 22, 0.85) !important;
  border: 1px solid var(--v10-border-strong) !important;
  border-radius: var(--v10-radius-lg) !important;
  backdrop-filter: blur(40px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%) !important;
  box-shadow:
    0 32px 80px rgba(0, 0, 0, 0.7),
    0 0 0 1px rgba(255, 255, 255, 0.04) inset,
    0 0 60px rgba(var(--v10-accent), 0.15) !important;
  overflow: hidden !important;
  width: min(1024px, 94vw) !important;
  max-width: 1024px !important;
  max-height: 90vh !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 9999 !important;
}

.gc-overlay-backdrop {
  background: rgba(0, 0, 0, 0.7) !important;
  backdrop-filter: blur(20px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(120%) !important;
  z-index: 9998 !important;
}

html[data-theme="light"] .gc-game-sheet {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
}

/* Hero band — cinema */
.gc-game-sheet__hero-band {
  position: relative !important;
  height: 280px !important;
  overflow: hidden !important;
  border-radius: var(--v10-radius-lg) var(--v10-radius-lg) 0 0 !important;
}

.gc-game-sheet__hero-bg {
  position: absolute !important;
  inset: 0 !important;
  background-size: cover !important;
  background-position: center !important;
  filter: saturate(1.15) blur(2px) !important;
  transform: scale(1.05) !important;
}

.gc-game-sheet__hero-shade {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse at top right, rgba(var(--v10-accent), 0.25), transparent 60%),
    linear-gradient(180deg,
      rgba(10, 12, 22, 0.25) 0%,
      rgba(10, 12, 22, 0.4) 40%,
      rgba(10, 12, 22, 0.85) 80%,
      rgba(10, 12, 22, 0.98) 100%) !important;
}

.gc-game-hero-video {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 100% !important;
  height: 100% !important;
  transform: translate(-50%, -50%) scale(1.3) !important;
  border: 0 !important;
  pointer-events: none !important;
  opacity: 0.5 !important;
}

.gc-game-sheet__hero-bar {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 10 !important;
}

.gc-game-sheet__close {
  width: 36px !important;
  height: 36px !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.5) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  backdrop-filter: blur(12px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(180%) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.gc-game-sheet__close:hover {
  background: rgba(0, 0, 0, 0.7) !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
  transform: scale(1.08) !important;
}

/* Body */
.gc-game-sheet__body {
  padding: 0 !important;
  background: transparent !important;
}

.gc-game-sheet__scroll {
  padding: 1.5rem 1.75rem 1.75rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1.25rem !important;
}

.gc-game-sheet__top {
  display: grid !important;
  grid-template-columns: 180px 1fr !important;
  gap: 1.5rem !important;
  align-items: flex-start !important;
}

@media (max-width: 600px) {
  .gc-game-sheet__top {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }
}

.gc-game-sheet__poster {
  position: relative !important;
  margin-top: -90px !important;
  border-radius: var(--v10-radius-md) !important;
  overflow: hidden !important;
  box-shadow:
    0 24px 60px rgba(0, 0, 0, 0.6),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset !important;
  z-index: 5 !important;
}

.gc-game-sheet__poster .gc-cover,
.gc-game-sheet__poster .gc-cover--poster-detail {
  width: 180px !important;
  height: 270px !important;
  border-radius: var(--v10-radius-md) !important;
}

.gc-game-sheet__poster .gc-cover__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.gc-game-sheet__countdown {
  position: absolute !important;
  bottom: 10px !important;
  left: 10px !important;
  right: 10px !important;
  padding: 6px 10px !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #001220 !important;
  background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(120, 140, 255)) !important;
  border-radius: 8px !important;
  text-align: center !important;
  box-shadow: 0 6px 16px rgba(var(--v10-accent), 0.4) !important;
}

.gc-game-sheet__info {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.7rem !important;
}

.gc-game-sheet__title {
  font-size: clamp(1.5rem, 3vw, 2.2rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.1 !important;
  margin: 0 !important;
  background: linear-gradient(105deg, #fff 0%, #b8ecff 60%, #5ec8f2 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

html[data-theme="light"] .gc-game-sheet__title {
  background: linear-gradient(105deg, #0a1a40, #0b67c8, #00a3ff) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.gc-game-sheet__release {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  margin: 0 !important;
}

.gc-game-sheet__label {
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-soft) !important;
}

.gc-game-sheet__release time {
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: var(--v10-text) !important;
}

.gc-game-sheet__platform-row {
  display: flex !important;
  flex-direction: row !important;
  gap: 6px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

.gc-game-sheet__platform-row .gc-platform-icons__item,
.gc-game-sheet__platform-row .gc-day-meta__platform {
  width: 30px !important;
  height: 30px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.gc-game-sheet__platform-row .gc-platform-mark,
.gc-game-sheet__platform-row .gc-platform-mark--img {
  width: 18px !important;
  height: 18px !important;
  filter: none !important;
}

/* Synopsis */
.gc-game-sheet__synopsis,
.gc-synopsis,
.gc-game-sheet__body p {
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
  color: var(--v10-text-soft) !important;
}

.gc-synopsis-block,
.gc-game-sheet__synopsis-block {
  padding: 1rem 1.1rem !important;
  background: rgba(255, 255, 255, 0.025) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: var(--v10-radius-md) !important;
}

/* Media gallery */
.gc-game-media,
.gc-game-sheet__media {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.65rem !important;
  margin-top: 0.5rem !important;
}

.gc-game-media__heading,
.gc-game-sheet__media-heading {
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.85) !important;
}

.gc-game-media__strip,
.gc-game-media__grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
  gap: 0.5rem !important;
}

.gc-game-media__item,
.gc-game-media__shot {
  position: relative !important;
  aspect-ratio: 16 / 9 !important;
  border-radius: var(--v10-radius-sm) !important;
  overflow: hidden !important;
  border: 1px solid var(--v10-border) !important;
  cursor: pointer !important;
  transition:
    transform 0.3s var(--v10-ease),
    border-color 0.3s ease !important;
}

.gc-game-media__item:hover,
.gc-game-media__shot:hover {
  transform: scale(1.04) !important;
  border-color: rgba(var(--v10-accent), 0.4) !important;
  z-index: 3 !important;
}

.gc-game-media__item img,
.gc-game-media__shot img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Entity chips inside detail */
.gc-game-sheet__entities {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  padding: 0.6rem 0 !important;
}

.gc-entity-row {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.gc-entity-chip,
a.gc-entity-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 5px 12px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: 999px !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  color: var(--v10-text) !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.gc-entity-chip:hover {
  background: rgba(var(--v10-accent), 0.1) !important;
  border-color: rgba(var(--v10-accent), 0.4) !important;
  color: rgb(var(--v10-accent)) !important;
  transform: translateY(-1px) !important;
}

/* Footer */
.gc-game-sheet__footer {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
  padding: 1rem 0 0 !important;
  border-top: 1px solid var(--v10-border) !important;
  margin-top: 0.5rem !important;
}

.gc-game-sheet__actions {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

/* Wishlist row */
.gc-game-sheet__wishlist-row {
  padding: 0.85rem 1rem !important;
  background: rgba(var(--v10-accent), 0.05) !important;
  border: 1px solid rgba(var(--v10-accent), 0.18) !important;
  border-radius: var(--v10-radius-md) !important;
}

/* ==========================================================================
   6b. GAME SHEET — wireframe / sketch layout
   ========================================================================== */

.gc-game-sheet--sketch .gc-game-sheet__hero-band,
.gc-game-sheet--sketch > .gc-game-sheet__close:not(.gc-game-sheet__panel-head .gc-game-sheet__close) {
  display: none !important;
}

.gc-game-sheet--sketch .gc-game-sheet__panel-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  padding: 0.85rem 1.1rem !important;
  border-bottom: 1px solid var(--v10-border) !important;
  background: rgba(255, 255, 255, 0.02) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__status {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0.35rem 0.75rem !important;
  border-radius: 999px !important;
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #001220 !important;
  background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(120, 140, 255)) !important;
  box-shadow: 0 4px 14px rgba(var(--v10-accent), 0.35) !important;
  white-space: nowrap !important;
}

.gc-game-sheet--sketch .gc-game-sheet__status--muted {
  color: var(--v10-text-soft) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: none !important;
}

.gc-game-sheet--sketch .gc-game-sheet__panel-actions {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
  margin-left: auto !important;
}

.gc-game-sheet--sketch .gc-follow--panel-head {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  min-height: 34px !important;
  padding: 0 0.85rem !important;
  border-radius: 999px !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--v10-text) !important;
}

.gc-game-sheet--sketch .gc-follow--panel-head.gc-follow--on {
  color: #ff6482 !important;
  border-color: rgba(255, 100, 130, 0.35) !important;
  background: rgba(255, 100, 130, 0.12) !important;
}

.gc-game-sheet--sketch .gc-follow__label {
  line-height: 1 !important;
}

.gc-game-sheet--sketch .gc-follow--panel-head .gc-follow__icon--bell {
  flex-shrink: 0 !important;
  width: 15px !important;
  height: 15px !important;
  opacity: 0.95 !important;
}

.gc-game-sheet--sketch .gc-share--icon {
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.gc-game-sheet--sketch .gc-game-sheet__panel-head .gc-game-sheet__close {
  position: static !important;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__scroll {
  padding: 0.7rem 0.95rem 0.95rem !important;
  gap: 0.65rem !important;
}

.gc-game-sheet--sketch .gc-game-sheet__main-row {
  display: grid !important;
  grid-template-columns: 156px minmax(0, 1fr) minmax(196px, 0.9fr) !important;
  gap: 0.65rem !important;
  align-items: stretch !important;
  min-height: 228px !important;
}

.gc-game-sheet--sketch .gc-game-sheet__poster {
  margin-top: -0.25rem !important;
  align-self: stretch !important;
  display: flex !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow:
    0 16px 40px rgba(0, 0, 0, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover,
.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover--poster-detail,
.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover__img {
  width: 100% !important;
  height: 100% !important;
  min-height: 228px !important;
  aspect-ratio: auto !important;
  border-radius: 14px !important;
  object-fit: cover !important;
}

.gc-game-sheet--sketch .gc-game-sheet__info-card,
.gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
  padding: 0.8rem 0.85rem !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.035) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 12px 32px -16px rgba(0, 0, 0, 0.45) !important;
  min-height: 228px !important;
}

.gc-game-sheet--sketch .gc-game-sheet__info-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem !important;
  min-width: 0 !important;
  justify-content: flex-start !important;
}

.gc-game-sheet--sketch .gc-game-sheet__title {
  font-size: clamp(1.05rem, 2.1vw, 1.45rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.12 !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  color: #fff !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__title {
  color: #0a1220 !important;
  -webkit-text-fill-color: #0a1220 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__release {
  margin: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__release time {
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-soft) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__studio {
  margin: 0 !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.72) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__platform-row {
  margin-top: auto !important;
  padding-top: 0.5rem !important;
}

.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-game-sheet__platform,
.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-platform-icons__item {
  width: 28px !important;
  height: 28px !important;
}

.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-platform-mark,
.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-platform-mark--img,
.gc-app--month-pro .gc-game-sheet--sketch .gc-game-sheet__platform-row img.gc-platform-mark {
  width: 17px !important;
  height: 17px !important;
  filter: none !important;
}

.gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  justify-content: flex-start !important;
}

.gc-game-sheet--sketch .gc-game-sheet__wishlist-label {
  margin: 0 0 0.5rem !important;
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-soft) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem !important;
  flex: 0 0 auto !important;
  justify-content: flex-start !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-row {
  display: flex !important;
  align-items: center !important;
  padding: 0.5rem 0.55rem !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  gap: 0.5rem !important;
  text-decoration: none !important;
  color: inherit !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-row::before {
  content: "" !important;
  width: 14px !important;
  height: 14px !important;
  border-radius: 999px !important;
  border: 2px solid rgba(255, 255, 255, 0.28) !important;
  flex-shrink: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-icon {
  flex-shrink: 0 !important;
  opacity: 0.95 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-name {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-go {
  opacity: 0.55 !important;
  flex-shrink: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__synopsis-card {
  padding: 0.8rem 0.9rem !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  max-height: 132px !important;
  overflow-y: auto !important;
  margin: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__synopsis-label {
  display: block !important;
  margin-bottom: 0.45rem !important;
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-soft) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__synopsis p {
  margin: 0 !important;
  font-size: 0.82rem !important;
  line-height: 1.55 !important;
  color: rgba(255, 255, 255, 0.82) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__media-wrap {
  padding: 0.85rem !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

.gc-game-sheet--sketch .gc-game-media {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 0.55rem !important;
  overflow-x: auto !important;
}

.gc-game-sheet--sketch .gc-game-media__group {
  display: flex !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
}

.gc-game-sheet--sketch .gc-game-media__group-title {
  display: none !important;
}

.gc-game-sheet--sketch .gc-game-media__track {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 0.55rem !important;
  overflow-x: auto !important;
  padding-bottom: 0.15rem !important;
}

.gc-game-sheet--sketch .gc-game-media__card {
  width: min(150px, 34vw) !important;
  border-radius: 12px !important;
}

.gc-game-sheet--sketch .gc-game-media__card--trailer {
  width: min(170px, 38vw) !important;
}

.gc-game-sheet--sketch .gc-game-media__card--trailer .gc-game-media__visual {
  min-height: 88px !important;
}

.gc-game-sheet--sketch .gc-game-media__label {
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

.gc-game-sheet--sketch .gc-related-games {
  padding: 0.8rem 0.9rem !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  margin-top: 0 !important;
}

.gc-game-sheet--sketch .gc-related-games__title {
  font-size: 0.58rem !important;
  letter-spacing: 0.14em !important;
  margin-bottom: 0.5rem !important;
  text-transform: uppercase !important;
  font-weight: 800 !important;
  color: var(--v10-text-soft) !important;
}

.gc-game-sheet--sketch .gc-related-games__list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.45rem !important;
}

.gc-game-sheet--sketch .gc-related-chip {
  padding: 0.28rem 0.55rem 0.28rem 0.28rem !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  max-width: 100% !important;
}

.gc-game-sheet--sketch .gc-related-chip__art {
  width: 24px !important;
  height: 32px !important;
  border-radius: 5px !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.65rem !important;
  padding: 0.45rem 0.1rem 0 !important;
  margin-top: 0.1rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip {
  display: flex !important;
  width: 100% !important;
  justify-content: flex-start !important;
  padding: 0.5rem 0.85rem !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  font-size: 0.68rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  gap: 0.45rem !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip__type {
  font-weight: 800 !important;
  color: var(--v10-text-soft) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip__name {
  font-weight: 700 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-actions {
  flex-shrink: 0 !important;
}

.gc-game-sheet--sketch .gc-follow--footer {
  width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.05) !important;
}

.gc-game-sheet--sketch .gc-follow--footer.gc-follow--on {
  color: #ff6482 !important;
  border-color: rgba(255, 100, 130, 0.35) !important;
  background: rgba(255, 100, 130, 0.12) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__entities-footer {
  display: none !important;
}

@media (max-width: 820px) {
  .gc-game-sheet--sketch .gc-game-sheet__main-row {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    grid-template-areas:
      "poster info"
      "wishlist wishlist" !important;
    min-height: 0 !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__poster {
    grid-area: poster !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover,
  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover--poster-detail,
  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover__img {
    min-height: 168px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__info-card {
    grid-area: info !important;
    min-height: 168px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
    grid-area: wishlist !important;
    min-height: 0 !important;
  }
}

@media (max-width: 900px) {
  .gc-game-sheet--sketch .gc-game-sheet__panel-head {
    display: none !important;
  }
}

@media (min-width: 901px) {
  .gc-game-sheet--sketch .gc-game-sheet__mobile-bar {
    display: none !important;
  }
}

/* ==========================================================================
   7. ENTITY HERO PAGES — magazine cinema
   ========================================================================== */

.gc-entity-hero {
  background: var(--v10-surface) !important;
  border: 1px solid var(--v10-border-strong) !important;
  border-radius: var(--v10-radius-lg) !important;
  backdrop-filter: blur(40px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%) !important;
  padding: 1.5rem 1.75rem !important;
  box-shadow: 0 32px 80px -32px rgba(0, 0, 0, 0.6) !important;
  margin-bottom: 1.25rem !important;
  position: relative !important;
  overflow: hidden !important;
}

.gc-entity-hero::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 60% !important;
  height: 100% !important;
  background: radial-gradient(ellipse at top right, rgba(var(--v10-accent), 0.18), transparent 60%) !important;
  pointer-events: none !important;
}

.gc-entity-hero > * {
  position: relative !important;
  z-index: 1 !important;
}

.gc-entity-hero__type {
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.85) !important;
  margin-bottom: 0.35rem !important;
}

.gc-entity-hero__title,
h1.gc-entity-hero__title {
  font-size: clamp(1.8rem, 4vw, 2.8rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.05 !important;
  background: linear-gradient(105deg, #fff 0%, #b8ecff 55%, #5ec8f2 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  margin: 0 0 0.35rem !important;
}

html[data-theme="light"] .gc-entity-hero__title {
  background: linear-gradient(105deg, #0a1a40, #0b67c8, #00a3ff) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.gc-entity-hero__count {
  font-size: 0.85rem !important;
  color: var(--v10-text-soft) !important;
  margin: 0.25rem 0 0 !important;
}

.gc-entity-hero__collage {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(80px, 1fr)) !important;
  gap: 6px !important;
  border-radius: var(--v10-radius-md) !important;
  overflow: hidden !important;
}

.gc-entity-hero__poster {
  aspect-ratio: 2 / 3 !important;
  background-size: cover !important;
  background-position: center !important;
  border-radius: var(--v10-radius-sm) !important;
  border: 1px solid var(--v10-border) !important;
  transition: transform 0.3s var(--v10-ease) !important;
}

.gc-entity-hero__poster:hover {
  transform: scale(1.04) !important;
  z-index: 3 !important;
}

/* ==========================================================================
   8. MISC POLISH
   ========================================================================== */

/* Search field — index-style */
.gc-search,
.gc-search-field {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--v10-border) !important;
  border-radius: 999px !important;
  transition: all 0.25s ease !important;
}

.gc-search:focus-within,
.gc-search-field:focus-within {
  border-color: rgba(var(--v10-accent), 0.5) !important;
  box-shadow:
    0 0 0 3px rgba(var(--v10-accent), 0.18),
    0 0 24px rgba(var(--v10-accent), 0.1) !important;
}

/* Platform pills in toolbar — colored */
.gc-platform-toggle .gc-platform-toggle__chip,
.gc-platform-toggle .gc-platform-pill {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid var(--v10-border) !important;
  transition: all 0.25s ease !important;
}

.gc-platform-toggle .gc-platform-toggle__chip:hover {
  background: rgba(var(--v10-accent), 0.12) !important;
  border-color: rgba(var(--v10-accent), 0.35) !important;
  transform: translateY(-1px) !important;
}

.gc-platform-toggle .gc-platform-toggle__chip.is-active,
.gc-platform-toggle .gc-platform-pill.is-active {
  background: linear-gradient(135deg,
    rgba(var(--v10-accent), 0.25),
    rgba(var(--v10-accent-2), 0.18)) !important;
  border-color: rgba(var(--v10-accent), 0.5) !important;
  box-shadow:
    0 0 0 1px rgba(var(--v10-accent), 0.3),
    0 4px 14px rgba(var(--v10-accent), 0.25) !important;
}

/* All platform mark imgs across the page — natural color */
.gc-platform-mark--img {
  filter: none !important;
}

/* Today button */
.gc-today,
button.gc-today {
  background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(120, 140, 255)) !important;
  color: #001220 !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  font-weight: 700 !important;
  box-shadow: 0 6px 18px rgba(var(--v10-accent), 0.35) !important;
}

.gc-today:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px rgba(var(--v10-accent), 0.45) !important;
}

/* Animation: month slide + day pop */
@keyframes v10-grid-enter {
  from { opacity: 0; transform: translateY(8px) scale(0.99); filter: blur(4px); }
  to   { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

.gc-grid--month {
  animation: v10-grid-enter 0.5s var(--v10-ease) both !important;
}

@keyframes v10-day-pop {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

.gc-grid--month .gc-day:not(.gc-day--empty) .gc-day__body {
  animation: v10-day-pop 0.45s var(--v10-ease) both !important;
  animation-delay: calc(var(--day-index, 0) * 5ms + 100ms) !important;
}

@media (prefers-reduced-motion: reduce) {
  .gc-grid--month,
  .gc-grid--month .gc-day__body {
    animation: none !important;
  }
}

/* ==========================================================================
   9. MOBILE — keep compact, just tidy
   ========================================================================== */

@media (max-width: 900px) {
  .gc-grid--month:not(.gc-grid--month-compact) .gc-day:not(.gc-day--empty) {
    min-height: 64px !important;
    padding: 5px 4px !important;
    border-right: 1px solid rgba(255, 255, 255, 0.04) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
  }

  .gc-grid--month:not(.gc-grid--month-compact) .gc-day__num {
    font-size: 0.74rem !important;
    top: 0.35rem !important;
    right: 0.35rem !important;
    margin: 0 !important;
  }

  .gc-grid--month:not(.gc-grid--month-compact) .gc-day--today .gc-day__num {
    width: 20px !important;
    height: 20px !important;
    font-size: 0.7rem !important;
  }

  .gc-day-preview-cover .gc-cover--poster-xs {
    width: 18px !important;
    height: 27px !important;
    border-radius: 3px !important;
  }
}

/* ==========================================================================
   9. MOBILE SKETCH — month grid + day shelf (boceto)
   ========================================================================== */

@media (max-width: 900px) {
  .gc-app--mobile-ui .gc-toolbar__row--mobile-top.gc-toolbar__row--sketch-month,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-head.gc-toolbar__row--sketch-day {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    grid-template-columns: unset !important;
  }

  .gc-app--mobile-ui .gc-toolbar__title--sketch-month,
  .gc-app--mobile-ui .gc-toolbar__title--sketch-day {
    width: 100% !important;
    text-align: center !important;
    font-family: var(--font-display) !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    text-transform: none !important;
    background: linear-gradient(105deg, #ffffff 0%, #b8ecff 55%, #5ec8f2 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
  }

  .gc-app--mobile-ui .gc-toolbar__title--sketch-month {
    font-size: clamp(1.35rem, 7vw, 1.75rem) !important;
    line-height: 1.05 !important;
    padding: 0.15rem 0 0.25rem !important;
  }

  .gc-app--mobile-ui .gc-toolbar__title--sketch-day {
    font-size: clamp(1.2rem, 6vw, 1.55rem) !important;
    line-height: 1.08 !important;
    padding: 0.1rem 0 0.2rem !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-toolbar__title--sketch-month,
  html[data-theme="light"] .gc-app--mobile-ui .gc-toolbar__title--sketch-day {
    background: linear-gradient(105deg, #0a1a40 0%, #0b67c8 55%, #00a3ff 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--sketch-nav {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.45rem !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--sketch-nav .gc-nav-cluster--mobile {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 6.5rem) !important;
    z-index: 1 !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-scale {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    flex-wrap: nowrap !important;
    justify-content: stretch !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segment {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    font-size: 0.625rem !important;
    letter-spacing: 0.06em !important;
    padding: 0.45rem 0.35rem !important;
    justify-content: center !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.45rem !important;
    width: 100% !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters .gc-toolbar__group--platform,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only .gc-toolbar__group--platform {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-content: center !important;
    display: flex !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters .gc-platform-bar,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only .gc-platform-bar {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters .gc-platform-bar__track,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only .gc-platform-bar__track {
    justify-content: center !important;
    width: fit-content !important;
    max-width: calc(100vw - 1.5rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .gc-app--mobile-ui .gc-body--mobile-month > .gc-month-footer {
    display: flex !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__preview {
    display: none !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__head {
    font-size: 0.625rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  /* day cell typography — sizing handled in §11 */

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sat .gc-day__num {
    color: rgb(150, 195, 255) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sun .gc-day__num {
    color: rgb(255, 160, 175) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--other-month .gc-day__num {
    color: rgba(255, 255, 255, 0.28) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--selected .gc-day__num,
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today.gc-day--selected .gc-day__num {
    color: #001220 !important;
    background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(120, 140, 255)) !important;
    box-shadow:
      0 0 0 2px rgba(255, 255, 255, 0.95),
      0 4px 14px rgba(var(--v10-accent), 0.45) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num--has::after {
    top: 0.28rem !important;
    right: 0.32rem !important;
    width: 5px !important;
    height: 5px !important;
    background: rgb(255, 214, 90) !important;
    box-shadow: 0 0 6px rgba(255, 214, 90, 0.55) !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-shelf__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0.55rem 0.45rem !important;
    padding: 0.45rem 0.55rem calc(5.5rem + var(--mobile-bar-clearance, 0px)) !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card {
    gap: 0.35rem !important;
    min-width: 0 !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__poster {
    position: relative !important;
    aspect-ratio: 2 / 3 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.42) !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__platforms {
    position: absolute !important;
    top: 4px !important;
    right: 4px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    z-index: 2 !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__platform {
    width: 20px !important;
    height: 20px !important;
    border-radius: 999px !important;
    background: rgba(0, 0, 0, 0.72) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__platform .gc-platform-mark,
  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__platform .gc-platform-mark--img {
    width: 12px !important;
    height: 12px !important;
    filter: none !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__title {
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    -webkit-line-clamp: 2 !important;
    text-align: center !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__studios {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    min-width: 0 !important;
    text-align: center !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__dev,
  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__pub {
    display: block !important;
    font-size: 0.5625rem !important;
    line-height: 1.15 !important;
    color: var(--v10-text-soft) !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__pub {
    color: var(--v10-text-mute) !important;
  }
}

/* ==========================================================================
   10. MOBILE LIQUID GLASS — header pill + toolbar controls
   ========================================================================== */

@media (max-width: 900px) {
  /* —— Site header: floating pill (profile · logo · menu) —— */
  body.gc-mobile-cal[data-page="games-calendar"] {
    --header-height: 52px;
    --gc-mobile-chrome-gap: 0.55rem;
  }

  body.gc-mobile-cal[data-page="games-calendar"] .site-header {
    top: max(0.45rem, env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: 0 !important;
    width: min(calc(100% - 1.1rem), 26rem) !important;
    max-width: min(calc(100% - 1.1rem), 26rem) !important;
    height: var(--header-height) !important;
    margin: 0 auto !important;
    padding: 0 0.35rem 0 0.45rem !important;
    border-radius: 999px !important;
    overflow: visible !important;
    isolation: isolate !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(10, 10, 16, 0.52) !important;
    backdrop-filter: blur(44px) saturate(190%) brightness(1.06) !important;
    -webkit-backdrop-filter: blur(44px) saturate(190%) brightness(1.06) !important;
    box-shadow: 0 18px 52px -18px rgba(0, 0, 0, 0.62) !important;
  }

  html[data-theme="light"] body.gc-mobile-cal[data-page="games-calendar"] .site-header {
    background: rgba(255, 255, 255, 0.72) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 16px 44px -16px rgba(0, 0, 0, 0.14) !important;
  }

  body.gc-mobile-cal[data-page="games-calendar"] .site-header__inner {
    gap: 0.35rem !important;
  }

  body.gc-mobile-cal[data-page="games-calendar"] .site-brand {
    padding: 0.15rem 0.42rem !important;
    gap: 0.28rem !important;
  }

  body.gc-mobile-cal[data-page="games-calendar"] .site-header .icon-btn.glass,
  body.gc-mobile-cal[data-page="games-calendar"] .site-header__auth .glass-pill--auth,
  body.gc-mobile-cal[data-page="games-calendar"] .site-header__auth .user-menu__trigger {
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.12) inset,
      0 6px 18px -8px rgba(0, 0, 0, 0.45) !important;
  }

  body.gc-mobile-cal[data-page="games-calendar"] .cal-page {
    padding-top: 0.35rem !important;
  }

  body.gc-mobile-cal[data-page="games-calendar"] .gc-app--mobile-ui {
    height: calc(100dvh - var(--header-height) - var(--gc-mobile-chrome-gap) - env(safe-area-inset-top, 0px)) !important;
    max-height: calc(100dvh - var(--header-height) - var(--gc-mobile-chrome-gap) - env(safe-area-inset-top, 0px)) !important;
  }

  /* —— Calendar chrome: transparent shell, rows as glass pills —— */
  .gc-app--mobile-ui .gc-chrome--mobile {
    background: transparent !important;
    border: 0 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    padding: 0.15rem 0.55rem 0.4rem !important;
    gap: 0.42rem !important;
  }

  .gc-app--mobile-ui .gc-toolbar--mobile.glass {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.42rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    overflow: visible !important;
  }

  .gc-app--mobile-ui .gc-toolbar--mobile.glass::before,
  .gc-app--mobile-ui .gc-toolbar--mobile.glass::after {
    display: none !important;
  }

  body.category-page--games:has(.gc-app) .gc-chrome--mobile .gc-toolbar--mobile,
  body.category-page--games:has(.gc-app) .gc-app--mobile-ui .gc-toolbar--mobile.glass {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-top,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-head,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-sub,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-nav,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-scale,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only {
    margin-bottom: 0 !important;
  }

  /* Shared liquid glass surface */
  .gc-app--mobile-ui .gc-nav-cluster--mobile,
  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch,
  .gc-app--mobile-ui .gc-platform-bar__track {
    --glass-blur: 36px;
    background: rgba(255, 255, 255, 0.045) !important;
    background-image: linear-gradient(
      168deg,
      rgba(255, 255, 255, 0.1) 0%,
      rgba(255, 255, 255, 0.02) 42%,
      rgba(255, 255, 255, 0.05) 100%
    ) !important;
    backdrop-filter: blur(36px) saturate(185%) brightness(1.05) !important;
    -webkit-backdrop-filter: blur(36px) saturate(185%) brightness(1.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    border-top-color: rgba(255, 255, 255, 0.2) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.1) inset,
      0 14px 40px -16px rgba(0, 0, 0, 0.55) !important;
  }

  /* Round icon buttons — liquid glass orbs */
  .gc-app--mobile-ui .gc-toolbar__row--sketch-nav .gc-icon-btn--round,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-nav .gc-icon-btn--round {
    background: rgba(255, 255, 255, 0.05) !important;
    background-image: linear-gradient(
      165deg,
      rgba(255, 255, 255, 0.12) 0%,
      rgba(255, 255, 255, 0.02) 55%,
      rgba(255, 255, 255, 0.06) 100%
    ) !important;
    backdrop-filter: blur(28px) saturate(170%) !important;
    -webkit-backdrop-filter: blur(28px) saturate(170%) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-top-color: rgba(255, 255, 255, 0.22) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.14) inset,
      0 10px 28px -10px rgba(0, 0, 0, 0.5) !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--sketch-nav .gc-icon-btn--active,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-nav .gc-icon-btn--active {
    border-color: rgba(var(--v10-accent), 0.45) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.14) inset,
      0 0 0 1px rgba(var(--v10-accent), 0.25),
      0 0 18px rgba(var(--v10-accent), 0.22) !important;
  }

  /* TODAY cluster */
  .gc-app--mobile-ui .gc-nav-cluster--mobile {
    padding: 0.18rem 0.22rem !important;
    gap: 0.12rem !important;
  }

  .gc-app--mobile-ui .gc-nav-cluster--mobile .gc-today {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.12) inset !important;
    font-weight: 800 !important;
    letter-spacing: 0.1em !important;
  }

  .gc-app--mobile-ui .gc-nav-cluster--mobile .gc-nav-btn {
    background: transparent !important;
    border-radius: 50% !important;
  }

  .gc-app--mobile-ui .gc-nav-cluster--mobile .gc-nav-btn:active {
    background: rgba(255, 255, 255, 0.08) !important;
  }

  /* Scale segmented — iOS pill indicator */
  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch {
    padding: 0.2rem !important;
    gap: 0.12rem !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segmented__indicator {
    top: 0.2rem !important;
    left: 0.2rem !important;
    height: calc(100% - 0.4rem) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow:
      0 1px 3px rgba(0, 0, 0, 0.18),
      inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segment {
    font-weight: 700 !important;
    letter-spacing: 0.07em !important;
    color: rgba(255, 255, 255, 0.55) !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segment--active {
    color: #0a0a0c !important;
  }

  /* Platform bar — circular icon chips in one glass pill (fit content) */
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters .gc-toolbar__group--platform,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only .gc-toolbar__group--platform {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters .gc-platform-bar__track,
  .gc-app--mobile-ui .gc-toolbar__row--mobile-filters-only .gc-platform-bar__track {
    min-height: 2.85rem !important;
    padding: 0.28rem 0.38rem !important;
    gap: 0.22rem !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    width: fit-content !important;
    max-width: calc(100vw - 1.5rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
  }

  .gc-app--mobile-ui .gc-platform-bar__track::-webkit-scrollbar {
    display: none !important;
  }

  .gc-app--mobile-ui .gc-platform-chip {
    width: 2.35rem !important;
    min-width: 2.35rem !important;
    height: 2.35rem !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06) inset !important;
  }

  .gc-app--mobile-ui .gc-platform-chip__label,
  .gc-app--mobile-ui .gc-platform-chip__label--all {
    display: none !important;
  }

  .gc-app--mobile-ui .gc-platform-chip__icon {
    width: 1.15rem !important;
    height: 1.15rem !important;
  }

  .gc-app--mobile-ui .gc-platform-chip__icon .gc-platform-mark,
  .gc-app--mobile-ui .gc-platform-chip__icon .gc-platform-mark--img {
    width: 1.15rem !important;
    height: 1.15rem !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--active {
    background: rgba(255, 255, 255, 0.1) !important;
    transform: none !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--all.gc-platform-chip--active {
    box-shadow:
      0 0 0 2px rgba(255, 255, 255, 0.55),
      0 0 14px rgba(255, 255, 255, 0.18) !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--switch1.gc-platform-chip--active,
  .gc-app--mobile-ui .gc-platform-chip--switch2.gc-platform-chip--active {
    box-shadow:
      0 0 0 2px rgba(230, 0, 18, 0.65),
      0 0 16px rgba(230, 0, 18, 0.35) !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--playstation.gc-platform-chip--active {
    box-shadow:
      0 0 0 2px rgba(0, 112, 204, 0.7),
      0 0 16px rgba(0, 112, 204, 0.38) !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--xbox.gc-platform-chip--active {
    box-shadow:
      0 0 0 2px rgba(16, 124, 16, 0.7),
      0 0 16px rgba(16, 124, 16, 0.35) !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--pc.gc-platform-chip--active {
    box-shadow:
      0 0 0 2px rgba(102, 192, 244, 0.65),
      0 0 16px rgba(102, 192, 244, 0.32) !important;
  }

  .gc-app--mobile-ui .gc-platform-chip--metaquest.gc-platform-chip--active {
    box-shadow:
      0 0 0 2px rgba(0, 132, 255, 0.65),
      0 0 16px rgba(0, 132, 255, 0.32) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-nav-cluster--mobile,
  html[data-theme="light"] .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch,
  html[data-theme="light"] .gc-app--mobile-ui .gc-platform-bar__track {
    background: rgba(255, 255, 255, 0.78) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.95) inset,
      0 12px 32px -12px rgba(0, 0, 0, 0.12) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segment {
    color: rgba(0, 0, 0, 0.45) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segment--active {
    color: #0a0a0c !important;
  }
}

/* ==========================================================================
   11. MOBILE MONTH GRID — liquid glass + spinning today ring
   ========================================================================== */

@media (max-width: 900px) {
  /* Glass card shell */
  .gc-app--mobile-ui .gc-body--mobile-month .gc-grid--month-compact {
    margin: 0.15rem 0.55rem 0 !important;
    padding: 0.6rem 0.45rem 0.4rem !important;
    border-radius: var(--v10-radius-lg) !important;
    background: rgba(255, 255, 255, 0.028) !important;
    background-image: linear-gradient(
      168deg,
      rgba(255, 255, 255, 0.06) 0%,
      rgba(255, 255, 255, 0.01) 45%,
      rgba(255, 255, 255, 0.03) 100%
    ) !important;
    backdrop-filter: blur(36px) saturate(170%) !important;
    -webkit-backdrop-filter: blur(36px) saturate(170%) !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-top-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.07) inset,
      0 22px 56px -22px rgba(0, 0, 0, 0.55) !important;
    overflow: visible !important;
  }

  .gc-app--mobile-ui .gc-body--mobile-month .gc-grid--month-compact .gc-grid__body {
    overflow: visible !important;
    padding: 0.4rem 0 0.2rem !important;
    place-items: center !important;
    justify-items: center !important;
    align-items: center !important;
  }

  .gc-app--mobile-ui .gc-body--mobile-month .gc-grid--month-compact .gc-grid__weekdays {
    margin-bottom: 0.15rem !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--compact {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    align-content: center !important;
    place-self: center !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--compact.gc-day--selected {
    background: transparent !important;
    box-shadow: none !important;
  }

  .gc-app--mobile-ui .gc-body--mobile-month .gc-grid--month-compact::before {
    inset: -20% -30% auto -30% !important;
    height: 55% !important;
    background: radial-gradient(55% 75% at 50% 0%, rgba(var(--v10-accent), 0.09), transparent 72%) !important;
  }

  .gc-app--mobile-ui .gc-body--mobile-month .gc-grid--month-compact .gc-grid__weekdays {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
    padding-bottom: 0.45rem !important;
    margin-bottom: 0.3rem !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__head {
    font-family: var(--font-display) !important;
    font-size: 0.6rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    color: var(--v10-text-mute) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__head--sat {
    color: rgb(150, 195, 255) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__head--sun {
    color: rgb(255, 160, 175) !important;
  }

  /* Day numbers — fixed glass orbs, centered in cell */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    inset: auto !important;
    align-self: center !important;
    justify-self: center !important;
    margin: 0 !important;
    transform: none !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--compact .gc-day__num {
    isolation: isolate !important;
    width: 2.4rem !important;
    height: 2.4rem !important;
    min-width: 2.4rem !important;
    min-height: 2.4rem !important;
    max-width: 2.4rem !important;
    max-height: 2.4rem !important;
    font-family: var(--font-display) !important;
    font-size: clamp(0.92rem, 4vw, 1.05rem) !important;
    font-weight: 600 !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    letter-spacing: -0.02em !important;
    line-height: 1 !important;
    border-radius: 50% !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--v10-text) !important;
    padding: 0 !important;
    transition:
      transform 0.22s var(--v10-ease),
      background 0.22s var(--v10-ease),
      color 0.22s var(--v10-ease) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--compact .gc-day__num:active {
    transform: scale(0.92) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today .gc-day__num {
    transform: none !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sat .gc-day__num {
    color: rgb(150, 195, 255) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sun .gc-day__num {
    color: rgb(255, 160, 175) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--other-month .gc-day__num {
    color: rgba(255, 255, 255, 0.22) !important;
    font-weight: 500 !important;
  }

  /* Today — dark fill; ring lives on ::before */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today .gc-day__num,
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today:not(.gc-day--selected) .gc-day__num,
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today.gc-day--selected .gc-day__num {
    color: #fff !important;
    font-weight: 700 !important;
    background: rgba(12, 14, 22, 0.92) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today.gc-day--compact::before {
    display: none !important;
    content: none !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today .gc-day__num::before {
    display: block !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today .gc-day__num {
    z-index: 1 !important;
  }

  /* Selected day — glass fill (ring stays if also today) */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--selected .gc-day__num {
    color: #fff !important;
    background: rgba(var(--v10-accent), 0.22) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.16) inset,
      0 0 0 1px rgba(var(--v10-accent), 0.35) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today.gc-day--selected .gc-day__num {
    background: rgba(255, 255, 255, 0.1) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.18),
      0 0 0 1px rgba(100, 210, 255, 0.24) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today:not(.gc-day--selected) .gc-day__num {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
  }

  /* Release indicator dots */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num--has::after {
    top: 0.2rem !important;
    right: auto !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 4px !important;
    height: 4px !important;
    background: rgb(255, 214, 90) !important;
    box-shadow: 0 0 8px rgba(255, 214, 90, 0.65) !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today .gc-day__num--has::after {
    top: 0.16rem !important;
  }

  /* Month footer — transparent row, glass on each button */
  .gc-app--mobile-ui .gc-body--mobile-month > .gc-month-footer {
    margin: 0.4rem 0.65rem calc(0.55rem + var(--mobile-bar-clearance, 0px)) !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: none !important;
    background-image: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
  }

  .gc-app--mobile-ui .gc-month-footer__link {
    font-family: var(--font-display) !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--v10-text-soft) !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-top-color: rgba(255, 255, 255, 0.16) !important;
    background: rgba(255, 255, 255, 0.04) !important;
    background-image: linear-gradient(
      168deg,
      rgba(255, 255, 255, 0.08) 0%,
      rgba(255, 255, 255, 0.02) 50%,
      rgba(255, 255, 255, 0.05) 100%
    ) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.08) inset,
      0 14px 36px -14px rgba(0, 0, 0, 0.5) !important;
    padding: 0.4rem 0.75rem !important;
    transition: color 0.2s var(--v10-ease), background 0.2s var(--v10-ease) !important;
  }

  .gc-app--mobile-ui .gc-month-footer__link:active {
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--v10-text) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-body--mobile-month .gc-grid--month-compact {
    background: rgba(255, 255, 255, 0.65) !important;
    border-color: rgba(0, 0, 0, 0.07) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.95) inset,
      0 18px 44px -18px rgba(0, 0, 0, 0.1) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today .gc-day__num {
    background: rgba(255, 255, 255, 0.55) !important;
    color: #0a0a0c !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-body--mobile-month > .gc-month-footer {
    background: none !important;
    border: none !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-month-footer__link {
    background: rgba(255, 255, 255, 0.72) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
  }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today.gc-day--compact::before {
    animation: none !important;
    --gc-day-rim-angle: 120deg !important;
  }
}

/* ==========================================================================
   12. MOBILE MONTH FIT — upcoming strip + no vertical scroll
   ========================================================================== */

@media (max-width: 900px) {
  .gc-app--mobile-month-fit.gc-app--mobile-ui {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding-bottom: var(--mobile-bar-clearance, env(safe-area-inset-bottom, 0px)) !important;
    box-sizing: border-box !important;
  }

  .gc-app--mobile-month-fit .gc-chrome--mobile {
    flex-shrink: 0 !important;
    padding-bottom: 0.1rem !important;
  }

  .gc-app--mobile-month-fit .gc-toolbar--mobile.glass {
    gap: 0.34rem !important;
  }

  .gc-app--mobile-month-fit .gc-toolbar__title--sketch-month {
    padding: 0.05rem 0 0.12rem !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming-wrap--mobile {
    display: block !important;
    flex-shrink: 0 !important;
    margin: 0 0.5rem 0.12rem !important;
    padding: 0 !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming-wrap--mobile:empty {
    display: none !important;
    margin: 0 !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--mobile.gc-upcoming--fit {
    margin: 0 !important;
    padding: 0.18rem 0.28rem 0.2rem !important;
    border-radius: var(--v10-radius-md) !important;
    background: rgba(255, 255, 255, 0.03) !important;
    background-image: linear-gradient(
      168deg,
      rgba(255, 255, 255, 0.08) 0%,
      rgba(255, 255, 255, 0.02) 42%,
      rgba(120, 140, 255, 0.04) 100%
    ) !important;
    backdrop-filter: blur(28px) saturate(170%) !important;
    -webkit-backdrop-filter: blur(28px) saturate(170%) !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-top-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.06),
      0 10px 28px -16px rgba(0, 0, 0, 0.45) !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming__head {
    margin: 0 0.08rem 0.22rem !important;
    padding: 0 !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming__head h2 {
    font-family: var(--font-display) !important;
    font-size: 0.54rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    background: linear-gradient(92deg, rgba(255, 255, 255, 0.72) 0%, rgba(168, 198, 255, 0.88) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit:not(.gc-upcoming--month-scroll) .gc-upcoming__track {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 0.34rem !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit:not(.gc-upcoming--month-scroll) .gc-upcoming-card--mobile {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    border-radius: 7px !important;
    overflow: hidden !important;
    box-shadow: 0 6px 16px -8px rgba(0, 0, 0, 0.55) !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile > .gc-cover,
  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile > .gc-cover--poster-upcoming {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 2 / 3 !important;
    border-radius: 7px !important;
    overflow: hidden !important;
    box-shadow: none !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile > .gc-cover .gc-cover__img,
  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile > .gc-cover .gc-cover__fallback {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: inherit !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile .gc-upcoming-card__date {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    margin: 0 !important;
    padding: 0.38rem 0.12rem 0.28rem !important;
    font-family: var(--font-display) !important;
    font-size: 0.46rem !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
    color: rgba(255, 255, 255, 0.95) !important;
    background: linear-gradient(
      180deg,
      rgba(8, 10, 22, 0) 0%,
      rgba(8, 10, 22, 0.72) 45%,
      rgba(8, 10, 22, 0.92) 100%
    ) !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55) !important;
    pointer-events: none !important;
  }

  .gc-app--mobile-month-fit .gc-mobile-stage--month-fit {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  .gc-app--mobile-month-fit .gc-body--mobile-month {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding-bottom: 0 !important;
  }

  .gc-app--mobile-month-fit .gc-body--mobile-month .gc-grid--month-compact {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    margin: 0 0.45rem !important;
    padding: 0.42rem 0.38rem 0.28rem !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .gc-app--mobile-month-fit .gc-body--mobile-month .gc-grid--month-compact .gc-grid__body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    grid-template-rows: repeat(var(--gc-week-rows, 6), minmax(0, 1fr)) !important;
    align-content: stretch !important;
    padding: 0.2rem 0 0.1rem !important;
  }

  .gc-app--mobile-month-fit .gc-grid--month-compact .gc-day--compact .gc-day__num {
    width: clamp(2.15rem, 9.5vw, 2.55rem) !important;
    height: clamp(2.15rem, 9.5vw, 2.55rem) !important;
    min-width: clamp(2.15rem, 9.5vw, 2.55rem) !important;
    min-height: clamp(2.15rem, 9.5vw, 2.55rem) !important;
    max-width: clamp(2.15rem, 9.5vw, 2.55rem) !important;
    max-height: clamp(2.15rem, 9.5vw, 2.55rem) !important;
    font-size: clamp(0.88rem, 3.8vw, 1.02rem) !important;
  }

  .gc-app--mobile-month-fit .gc-grid--month-compact .gc-day--today.gc-day--compact::before {
    width: clamp(2.3rem, 10vw, 2.7rem) !important;
    height: clamp(2.3rem, 10vw, 2.7rem) !important;
  }

  .gc-app--mobile-month-fit .gc-body--mobile-month > .gc-month-footer {
    flex-shrink: 0 !important;
    margin: 0.22rem 0.5rem 0.18rem !important;
    padding: 0 !important;
  }

  .gc-app--mobile-month-fit .gc-offline-banner {
    flex-shrink: 0 !important;
    margin: 0 0.55rem 0.25rem !important;
  }

  html[data-theme="light"] .gc-app--mobile-month-fit .gc-upcoming--fit {
    background: rgba(255, 255, 255, 0.62) !important;
    border-color: rgba(0, 0, 0, 0.07) !important;
  }

  html[data-theme="light"] .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card__date {
    color: rgba(255, 255, 255, 0.98) !important;
  }
}

/* ============================================================
   PREMIUM PANEL v10+ — Apple Senior Designer Level
   Ultra-premium game detail panel & calendar cells
   ============================================================ */

/* ─── Entry Animation ─────────────────────────────────────── */
@keyframes gc-premium-panel-enter {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.95) translateY(12px);
    filter: blur(6px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1) translateY(0);
    filter: blur(0);
  }
}

.gc-game-sheet--sketch {
  animation: gc-premium-panel-enter 0.5s cubic-bezier(0.16, 1, 0.3, 1) both !important;
}

@media (max-width: 900px) {
  .gc-game-sheet--sketch {
    animation-name: gc-panel-sheet-up !important;
  }
}

/* ─── Panel Head ──────────────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__panel-head {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.55rem !important;
  padding: 0.65rem 1rem !important;
  min-height: 56px !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  background: rgba(255,255,255,0.02) !important;
  flex-shrink: 0 !important;
  overflow: visible !important;
}

/* Rainbow accent line at very top of panel */
.gc-game-sheet--sketch .gc-game-sheet__panel-head::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 1.5px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(var(--v10-accent), 0.7) 25%,
    rgba(var(--v10-accent-2), 0.7) 50%,
    rgba(var(--v10-accent-3), 0.5) 75%,
    transparent 100%) !important;
  border-radius: var(--v10-radius-lg) var(--v10-radius-lg) 0 0 !important;
  pointer-events: none !important;
}

/* Status badge — OUT NOW / Upcoming */
.gc-game-sheet--sketch .gc-game-sheet__status {
  padding: 5px 12px !important;
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__status:not(.gc-game-sheet__status--muted) {
  background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(var(--v10-accent-2))) !important;
  color: #001220 !important;
  box-shadow: 0 4px 14px rgba(var(--v10-accent), 0.4), inset 0 1px 0 rgba(255,255,255,0.4) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__status--muted {
  background: rgba(255,255,255,0.06) !important;
  color: var(--v10-text-soft) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
}

/* Actions group */
.gc-game-sheet--sketch .gc-game-sheet__panel-actions {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* Follow — prominent gradient pill */
.gc-game-sheet--sketch .gc-follow--panel-head {
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(var(--v10-accent), 0.4) !important;
  background: linear-gradient(135deg,
    rgba(var(--v10-accent), 0.12),
    rgba(var(--v10-accent-2), 0.08)) !important;
  color: rgb(var(--v10-accent)) !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  gap: 6px !important;
  display: inline-flex !important;
  align-items: center !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-shadow: 0 0 24px rgba(var(--v10-accent), 0.12) !important;
}

.gc-game-sheet--sketch .gc-follow--panel-head:hover {
  background: linear-gradient(135deg,
    rgba(var(--v10-accent), 0.22),
    rgba(var(--v10-accent-2), 0.15)) !important;
  border-color: rgba(var(--v10-accent), 0.7) !important;
  box-shadow: 0 0 32px rgba(var(--v10-accent), 0.28), 0 6px 18px rgba(0,0,0,0.3) !important;
  transform: translateY(-1px) !important;
}

.gc-game-sheet--sketch .gc-follow--panel-head.gc-follow--on {
  background: linear-gradient(135deg,
    rgba(255,100,130,0.16),
    rgba(220,80,110,0.1)) !important;
  border-color: rgba(255,100,130,0.45) !important;
  color: #ff6482 !important;
  box-shadow: 0 0 24px rgba(255,100,130,0.22) !important;
}

.gc-game-sheet--sketch .gc-follow__label {
  line-height: 1 !important;
}

/* Share + Close — glass circles */
.gc-game-sheet--sketch .gc-share--icon,
.gc-game-sheet--sketch .gc-game-sheet__panel-actions > .gc-game-sheet__close {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: var(--v10-text-soft) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}

.gc-game-sheet--sketch .gc-share--icon:hover,
.gc-game-sheet--sketch .gc-game-sheet__panel-actions > .gc-game-sheet__close:hover {
  background: rgba(255,255,255,0.12) !important;
  border-color: rgba(255,255,255,0.22) !important;
  color: var(--v10-text) !important;
  transform: scale(1.08) !important;
}

/* ─── Scroll container ────────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__scroll {
  padding: 10px 12px 16px !important;
  gap: 10px !important;
  display: flex !important;
  flex-direction: column !important;
  overflow-y: auto !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

/* ─── Main 3-column row ───────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__main-row {
  display: grid !important;
  grid-template-columns: 160px minmax(0, 1fr) minmax(180px, 0.88fr) !important;
  gap: 10px !important;
  min-height: 252px !important;
  align-items: stretch !important;
}

/* ─── Poster ──────────────────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__poster {
  position: relative !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,0.6),
    0 0 0 1px rgba(255,255,255,0.08),
    0 0 40px rgba(var(--v10-accent), 0.12) !important;
  background: rgba(255,255,255,0.03) !important;
  min-height: 252px !important;
  display: flex !important;
  align-self: stretch !important;
}

.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover,
.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover--poster-detail {
  width: 100% !important;
  height: 100% !important;
  min-height: 252px !important;
  border-radius: 16px !important;
  border: 0 !important;
  box-shadow: none !important;
  flex: 1 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 16px !important;
  filter: saturate(1.1) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover__fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: 252px !important;
  border-radius: 16px !important;
  font-size: 2.5rem !important;
  font-weight: 800 !important;
}

/* Countdown badge on poster */
.gc-game-sheet--sketch .gc-game-sheet__countdown {
  position: absolute !important;
  bottom: 10px !important;
  left: 10px !important;
  right: 10px !important;
  padding: 5px 8px !important;
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #001220 !important;
  background: linear-gradient(135deg, rgb(var(--v10-accent)), rgb(var(--v10-accent-2))) !important;
  border-radius: 8px !important;
  text-align: center !important;
  box-shadow: 0 4px 12px rgba(var(--v10-accent), 0.5) !important;
  z-index: 2 !important;
}

/* ─── Info card ───────────────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__info-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
  padding: 15px 17px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  background: rgba(255,255,255,0.03) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 12px 32px -16px rgba(0,0,0,0.45) !important;
  min-height: 252px !important;
  align-self: stretch !important;
}

.gc-game-sheet--sketch .gc-game-sheet__title {
  font-size: clamp(1.05rem, 2vw, 1.45rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.12 !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  background: linear-gradient(110deg, #fff 0%, rgba(var(--v10-accent), 0.9) 120%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.gc-game-sheet--sketch .gc-game-sheet__release {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
  margin: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__label {
  font-size: 0.57rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-mute) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__release time {
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: var(--v10-text) !important;
}

/* Studio links — clickable, underline accent */
.gc-game-sheet--sketch .gc-game-sheet__studio {
  margin: 0 !important;
  font-size: 0.8rem !important;
}

.gc-game-sheet--sketch .gc-game-sheet__studio-link {
  text-decoration: none !important;
  color: rgba(255,255,255,0.72) !important;
  font-weight: 600 !important;
  border-bottom: 1px solid rgba(var(--v10-accent), 0.32) !important;
  padding-bottom: 1px !important;
  transition: color 0.2s ease, border-color 0.2s ease !important;
}

.gc-game-sheet--sketch .gc-game-sheet__studio-link:hover {
  color: rgb(var(--v10-accent)) !important;
  border-bottom-color: rgb(var(--v10-accent)) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__studio-sep {
  color: var(--v10-text-mute) !important;
}

/* Platform icons — large colored circles */
.gc-game-sheet--sketch .gc-game-sheet__platform-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  align-items: center !important;
  margin-top: auto !important;
  padding-top: 8px !important;
}

.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-game-sheet__platform,
.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-platform-icons__item,
.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-day-meta__platform {
  width: 32px !important;
  height: 32px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.22s ease !important;
  cursor: default !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-platform-mark,
.gc-game-sheet--sketch .gc-game-sheet__platform-row .gc-platform-mark--img,
.gc-game-sheet--sketch .gc-game-sheet__platform-row img.gc-platform-mark {
  width: 19px !important;
  height: 19px !important;
  filter: none !important;
  object-fit: contain !important;
}

/* Age rating badge */
.gc-game-sheet--sketch .gc-age-badge {
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
}

/* ─── Wishlist card (3rd column) ──────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__wishlist,
.gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 15px 13px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(var(--v10-accent), 0.14) !important;
  background: rgba(var(--v10-accent), 0.03) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  box-shadow:
    inset 0 1px 0 rgba(var(--v10-accent), 0.07),
    0 12px 32px -16px rgba(0,0,0,0.45) !important;
  min-height: 252px !important;
  align-self: stretch !important;
}

.gc-game-sheet--sketch .gc-game-sheet__wishlist-label,
.gc-game-sheet--sketch .gc-game-sheet__wishlist h3 {
  font-size: 0.57rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.7) !important;
  margin: 0 0 10px !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  flex: 0 0 auto !important;
  justify-content: flex-start !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-row {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 9px 11px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  background: rgba(255,255,255,0.03) !important;
  text-decoration: none !important;
  color: var(--v10-text) !important;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-row:hover {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(var(--v10-accent), 0.28) !important;
  transform: translateX(3px) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2) !important;
}

/* Store brand colors */
.gc-game-sheet__store-row--nintendo .gc-game-sheet__store-icon { color: #E60012 !important; }
.gc-game-sheet__store-row--ps .gc-game-sheet__store-icon { color: #00439C !important; }
.gc-game-sheet__store-row--xbox .gc-game-sheet__store-icon { color: #107C10 !important; }
.gc-game-sheet__store-row--pc .gc-game-sheet__store-icon,
.gc-game-sheet__store-row--steam .gc-game-sheet__store-icon { color: #A3C8E8 !important; }
.gc-game-sheet__store-row--gog .gc-game-sheet__store-icon { color: #86328A !important; }
.gc-game-sheet__store-row--epic .gc-game-sheet__store-icon { color: #C8D8E8 !important; }

.gc-game-sheet--sketch .gc-game-sheet__store-icon {
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
  border-radius: 7px !important;
  object-fit: contain !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-name {
  flex: 1 1 auto !important;
  font-size: 0.73rem !important;
  font-weight: 600 !important;
  color: var(--v10-text) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  min-width: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__store-go {
  width: 14px !important;
  height: 14px !important;
  opacity: 0.42 !important;
  flex-shrink: 0 !important;
  color: var(--v10-text-soft) !important;
}

/* Empty wishlist state */
.gc-game-sheet--sketch .gc-game-sheet__wishlist--empty {
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

.gc-game-sheet--sketch .gc-game-sheet__wishlist--empty .gc-wishlist-empty {
  color: var(--v10-text-mute) !important;
  font-size: 0.78rem !important;
  line-height: 1.5 !important;
}

/* ─── Synopsis ────────────────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__synopsis.gc-game-sheet__synopsis-card {
  padding: 14px 18px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  background: rgba(255,255,255,0.025) !important;
  max-height: none !important;
  margin: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__synopsis-label {
  display: block !important;
  margin-bottom: 8px !important;
  font-size: 0.57rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.7) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__synopsis p {
  margin: 0 !important;
  font-size: 0.84rem !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.78) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__synopsis--fallback p {
  font-style: italic !important;
  color: rgba(255,255,255,0.52) !important;
}

/* ─── Media gallery ───────────────────────────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__media-wrap {
  padding: 14px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  background: rgba(255,255,255,0.02) !important;
}

.gc-game-sheet--sketch .gc-game-media {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  gap: 8px !important;
}

.gc-game-sheet--sketch .gc-game-media__group-title,
.gc-game-sheet--sketch .gc-game-media__heading {
  font-size: 0.57rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.7) !important;
  margin-bottom: 4px !important;
}

.gc-game-sheet--sketch .gc-game-media__track {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  overflow-x: auto !important;
  padding-bottom: 4px !important;
  scrollbar-width: thin !important;
  scroll-padding-inline: 2px !important;
}

.gc-game-sheet--sketch .gc-game-media__card {
  flex: 0 0 auto !important;
  width: min(156px, 32vw) !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  overflow: hidden !important;
  transition: transform 0.3s cubic-bezier(0.16,1,0.3,1), border-color 0.3s ease, box-shadow 0.3s ease !important;
  cursor: pointer !important;
}

.gc-game-sheet--sketch .gc-game-media__card:hover {
  transform: scale(1.04) !important;
  border-color: rgba(var(--v10-accent), 0.35) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important;
  z-index: 4 !important;
}

.gc-game-sheet--sketch .gc-game-media__card--trailer {
  width: min(200px, 38vw) !important;
  border-color: rgba(var(--v10-accent), 0.2) !important;
}

.gc-game-sheet--sketch .gc-game-media__card--trailer:hover {
  border-color: rgba(var(--v10-accent), 0.5) !important;
  box-shadow: 0 8px 28px rgba(var(--v10-accent), 0.25), 0 16px 40px rgba(0,0,0,0.45) !important;
}

.gc-game-sheet--sketch .gc-game-media__label {
  font-size: 0.58rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 5px 8px !important;
}

/* ─── Related games ───────────────────────────────────────── */
.gc-game-sheet--sketch .gc-related-games {
  padding: 14px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  background: rgba(255,255,255,0.02) !important;
  margin-top: 0 !important;
}

.gc-game-sheet--sketch .gc-related-games__title {
  font-size: 0.57rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.7) !important;
  margin-bottom: 10px !important;
}

.gc-game-sheet--sketch .gc-related-games__list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.gc-game-sheet--sketch .gc-related-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 5px 10px 5px 5px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  background: rgba(255,255,255,0.04) !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  color: var(--v10-text) !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.gc-game-sheet--sketch .gc-related-chip:hover {
  background: rgba(var(--v10-accent), 0.08) !important;
  border-color: rgba(var(--v10-accent), 0.3) !important;
  color: rgb(var(--v10-accent)) !important;
  transform: translateY(-1px) !important;
}

.gc-game-sheet--sketch .gc-related-chip__art {
  width: 26px !important;
  height: 34px !important;
  border-radius: 5px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

/* ─── Footer row (dev chip + follow icon) ─────────────────── */
.gc-game-sheet--sketch .gc-game-sheet__sketch-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  padding: 8px 2px 0 !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 7px 14px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  background: rgba(255,255,255,0.04) !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  color: var(--v10-text) !important;
  text-decoration: none !important;
  transition: all 0.22s ease !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip:hover {
  background: rgba(var(--v10-accent), 0.08) !important;
  border-color: rgba(var(--v10-accent), 0.32) !important;
  color: rgb(var(--v10-accent)) !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip__type {
  font-weight: 800 !important;
  font-size: 0.58rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--v10-text-mute) !important;
  flex-shrink: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip__name {
  font-weight: 700 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  min-width: 0 !important;
}

.gc-game-sheet--sketch .gc-game-sheet__sketch-footer-actions {
  flex-shrink: 0 !important;
}

.gc-game-sheet--sketch .gc-follow--footer {
  width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  min-width: 38px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  cursor: pointer !important;
  color: var(--v10-text-soft) !important;
  transition: all 0.22s ease !important;
}

.gc-game-sheet--sketch .gc-follow--footer:hover {
  background: rgba(var(--v10-accent), 0.1) !important;
  border-color: rgba(var(--v10-accent), 0.4) !important;
  color: rgb(var(--v10-accent)) !important;
  transform: scale(1.08) !important;
}

.gc-game-sheet--sketch .gc-follow--footer.gc-follow--on {
  background: rgba(255,100,130,0.1) !important;
  border-color: rgba(255,100,130,0.35) !important;
  color: #ff6482 !important;
}

/* ─── Mobile responsive ───────────────────────────────────── */
@media (max-width: 820px) {
  .gc-game-sheet--sketch .gc-game-sheet__main-row {
    grid-template-columns: 110px minmax(0, 1fr) !important;
    grid-template-areas:
      "poster info"
      "wishlist wishlist" !important;
    min-height: 0 !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__poster {
    grid-area: poster !important;
    min-height: 165px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover,
  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover--poster-detail,
  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover__img {
    min-height: 165px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__info-card {
    grid-area: info !important;
    min-height: 165px !important;
    padding: 12px 13px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__wishlist,
  .gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
    grid-area: wishlist !important;
    min-height: 0 !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    padding: 10px 12px !important;
    align-items: center !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__wishlist-label,
  .gc-game-sheet--sketch .gc-game-sheet__wishlist h3 {
    width: 100% !important;
    margin-bottom: 4px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__store-list {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    flex: 1 !important;
    gap: 5px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__store-row {
    flex: 1 1 auto !important;
    min-width: 120px !important;
  }
}

/* ─── Light theme ─────────────────────────────────────────── */
html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__panel-head {
  background: rgba(0,0,0,0.02) !important;
  border-color: rgba(0,0,0,0.07) !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-follow--panel-head {
  border-color: rgba(0,80,180,0.35) !important;
  background: rgba(0,80,180,0.06) !important;
  color: #0060d0 !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__info-card {
  background: rgba(255,255,255,0.68) !important;
  border-color: rgba(0,0,0,0.07) !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__title {
  background: linear-gradient(110deg, #0a1a40 0%, #0b67c8 120%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__studio-link {
  color: rgba(0,0,0,0.65) !important;
  border-bottom-color: rgba(0,80,180,0.3) !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__wishlist,
html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
  background: rgba(0,60,140,0.04) !important;
  border-color: rgba(0,60,140,0.12) !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__store-row {
  background: rgba(255,255,255,0.72) !important;
  border-color: rgba(0,0,0,0.07) !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__synopsis.gc-game-sheet__synopsis-card {
  background: rgba(255,255,255,0.7) !important;
  border-color: rgba(0,0,0,0.07) !important;
}

html[data-theme="light"] .gc-game-sheet--sketch .gc-game-sheet__synopsis p {
  color: rgba(0,0,0,0.72) !important;
}

/* ─── Calendar cells — platform icon colors ───────────────── */

/* Remove white filter on platform icons in calendar cells —
   show the brand colors defined in the SVG/PNG */
.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark,
.gc-day-spotlight__platforms .gc-day-meta__platform .gc-platform-mark--img,
.gc-day-meta__platforms .gc-day-meta__platform .gc-platform-mark--img,
.gc-day-meta__platforms .gc-day-meta__platform svg.gc-platform-mark {
  filter: none !important;
  opacity: 1 !important;
}

/* Nintendo icons — keep red */
.gc-day-meta__platform--switch1 .gc-platform-mark,
.gc-day-meta__platform--switch2 .gc-platform-mark,
.gc-day-meta__platform--switch1 .gc-platform-mark--img,
.gc-day-meta__platform--switch2 .gc-platform-mark--img {
  filter: none !important;
  max-width: 28px !important;
}

/* ─── Cell spotlight — title + studio more readable ───────── */
.gc-day-spotlight__title {
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
  color: #fff !important;
}

.gc-day-spotlight__studios {
  font-size: 0.6rem !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,0.72) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.7) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Trio/duo cards — title + studio readable */
.gc-day-trio__title {
  font-size: 0.64rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
}

.gc-day-trio__studios {
  font-size: 0.55rem !important;
  color: rgba(255,255,255,0.65) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.7) !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  display: -webkit-box !important;
}

/* ─── Entity pages — premium look ────────────────────────── */
.gc-entity-page .gc-entity-hero {
  border-radius: 22px !important;
  border: 1px solid var(--v10-border-strong) !important;
  background: rgba(10,12,22,0.85) !important;
  backdrop-filter: blur(40px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%) !important;
  box-shadow:
    0 24px 60px rgba(0,0,0,0.55),
    0 0 0 1px rgba(255,255,255,0.04) inset !important;
  overflow: hidden !important;
}

.gc-entity-hero__collage {
  border-radius: 16px !important;
  overflow: hidden !important;
}

.gc-entity-hero__type {
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.8) !important;
}

.gc-entity-hero__name {
  font-size: clamp(1.4rem, 4vw, 2.4rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  background: linear-gradient(110deg, #fff 0%, rgba(var(--v10-accent), 0.85) 120%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.gc-entity-hero__follow,
.gc-entity-hero__follow-circle {
  border-radius: 999px !important;
  border: 1px solid rgba(var(--v10-accent), 0.35) !important;
  background: rgba(var(--v10-accent), 0.08) !important;
  color: rgb(var(--v10-accent)) !important;
  font-weight: 700 !important;
  transition: all 0.25s ease !important;
}

.gc-entity-hero__follow:hover,
.gc-entity-hero__follow-circle:hover {
  background: rgba(var(--v10-accent), 0.18) !important;
  border-color: rgba(var(--v10-accent), 0.65) !important;
  box-shadow: 0 0 24px rgba(var(--v10-accent), 0.25) !important;
}

.gc-entity-page .gc-entity-card {
  border-radius: 16px !important;
  border: 1px solid var(--v10-border) !important;
  background: var(--v10-surface) !important;
  transition: all 0.3s cubic-bezier(0.16,1,0.3,1) !important;
}

.gc-entity-page .gc-entity-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(var(--v10-accent), 0.3) !important;
  box-shadow:
    0 16px 40px rgba(0,0,0,0.35),
    0 0 0 1px rgba(var(--v10-accent), 0.12) !important;
}

html[data-theme="light"] .gc-entity-hero__follow,
html[data-theme="light"] .gc-entity-hero__follow-circle {
  border-color: rgba(0,80,180,0.35) !important;
  background: rgba(0,80,180,0.06) !important;
  color: #0060d0 !important;
}

/* ─── PREMIUM FIXES ────────────────────────────────────────── */

/* Remove old bullet circle before store rows */
.gc-game-sheet--sketch .gc-game-sheet__store-row::before {
  display: none !important;
  content: none !important;
}

/* Follow button — ensure full text visible */
.gc-game-sheet--sketch .gc-follow--panel-head {
  min-width: 90px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* Store icon — add bg tint per platform */
.gc-game-sheet__store-row--nintendo .gc-game-sheet__store-icon {
  background: rgba(230,0,18,0.1) !important;
  border-radius: 7px !important;
  padding: 2px !important;
}
.gc-game-sheet__store-row--ps .gc-game-sheet__store-icon {
  background: rgba(0,67,156,0.1) !important;
  border-radius: 7px !important;
  padding: 2px !important;
}
.gc-game-sheet__store-row--xbox .gc-game-sheet__store-icon {
  background: rgba(16,124,16,0.1) !important;
  border-radius: 7px !important;
  padding: 2px !important;
}
.gc-game-sheet__store-row--pc .gc-game-sheet__store-icon,
.gc-game-sheet__store-row--steam .gc-game-sheet__store-icon {
  background: rgba(163,200,232,0.1) !important;
  border-radius: 7px !important;
  padding: 2px !important;
}

/* Panel width tweak for 1024px panel — ensure it doesn't clip at borders */
.gc-game-sheet.gc-game-sheet--sketch {
  width: min(1040px, 94vw) !important;
}

/* Poster — hard-contain within grid cell */
.gc-game-sheet--sketch .gc-game-sheet__main-row {
  grid-template-columns: 170px minmax(0, 1fr) minmax(200px, 0.85fr) !important;
}
.gc-game-sheet--sketch .gc-game-sheet__poster {
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
}

/* Store go arrow — cleaner chevron */
.gc-game-sheet--sketch .gc-game-sheet__store-go {
  transition: transform 0.2s ease, opacity 0.2s ease !important;
}
.gc-game-sheet--sketch .gc-game-sheet__store-row:hover .gc-game-sheet__store-go {
  transform: translateX(2px) !important;
  opacity: 0.7 !important;
}

/* Media visual min-height */
.gc-game-sheet--sketch .gc-game-media__visual {
  min-height: 80px !important;
}

/* Synopsis — match info card height if short */
.gc-game-sheet--sketch .gc-game-sheet__synopsis.gc-game-sheet__synopsis-card {
  max-height: 150px !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(var(--v10-accent), 0.3) transparent !important;
}

/* Day cells — ensure title overlay fills bottom */
.gc-day-spotlight__footer {
  width: 100% !important;
  padding: 0.5rem 0.55rem 0.45rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

/* === ENTITY PAGE PREMIUM === */
.gc-entity-hero.glass{position:relative!important;display:grid!important;grid-template-columns:1fr auto!important;min-height:min(420px,52vh)!important;max-height:min(500px,58vh)!important;border-radius:var(--v10-radius-lg)!important;border:1px solid var(--v10-border-strong)!important;background:rgba(10,12,22,.92)!important;backdrop-filter:blur(40px) saturate(180%)!important;-webkit-backdrop-filter:blur(40px) saturate(180%)!important;box-shadow:0 32px 80px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.04) inset,0 0 80px rgba(var(--v10-accent),.12)!important;overflow:hidden!important;margin-bottom:1.5rem!important;}
.gc-entity-hero.glass::before{content:""!important;position:absolute!important;top:-30%!important;left:-10%!important;width:60%!important;height:160%!important;background:radial-gradient(ellipse at 30% 40%,rgba(var(--v10-accent),.22) 0%,rgba(var(--v10-accent-2),.1) 35%,transparent 65%)!important;pointer-events:none!important;z-index:0!important;}
.gc-entity-hero.glass::after{content:""!important;position:absolute!important;top:0!important;left:0!important;right:0!important;height:1.5px!important;background:linear-gradient(90deg,transparent 0%,rgba(var(--v10-accent),.8) 25%,rgba(var(--v10-accent-2),.7) 50%,rgba(var(--v10-accent-3),.5) 75%,transparent 100%)!important;z-index:5!important;pointer-events:none!important;}
.gc-entity-hero__layout{display:flex!important;flex-direction:column!important;justify-content:flex-end!important;padding:2rem 2.5rem 2rem!important;position:relative!important;z-index:2!important;gap:.85rem!important;}
.gc-entity-hero__main{display:flex!important;flex-direction:column!important;gap:.85rem!important;justify-content:flex-end!important;height:100%!important;}
.gc-entity-hero__type,.gc-entity-hero__type--desktop{display:inline-flex!important;align-items:center!important;padding:4px 12px!important;border-radius:999px!important;border:1px solid rgba(var(--v10-accent),.35)!important;background:rgba(var(--v10-accent),.1)!important;color:rgb(var(--v10-accent))!important;font-size:.58rem!important;font-weight:800!important;letter-spacing:.2em!important;text-transform:uppercase!important;align-self:flex-start!important;}
.gc-entity-hero__identity{display:flex!important;align-items:center!important;gap:1rem!important;}
.gc-entity-hero__logo,.gc-entity-hero__logo--desktop{width:56px!important;height:56px!important;min-width:56px!important;border-radius:14px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 8px 24px rgba(0,0,0,.3)!important;flex-shrink:0!important;overflow:hidden!important;}
.gc-entity-hero__logo-fallback{font-size:1.25rem!important;font-weight:800!important;background:linear-gradient(135deg,rgb(var(--v10-accent)),rgb(var(--v10-accent-2)))!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;}
.gc-entity-hero__titles{display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important;}
h1.gc-entity-hero__title--desktop,.gc-entity-hero h1{font-size:clamp(1.8rem,4.5vw,3.2rem)!important;font-weight:800!important;letter-spacing:-.035em!important;line-height:1.05!important;margin:0!important;background:linear-gradient(110deg,#fff 0%,rgba(var(--v10-accent),.85) 120%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.gc-entity-hero__count,.gc-entity-hero__count--desktop{font-size:.78rem!important;font-weight:600!important;color:var(--v10-text-soft)!important;letter-spacing:.04em!important;margin:0!important;}
.gc-entity-hero__actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;}
.gc-entity-hero__follow{display:inline-flex!important;align-items:center!important;gap:7px!important;height:40px!important;padding:0 18px!important;border-radius:999px!important;border:1px solid rgba(var(--v10-accent),.4)!important;background:linear-gradient(135deg,rgba(var(--v10-accent),.12),rgba(var(--v10-accent-2),.08))!important;color:rgb(var(--v10-accent))!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;cursor:pointer!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important;}
.gc-entity-hero__follow:hover{background:linear-gradient(135deg,rgba(var(--v10-accent),.22),rgba(var(--v10-accent-2),.16))!important;border-color:rgba(var(--v10-accent),.7)!important;transform:translateY(-1px)!important;box-shadow:0 0 36px rgba(var(--v10-accent),.28)!important;}
.gc-entity-hero__follow.is-on{background:rgba(255,100,130,.12)!important;border-color:rgba(255,100,130,.42)!important;color:#ff6482!important;}
.gc-entity-hero__collage{position:relative!important;width:min(400px,42vw)!important;min-height:min(420px,52vh)!important;max-height:min(500px,58vh)!important;overflow:hidden!important;border-radius:0 var(--v10-radius-lg) var(--v10-radius-lg) 0!important;}
.gc-entity-hero__collage::before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(10,12,22,.95) 0%,rgba(10,12,22,.25) 25%,transparent 55%)!important;z-index:2!important;pointer-events:none!important;}
.gc-entity-hero__poster{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;}
.gc-entity-hero__poster img,.gc-entity-hero__poster-img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;filter:saturate(1.1)!important;}
@media(max-width:820px){.gc-entity-hero.glass{grid-template-columns:1fr!important;max-height:none!important;min-height:0!important;}.gc-entity-hero__collage{width:100%!important;min-height:220px!important;max-height:260px!important;border-radius:var(--v10-radius-lg) var(--v10-radius-lg) 0 0!important;order:-1!important;}.gc-entity-hero__collage::before{background:linear-gradient(180deg,rgba(10,12,22,0) 0%,rgba(10,12,22,.8) 100%)!important;}.gc-entity-hero__layout{padding:1.2rem 1.2rem 1.5rem!important;}h1.gc-entity-hero__title--desktop,.gc-entity-hero h1{font-size:clamp(1.4rem,6vw,2rem)!important;white-space:normal!important;}}
html[data-theme="light"] .gc-entity-hero.glass{background:rgba(255,255,255,.94)!important;border-color:rgba(0,0,0,.08)!important;}
html[data-theme="light"] h1.gc-entity-hero__title--desktop,html[data-theme="light"] .gc-entity-hero h1{background:linear-gradient(110deg,#0a1a40 0%,#0b67c8 120%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;}

/* === ENTITY LAYOUT FIX — layout is flex-row, collage on right === */
.gc-entity-hero__layout {
  flex-direction: row !important;
  align-items: stretch !important;
  padding: 0 !important;
  gap: 0 !important;
  height: 100% !important;
}

.gc-entity-hero__main {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: 2rem 2.5rem 2rem !important;
  gap: .85rem !important;
  position: relative !important;
  z-index: 2 !important;
}

/* Collage — fixed right panel inside layout */
.gc-entity-hero__collage {
  flex: 0 0 min(380px, 38vw) !important;
  width: min(380px, 38vw) !important;
  min-height: 100% !important;
  border-radius: 0 var(--v10-radius-lg) var(--v10-radius-lg) 0 !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Make hero a fixed height container */
.gc-entity-hero.glass {
  display: flex !important;
  flex-direction: column !important;
  min-height: min(420px, 52vh) !important;
  max-height: min(500px, 58vh) !important;
}

/* Layout fills flex grow */
.gc-entity-hero__layout {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: row !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

/* Gradient on main panel side */
.gc-entity-hero__main::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse at 20% 50%, rgba(var(--v10-accent),.18) 0%, transparent 65%) !important;
  pointer-events: none !important;
  z-index: -1 !important;
}

@media(max-width: 820px) {
  .gc-entity-hero.glass {
    min-height: 0 !important;
    max-height: none !important;
  }
  .gc-entity-hero__layout {
    flex-direction: column !important;
  }
  .gc-entity-hero__collage {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-height: 200px !important;
    max-height: 250px !important;
    border-radius: var(--v10-radius-lg) var(--v10-radius-lg) 0 0 !important;
    order: -1 !important;
  }
  .gc-entity-hero__main {
    padding: 1.2rem 1.2rem 1.5rem !important;
  }
}

/* ============================================================
   MOBILE PREMIUM PASS — v10+
   Safe area, spacing, upcoming strip, calendar dots, aesthetics
   ============================================================ */

@media (max-width: 900px) {

  /* ── 1. BOTTOM SAFE AREA ──────────────────────────────── */
  /* Generous bottom breathing room for browser bars */
  :root {
    --mobile-bottom-clear: max(32px, calc(env(safe-area-inset-bottom, 0px) + 24px));
  }

  /* App container — scrollable views keep clearance on the scroller, not a global app pad */
  .gc-app--mobile-ui:not(.gc-app--mobile-week-fit):not(.gc-app--mobile-day-fit):not(.gc-app--mobile-agenda-fit):not(.gc-app--mobile-myweek-fit):not(.gc-app--mobile-year-fit),
  .gc-app--mobile-month-fit:not(.gc-app--mobile-week-fit):not(.gc-app--mobile-day-fit):not(.gc-app--mobile-agenda-fit):not(.gc-app--mobile-myweek-fit):not(.gc-app--mobile-year-fit) {
    padding-bottom: 0 !important;
  }

  .gc-app--mobile-week-fit,
  .gc-app--mobile-day-fit,
  .gc-app--mobile-agenda-fit,
  .gc-app--mobile-myweek-fit,
  .gc-app--mobile-year-fit {
    padding-bottom: var(--mobile-bottom-clear) !important;
  }

  /* Month footer — safe area only (no stacked browser-bar margin) */
  .gc-app--mobile-ui .gc-body--mobile-month > .gc-month-footer {
    margin-bottom: 0 !important;
    padding-bottom: max(0.5rem, env(safe-area-inset-bottom, 0px)) !important;
  }

  .gc-app--mobile-month-fit .gc-body--mobile-month > .gc-month-footer {
    margin: 0.3rem 0.08rem 0 !important;
    padding-bottom: max(0.5rem, env(safe-area-inset-bottom, 0px)) !important;
  }

  /* Month footer links — bigger tap targets */
  .gc-app--mobile-ui .gc-month-footer__link,
  .gc-app--mobile-month-fit .gc-month-footer__link {
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    padding: 0.48rem 1.15rem !important;
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
  }

  /* ── 2. TOP HEADER AREA ─────────────────────────────────── */
  /* "June 2026" — bigger, gradient gradient */
  .gc-toolbar__title--sketch-month,
  .gc-app--mobile-ui .gc-toolbar__title--mobile {
    font-size: clamp(1.5rem, 8vw, 2rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    background: linear-gradient(110deg, #fff 20%, rgba(var(--v10-accent), 0.9) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
  }

  /* ── 3. UPCOMING STRIP ───────────────────────────────────── */
  /* Full-width cards with title overlay — more cinematic */
  .gc-upcoming-wrap--mobile,
  .gc-upcoming--mobile {
    padding: 0 !important;
  }

  .gc-upcoming--fit .gc-upcoming__head {
    padding: 0.2rem 0.65rem 0.1rem !important;
  }

  .gc-upcoming--fit .gc-upcoming__head h2 {
    font-size: 0.57rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color: rgba(var(--v10-accent), 0.8) !important;
  }

  /* Upcoming cards — taller, more cover visible */
  .gc-upcoming--fit .gc-upcoming-card--mobile,
  .gc-upcoming-card--mobile {
    border-radius: 14px !important;
    overflow: hidden !important;
    position: relative !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important;
    transition: transform 0.3s cubic-bezier(0.16,1,0.3,1) !important;
  }

  .gc-upcoming--fit .gc-upcoming-card--mobile:active {
    transform: scale(0.97) !important;
  }

  /* Date label — accent treatment */
  .gc-upcoming--fit .gc-upcoming-card__date,
  .gc-upcoming-card__date {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    padding: 1.2rem 0.55rem 0.45rem !important;
    background: linear-gradient(180deg, transparent, rgba(0,0,0,0.88)) !important;
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    text-align: center !important;
    color: rgba(var(--v10-accent), 0.95) !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.6) !important;
  }

  /* ── 4. CALENDAR GRID DOTS ───────────────────────────────── */
  /* Dot indicators — use platform brand accent colors */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num--has::after {
    background: rgba(var(--v10-accent), 0.9) !important;
    box-shadow: 0 0 6px rgba(var(--v10-accent), 0.5) !important;
    width: 5px !important;
    height: 5px !important;
  }

  /* SAT dot — blue */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sat .gc-day__num--has::after {
    background: rgba(100, 160, 255, 0.9) !important;
    box-shadow: 0 0 6px rgba(100, 160, 255, 0.5) !important;
  }

  /* SUN dot — pink */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sun .gc-day__num--has::after {
    background: rgba(255, 110, 160, 0.9) !important;
    box-shadow: 0 0 6px rgba(255, 110, 160, 0.5) !important;
  }

  /* Day numbers — larger tap targets, better contrast */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num {
    font-size: clamp(0.92rem, 4vw, 1.05rem) !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: -0.01em !important;
    min-width: 36px !important;
    min-height: 36px !important;
  }

  /* SAT — blue tint */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sat .gc-day__num {
    color: rgba(120, 180, 255, 0.95) !important;
  }

  /* SUN — pink tint */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sun .gc-day__num {
    color: rgba(255, 110, 155, 0.95) !important;
  }

  /* Today — rainbow conic ring, larger */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--today.gc-day--compact::before {
    width: 40px !important;
    height: 40px !important;
  }

  .gc-app--mobile-month-fit .gc-grid--month-compact .gc-day--today.gc-day--compact::before {
    width: clamp(2.4rem, 10.5vw, 2.8rem) !important;
    height: clamp(2.4rem, 10.5vw, 2.8rem) !important;
  }

  /* ── 5. VIEW TABS ───────────────────────────────────────── */
  /* DAY/WEEK/MONTH etc — cleaner pill */
  .gc-app--mobile-ui .gc-segmented--view,
  .gc-segmented--mobile-scale-sketch {
    border-radius: 999px !important;
  }

  /* Active tab — gradient accent */
  .gc-app--mobile-ui .gc-segmented--view .gc-segmented__btn--active,
  .gc-segmented--mobile-scale-sketch .gc-segmented__btn--active {
    background: linear-gradient(135deg,
      rgba(var(--v10-accent), 0.22),
      rgba(var(--v10-accent-2), 0.14)) !important;
    border: 1px solid rgba(var(--v10-accent), 0.38) !important;
    color: rgb(var(--v10-accent)) !important;
    font-weight: 800 !important;
    box-shadow: 0 0 14px rgba(var(--v10-accent), 0.2) !important;
  }

  /* ── 6. PLATFORM PILLS ──────────────────────────────────── */
  .gc-app--mobile-ui .gc-platform-bar__track {
    padding: 0.3rem 0.2rem !important;
    gap: 6px !important;
  }

  /* Platform chip — active state glow */
  .gc-app--mobile-ui .gc-platform-chip--active {
    box-shadow:
      0 0 0 1.5px rgba(var(--v10-accent), 0.4),
      0 0 16px rgba(var(--v10-accent), 0.2),
      inset 0 1px 0 rgba(255,255,255,0.15) !important;
  }

  /* Nintendo chip active — red glow */
  .gc-app--mobile-ui .gc-platform-chip--switch1.gc-platform-chip--active,
  .gc-app--mobile-ui .gc-platform-chip--switch2.gc-platform-chip--active {
    box-shadow:
      0 0 0 1.5px rgba(230,0,18,0.5),
      0 0 16px rgba(230,0,18,0.25),
      inset 0 1px 0 rgba(255,255,255,0.15) !important;
  }

  /* PlayStation — blue glow */
  .gc-app--mobile-ui .gc-platform-chip--playstation.gc-platform-chip--active {
    box-shadow:
      0 0 0 1.5px rgba(0,67,156,0.55),
      0 0 16px rgba(0,67,156,0.25),
      inset 0 1px 0 rgba(255,255,255,0.1) !important;
  }

  /* Xbox — green glow */
  .gc-app--mobile-ui .gc-platform-chip--xbox.gc-platform-chip--active {
    box-shadow:
      0 0 0 1.5px rgba(16,124,16,0.55),
      0 0 16px rgba(16,124,16,0.25),
      inset 0 1px 0 rgba(255,255,255,0.1) !important;
  }

  /* ── 7. SCROLL AREA ─────────────────────────────────────── */
  /* Smooth overscroll with rubber-band effect */
  .gc-app--mobile-ui .gc-body--mobile-month,
  .gc-body--mobile {
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Grid background — subtle card feel */
  .gc-app--mobile-ui .gc-grid--month-compact {
    border-radius: 20px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,0.07) !important;
    background: rgba(255,255,255,0.025) !important;
    backdrop-filter: blur(24px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(160%) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.07),
      0 20px 50px -20px rgba(0,0,0,0.45) !important;
    margin: 0 0.5rem !important;
    padding: 0.35rem 0.4rem 0.5rem !important;
  }

  /* ── 8. HEADER BUTTONS ──────────────────────────────────── */
  /* Favorites heart button */
  .gc-app--mobile-ui .gc-fav-btn,
  .gc-app--mobile-ui [data-cal-fav],
  .gc-app--mobile-ui .gc-toolbar__fav-btn {
    transition: transform 0.2s cubic-bezier(0.16,1,0.3,1), color 0.2s ease !important;
  }

  .gc-app--mobile-ui .gc-fav-btn:active,
  .gc-app--mobile-ui [data-cal-fav]:active {
    transform: scale(1.25) !important;
  }

  /* Settings gear */
  .gc-app--mobile-ui .gc-icon-btn--settings {
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 50% !important;
    transition: all 0.2s ease !important;
  }

  /* ── 9. LIGHT THEME ─────────────────────────────────────── */
  html[data-theme="light"] .gc-app--mobile-ui .gc-grid--month-compact {
    background: rgba(255,255,255,0.72) !important;
    border-color: rgba(0,0,0,0.07) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.95),
      0 20px 50px -20px rgba(0,0,0,0.12) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sat .gc-day__num {
    color: rgba(20, 80, 200, 0.9) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-grid--month-compact .gc-day--sun .gc-day__num {
    color: rgba(200, 40, 80, 0.9) !important;
  }

  html[data-theme="light"] .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num--has::after {
    background: rgba(0, 100, 220, 0.7) !important;
    box-shadow: 0 0 6px rgba(0, 100, 220, 0.3) !important;
  }

} /* end @media max-width: 900px */

/* ── 10. MOBILE PANEL (game detail on mobile) ────────────── */
@media (max-width: 900px) {
  .gc-game-sheet--sketch {
    border-radius: 22px 22px 0 0 !important;
    max-height: calc(96vh - env(safe-area-inset-bottom, 0px)) !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    top: auto !important;
    width: 100% !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__scroll {
    padding-bottom: calc(1rem + env(safe-area-inset-bottom, 0px)) !important;
  }

  /* Grab handle */
  .gc-game-sheet--sketch .gc-game-sheet__grab {
    display: block !important;
    width: 36px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,0.2) !important;
    margin: 0.5rem auto 0 !important;
  }

  /* Mobile bar hidden when panel head is visible */
  .gc-game-sheet--sketch .gc-game-sheet__mobile-bar {
    display: none !important;
  }
}

/* === MOBILE PANEL LAYOUT FIX === */
/* Must come AFTER all desktop panel CSS to win the cascade */
@media (max-width: 820px) {
  .gc-game-sheet--sketch .gc-game-sheet__main-row {
    grid-template-columns: 100px minmax(0, 1fr) !important;
    grid-template-areas: "poster info" "wishlist wishlist" !important;
    min-height: 0 !important;
    gap: 8px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__poster {
    grid-area: poster !important;
    min-height: 150px !important;
    max-height: 200px !important;
    width: 100% !important;
    overflow: hidden !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover,
  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover--poster-detail,
  .gc-game-sheet--sketch .gc-game-sheet__poster .gc-cover__img {
    min-height: 150px !important;
    max-height: 200px !important;
    width: 100% !important;
    border-radius: 12px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__info-card {
    grid-area: info !important;
    min-height: 150px !important;
    padding: 10px 12px !important;
    gap: 5px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__title {
    font-size: clamp(0.92rem, 4vw, 1.1rem) !important;
    -webkit-line-clamp: 3 !important;
    white-space: normal !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__release time {
    font-size: 0.72rem !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__studio {
    font-size: 0.7rem !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__wishlist,
  .gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
    grid-area: wishlist !important;
    min-height: 0 !important;
    flex-direction: column !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__store-list {
    flex-direction: column !important;
    gap: 5px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__store-row {
    padding: 8px 10px !important;
  }

  /* Synopsis readable on mobile */
  .gc-game-sheet--sketch .gc-game-sheet__synopsis.gc-game-sheet__synopsis-card {
    max-height: none !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__synopsis p {
    font-size: 0.82rem !important;
    line-height: 1.55 !important;
  }

  /* Media cards — wider on mobile */
  .gc-game-sheet--sketch .gc-game-media__card {
    width: min(200px, 52vw) !important;
    border-radius: 10px !important;
  }

  .gc-game-sheet--sketch .gc-game-media__card--trailer {
    width: min(240px, 62vw) !important;
  }

  /* Panel scroll bottom clearance */
  .gc-game-sheet--sketch .gc-game-sheet__scroll {
    padding-bottom: max(1.5rem, calc(env(safe-area-inset-bottom, 0px) + 1rem)) !important;
  }

  /* Footer */
  .gc-game-sheet--sketch .gc-game-sheet__sketch-footer {
    padding: 8px 2px 0 !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__sketch-footer-dev .gc-entity-chip {
    font-size: 0.68rem !important;
  }
}

/* === MOBILE WISHLIST HEIGHT FIX === */
@media (max-width: 820px) {
  .gc-game-sheet--sketch .gc-game-sheet__wishlist,
  .gc-game-sheet--sketch .gc-game-sheet__wishlist-card {
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 10px 12px !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__store-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    overflow: visible !important;
  }

  .gc-game-sheet--sketch .gc-game-sheet__store-row {
    display: flex !important;
    min-height: 40px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* Main row — let wishlist row auto-size */
  .gc-game-sheet--sketch .gc-game-sheet__main-row {
    grid-template-rows: auto auto !important;
    align-items: start !important;
  }
}

/* =============================================================
   CALENDAR ENTRY ANIMATIONS — cinematic reveal on load
   Same language as the index page: scale+fade+blur+slide
   ============================================================= */

/* Keyframes */
@keyframes gc-reveal-down {
  from { opacity: 0; transform: translateY(-18px) scale(0.98); filter: blur(4px); }
  to   { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}
@keyframes gc-reveal-up {
  from { opacity: 0; transform: translateY(20px) scale(0.98); filter: blur(4px); }
  to   { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}
@keyframes gc-reveal-fade {
  from { opacity: 0; transform: scale(0.97); filter: blur(3px); }
  to   { opacity: 1; transform: scale(1); filter: blur(0); }
}
@keyframes gc-reveal-pop {
  from { opacity: 0; transform: translateY(12px) scale(0.96); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes gc-chip-pop {
  from { opacity: 0; transform: scale(0.75) translateY(8px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}

/* ── Toolbar ── */
.gc-chrome,
.gc-chrome--desktop {
  animation: gc-reveal-down 0.55s cubic-bezier(0.16, 1, 0.3, 1) 0.05s both;
}

.gc-chrome--mobile {
  animation: gc-reveal-down 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.02s both;
}

/* ── Upcoming strip ── */
.gc-upcoming-wrap--desktop,
.gc-upcoming-wrap--mobile,
.gc-upcoming--fit {
  animation: gc-reveal-up 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.12s both;
}

/* Upcoming cards — staggered */
.gc-upcoming-card:nth-child(1) { animation: gc-reveal-fade 0.45s cubic-bezier(0.16,1,0.3,1) 0.18s both; }
.gc-upcoming-card:nth-child(2) { animation: gc-reveal-fade 0.45s cubic-bezier(0.16,1,0.3,1) 0.24s both; }
.gc-upcoming-card:nth-child(3) { animation: gc-reveal-fade 0.45s cubic-bezier(0.16,1,0.3,1) 0.30s both; }
.gc-upcoming-card:nth-child(4) { animation: gc-reveal-fade 0.45s cubic-bezier(0.16,1,0.3,1) 0.36s both; }
.gc-upcoming-card:nth-child(5) { animation: gc-reveal-fade 0.45s cubic-bezier(0.16,1,0.3,1) 0.42s both; }

/* ── Calendar grid ── */
.gc-grid--month,
.gc-grid--week,
.gc-grid--month-compact {
  animation: gc-reveal-up 0.65s cubic-bezier(0.16, 1, 0.3, 1) 0.18s both;
}

/* Grid cells — subtle stagger by column */
.gc-grid--month .gc-day:nth-child(7n+1) { animation: gc-reveal-pop 0.4s ease 0.22s both; }
.gc-grid--month .gc-day:nth-child(7n+2) { animation: gc-reveal-pop 0.4s ease 0.25s both; }
.gc-grid--month .gc-day:nth-child(7n+3) { animation: gc-reveal-pop 0.4s ease 0.28s both; }
.gc-grid--month .gc-day:nth-child(7n+4) { animation: gc-reveal-pop 0.4s ease 0.31s both; }
.gc-grid--month .gc-day:nth-child(7n+5) { animation: gc-reveal-pop 0.4s ease 0.34s both; }
.gc-grid--month .gc-day:nth-child(7n+6) { animation: gc-reveal-pop 0.4s ease 0.37s both; }
.gc-grid--month .gc-day:nth-child(7n+7) { animation: gc-reveal-pop 0.4s ease 0.40s both; }

/* ── Platform chips ── */
.gc-platform-chip:nth-child(1) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.08s both; }
.gc-platform-chip:nth-child(2) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.12s both; }
.gc-platform-chip:nth-child(3) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.16s both; }
.gc-platform-chip:nth-child(4) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.20s both; }
.gc-platform-chip:nth-child(5) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.24s both; }
.gc-platform-chip:nth-child(6) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.28s both; }
.gc-platform-chip:nth-child(7) { animation: gc-chip-pop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.32s both; }

/* ── Page background radials ── */
body.category-page--games::before {
  animation: gc-reveal-fade 1.2s ease 0s both !important;
}

/* ── Body enter ── */
.cal-page {
  animation: gc-reveal-fade 0.5s ease 0s both;
}

/* ── Agenda / week view ── */
.gc-agenda__group,
.gc-week-cell {
  animation: gc-reveal-up 0.45s cubic-bezier(0.16, 1, 0.3, 1) 0.15s both;
}

/* Nav cluster */
.gc-nav-cluster {
  animation: gc-reveal-fade 0.4s ease 0.08s both;
}

/* Search field */
.gc-search-field,
.gc-toolbar__search {
  animation: gc-reveal-fade 0.4s ease 0.12s both;
}

/* Skip on reduced motion */
@media (prefers-reduced-motion: reduce) {
  .gc-chrome, .gc-chrome--desktop, .gc-chrome--mobile,
  .gc-upcoming-wrap--desktop, .gc-upcoming-wrap--mobile, .gc-upcoming--fit,
  .gc-upcoming-card,
  .gc-grid--month, .gc-grid--week, .gc-grid--month-compact,
  .gc-grid--month .gc-day,
  .gc-platform-chip,
  body.category-page--games::before,
  .cal-page,
  .gc-agenda__group, .gc-week-cell,
  .gc-nav-cluster, .gc-search-field, .gc-toolbar__search {
    animation: none !important;
  }
}

/* ── CSS containment for performance ── */
.gc-day:not(.gc-day--empty) {
  contain: layout style;
}

.gc-upcoming-card {
  contain: layout style;
}

/* Lazy paint for off-screen rows using content-visibility */
@supports (content-visibility: auto) {
  .gc-grid__body .gc-grid__week:nth-child(n+4) {
    content-visibility: auto;
    contain-intrinsic-size: 0 180px;
  }
}

/* ===============================================================
   CALENDAR DESKTOP POLISH PASS
   =============================================================== */

/* ── Page chrome & background ─────────────────────────────────── */
.gc-chrome--desktop,
.gc-chrome {
  border-radius: 20px !important;
  margin: 0.6rem !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  background: rgba(10,12,22,0.72) !important;
  backdrop-filter: blur(44px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(44px) saturate(180%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.07),
    0 8px 32px rgba(0,0,0,0.3) !important;
}

/* ── "June 2026" title ────────────────────────────────────────── */
.gc-toolbar__title,
.gc-toolbar__title--display {
  background: linear-gradient(110deg, #fff 30%, rgba(var(--v10-accent), 0.88) 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 800 !important;
  letter-spacing: -0.035em !important;
}

/* ── Search field ─────────────────────────────────────────────── */
.gc-search-field,
.gc-toolbar__search .gc-search {
  border-radius: 10px !important;
  border: 1px solid rgba(255,255,255,0.09) !important;
  background: rgba(255,255,255,0.04) !important;
  transition: all 0.25s ease !important;
}

.gc-search-field:focus-within,
.gc-toolbar__search .gc-search:focus-within {
  border-color: rgba(var(--v10-accent), 0.38) !important;
  box-shadow:
    0 0 0 3px rgba(var(--v10-accent), 0.1),
    0 0 20px rgba(var(--v10-accent), 0.08) !important;
  background: rgba(255,255,255,0.06) !important;
}

/* ── Upcoming strip — desktop ─────────────────────────────────── */
.gc-upcoming-wrap--desktop {
  margin: 0 0.5rem 0.5rem !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  background: rgba(10,12,22,0.6) !important;
  backdrop-filter: blur(32px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(32px) saturate(160%) !important;
  overflow: hidden !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06) !important;
}

/* Upcoming header "UPCOMING" label */
.gc-upcoming__head h2,
.gc-upcoming__head,
.gc-upcoming-head {
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.75) !important;
}

/* Upcoming card — desktop */
.gc-upcoming-card {
  position: relative !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  transition:
    transform 0.4s cubic-bezier(0.16,1,0.3,1),
    box-shadow 0.4s ease,
    border-color 0.3s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  .gc-upcoming-card:hover {
    transform: translateY(-3px) scale(1.02) !important;
    border-color: rgba(var(--v10-accent), 0.28) !important;
    box-shadow:
      0 12px 36px rgba(0,0,0,0.45),
      0 0 0 1px rgba(var(--v10-accent), 0.14) !important;
  }
}

/* Upcoming card date — accent color */
.gc-upcoming-card__date,
.gc-upcoming-date {
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  color: rgba(var(--v10-accent), 0.9) !important;
  text-transform: uppercase !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.5) !important;
}

/* ── Grid container ───────────────────────────────────────────── */
.gc-body,
.gc-grid--month {
  border-radius: 18px !important;
  margin: 0 0.5rem 0.5rem !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  background: rgba(10,12,22,0.5) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  overflow: hidden !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.05) !important;
}

/* ── Weekday headers ──────────────────────────────────────────── */
.gc-grid__weekdays .gc-grid__weekday,
.gc-grid__weekday {
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.42) !important;
  padding: 0.45rem 0 !important;
}

/* SAT / SUN header tint */
.gc-grid__weekday--sat { color: rgba(120,180,255,0.65) !important; }
.gc-grid__weekday--sun { color: rgba(255,110,155,0.65) !important; }

/* ── Cell improvements ────────────────────────────────────────── */
/* Cells between columns — hairline dividers */
.gc-day:not(.gc-day--empty) {
  border-right: 1px solid rgba(255,255,255,0.04) !important;
}

/* Cell hover — glow ring */
.gc-day:not(.gc-day--empty):hover {
  background: rgba(255,255,255,0.018) !important;
  z-index: 3 !important;
}

/* ── "+X RELEASES" button — premium ──────────────────────────── */
.gc-day__more,
.gc-day-preview-more {
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  padding: 0.3rem 0.55rem !important;
  border-radius: 8px !important;
  border: 1px solid rgba(var(--v10-accent), 0.2) !important;
  background: rgba(var(--v10-accent), 0.06) !important;
  color: rgba(var(--v10-accent), 0.88) !important;
  transition: all 0.2s ease !important;
}

.gc-day__more:hover,
.gc-day-preview-more:hover {
  background: rgba(var(--v10-accent), 0.12) !important;
  border-color: rgba(var(--v10-accent), 0.38) !important;
  color: rgb(var(--v10-accent)) !important;
  transform: none !important;
}

/* ── Spotlight cell ───────────────────────────────────────────── */
.gc-day-spotlight {
  border-radius: 10px !important;
  overflow: hidden !important;
}

/* Spotlight image cover — fill + subtle overlay */
.gc-day-spotlight__art .gc-cover__img {
  filter: saturate(1.1) contrast(1.02) !important;
  transition: transform 0.5s cubic-bezier(0.16,1,0.3,1), filter 0.3s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  .gc-day-spotlight:hover .gc-day-spotlight__art .gc-cover__img {
    transform: scale(1.06) !important;
    filter: saturate(1.18) contrast(1.04) brightness(1.02) !important;
  }
}

/* ── Today number ─────────────────────────────────────────────── */
.gc-day--today .gc-day__num {
  font-weight: 900 !important;
}

/* ── Agenda view ──────────────────────────────────────────────── */
.gc-agenda__day-head {
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(var(--v10-accent), 0.75) !important;
}

/* ── Day panel (day sheet) ────────────────────────────────────── */
.gc-day-sheet--v8 {
  z-index: 9999 !important;
  border-radius: 20px !important;
  background: rgba(10,12,22,0.88) !important;
  backdrop-filter: blur(44px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(44px) saturate(180%) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  box-shadow:
    0 32px 80px rgba(0,0,0,0.65),
    0 0 0 1px rgba(255,255,255,0.04) inset !important;
}

.gc-day-sheet__date {
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
}

/* ── NAV cluster / TODAY button ───────────────────────────────── */
.gc-nav-cluster {
  border-radius: 12px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.09) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.07) !important;
}

.gc-today {
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  font-size: 0.75rem !important;
}

/* ── View tabs (DAY/WEEK/MONTH) ───────────────────────────────── */
.gc-segmented__btn--active {
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}

/* ── Empty day state (no games) ───────────────────────────────── */
.gc-day--empty {
  opacity: 0.4 !important;
}

/* ── Light theme ──────────────────────────────────────────────── */
html[data-theme="light"] .gc-chrome--desktop,
html[data-theme="light"] .gc-chrome {
  background: rgba(255,255,255,0.8) !important;
  border-color: rgba(0,0,0,0.07) !important;
  box-shadow:
    inset 0 1px 0 #fff,
    0 8px 32px rgba(0,0,0,0.1) !important;
}

html[data-theme="light"] .gc-toolbar__title,
html[data-theme="light"] .gc-toolbar__title--display {
  background: linear-gradient(110deg, #0a1a40 30%, #0b67c8 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

html[data-theme="light"] .gc-upcoming-wrap--desktop {
  background: rgba(255,255,255,0.72) !important;
  border-color: rgba(0,0,0,0.07) !important;
}

html[data-theme="light"] .gc-body,
html[data-theme="light"] .gc-grid--month {
  background: rgba(255,255,255,0.65) !important;
  border-color: rgba(0,0,0,0.06) !important;
}

html[data-theme="light"] .gc-day__more,
html[data-theme="light"] .gc-day-preview-more {
  border-color: rgba(0,100,220,0.22) !important;
  background: rgba(0,100,220,0.06) !important;
  color: rgba(0,100,220,0.88) !important;
}

/* ==========================================================
   FINAL POLISH — micro-interactions, typography, spacing
   ========================================================== */

/* ── Toolbar title "June 2026" — larger, more dominant ────── */
.gc-toolbar__title {
  font-size: clamp(1.45rem, 3vw, 2rem) !important;
}

/* ── Platform chips — hover spring + active glow ──────────── */
.gc-platform-chip {
  transition:
    transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
    box-shadow 0.25s ease,
    background 0.2s ease,
    border-color 0.2s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  .gc-platform-chip:not(.gc-platform-chip--active):hover {
    transform: translateY(-2px) scale(1.06) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,0.3) !important;
  }
  .gc-platform-chip--active:hover {
    transform: scale(1.04) !important;
  }
}

.gc-platform-chip:active {
  transform: scale(0.95) !important;
  transition: transform 0.1s ease !important;
}

/* ── Game cover images — always crisp ─────────────────────── */
.gc-cover__img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

/* ── Day spotlight — pin the title at the bottom ─────────── */
.gc-day-spotlight__footer {
  padding: 0.6rem 0.55rem 0.5rem !important;
}

.gc-day-spotlight__title {
  color: rgba(255,255,255,0.97) !important;
  text-shadow:
    0 1px 3px rgba(0,0,0,0.8),
    0 0 12px rgba(0,0,0,0.4) !important;
}

/* ── Day header weekday names ─────────────────────────────── */
.gc-grid__weekday {
  background: rgba(255,255,255,0.02) !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
  padding: 0.5rem 0.4rem !important;
}

/* ── Follow button — match brand accent ───────────────────── */
.gc-follow.is-on,
.gc-follow--on {
  color: #ff6482 !important;
  border-color: rgba(255,100,130,0.4) !important;
  background: rgba(255,100,130,0.1) !important;
}

/* ── Toast notifications ──────────────────────────────────── */
.calendoor-toast,
[class*="toast"] {
  border-radius: 12px !important;
  backdrop-filter: blur(32px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(32px) saturate(180%) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
}

/* ── Overlay backdrop ─────────────────────────────────────── */
.gc-overlay-backdrop {
  transition: opacity 0.35s ease !important;
}

/* ── Day number chip style (all non-empty days) ───────────── */
.gc-day:not(.gc-day--empty):not(.gc-day--today) .gc-day__num {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" !important;
}

/* ── Empty cell — very subtle ─────────────────────────────── */
.gc-day--empty {
  background: rgba(255,255,255,0.006) !important;
  border-right: 1px solid rgba(255,255,255,0.03) !important;
}

/* ── Grid header row ──────────────────────────────────────── */
.gc-grid__weekdays {
  position: sticky !important;
  top: 0 !important;
  z-index: 8 !important;
  background: rgba(10,12,22,0.85) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}

/* ── Scrollbar in calendar ────────────────────────────────── */
.gc-app ::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

.gc-app ::-webkit-scrollbar-track {
  background: transparent;
}

.gc-app ::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.15);
  border-radius: 999px;
}

.gc-app ::-webkit-scrollbar-thumb:hover {
  background: rgba(255,255,255,0.28);
}

/* ── Page-level transitions ───────────────────────────────── */
.cal-page {
  transition: opacity 0.3s ease;
}

/* ── Day cell today — stronger ring ──────────────────────── */
.gc-day--today {
  position: relative;
}

.gc-day--today::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  border: 1px solid rgba(var(--v10-accent), 0.2);
  pointer-events: none;
  z-index: 1;
}

/* ── Segmented view tabs — better spacing ─────────────────── */
.gc-segmented {
  border-radius: 10px !important;
}

.gc-segmented__btn {
  border-radius: 8px !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
  transition: all 0.2s ease !important;
}

/* ── Nav cluster TODAY button ─────────────────────────────── */
.gc-today {
  border-radius: 8px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  font-size: 0.7rem !important;
}

.gc-nav-btn {
  font-size: 1.1rem !important;
  color: rgba(255,255,255,0.7) !important;
  transition: color 0.2s ease, transform 0.2s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  .gc-nav-btn:hover {
    color: rgba(255,255,255,0.96) !important;
    transform: scale(1.1) !important;
  }
}

/* ── "My Week" / "Agenda" — improved readability ─────────── */
.gc-agenda .gc-list-row,
.gc-week-cell {
  border-radius: 12px !important;
}

/* ── Light theme additional fixes ─────────────────────────── */
html[data-theme="light"] .gc-chrome--pro,
html[data-theme="light"] .gc-chrome {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.9),
    0 4px 20px rgba(0,0,0,0.08) !important;
}

html[data-theme="light"] .gc-day--today::before {
  border-color: rgba(0,100,220,0.2) !important;
}

html[data-theme="light"] .gc-grid__weekdays {
  background: rgba(248,250,255,0.92) !important;
}

/* ── Mobile final touches ──────────────────────────────────── */
@media (max-width: 900px) {
  .gc-app--mobile-ui .gc-toolbar__title,
  .gc-toolbar__title--sketch-month {
    letter-spacing: -0.04em !important;
  }

  /* Upcoming mobile dates — bigger */
  .gc-upcoming--fit .gc-upcoming-card__date,
  .gc-upcoming-card__date {
    font-size: 0.62rem !important;
    padding: 0.4rem 0.55rem !important;
  }
}

/* ==========================================================================
   13. MOBILE PILL POLISH — centering + round / capsule controls
   ========================================================================== */

@media (max-width: 900px) {
  /* —— Toolbar clusters (month sub-row: TODAY dead center) —— */
  .gc-app--mobile-ui .gc-toolbar__row--month-sub {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 0.35rem !important;
    width: 100% !important;
    margin-bottom: 0.32rem !important;
  }

  .gc-app--mobile-ui .gc-toolbar__cluster {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.32rem !important;
    min-width: 0 !important;
  }

  .gc-app--mobile-ui .gc-toolbar__cluster--start {
    justify-self: start !important;
    justify-content: flex-start !important;
  }

  .gc-app--mobile-ui .gc-toolbar__cluster--end {
    justify-self: end !important;
    justify-content: flex-end !important;
  }

  .gc-app--mobile-ui .gc-toolbar__row--month-sub .gc-today--month {
    grid-column: 2 !important;
    justify-self: center !important;
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 6.5rem !important;
    max-width: 11rem !important;
    margin: 0 !important;
    border-radius: 999px !important;
  }

  /* —— Glass capsules: nav, scale, platforms —— */
  .gc-app--mobile-ui .gc-nav-cluster--mobile,
  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch,
  .gc-app--mobile-ui .gc-platform-bar__track {
    border-radius: 999px !important;
    overflow: hidden !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segmented__indicator {
    border-radius: 999px !important;
  }

  .gc-app--mobile-ui .gc-segmented--mobile-scale-sketch .gc-segment {
    border-radius: 999px !important;
  }

  .gc-app--mobile-ui .gc-nav-cluster--mobile .gc-today {
    border-radius: 999px !important;
    min-height: 2.35rem !important;
    padding: 0 0.9rem !important;
  }

  /* —— All toolbar icon / action buttons: circle or pill —— */
  .gc-app--mobile-ui .gc-icon-btn,
  .gc-app--mobile-ui .gc-icon-btn--round,
  .gc-app--mobile-ui .gc-icon-btn--fav,
  .gc-app--mobile-ui .gc-icon-btn--menu,
  .gc-app--mobile-ui .gc-icon-btn--settings,
  .gc-app--mobile-ui .gc-follow-btn--release,
  .gc-app--mobile-ui .gc-layout-toggle-mobile,
  .gc-app--mobile-ui .gc-toolbar__cluster .gc-icon-btn {
    border-radius: 50% !important;
    aspect-ratio: 1 / 1 !important;
  }

  .gc-app--mobile-ui .gc-today,
  .gc-app--mobile-ui .gc-today--day-shelf,
  .gc-app--mobile-ui .gc-day-nav-btn {
    border-radius: 999px !important;
    min-height: 2.65rem !important;
    padding: 0 1rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .gc-app--mobile-ui .gc-day-nav-btn {
    width: 2.65rem !important;
    min-width: 2.65rem !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }

  .gc-app--mobile-ui .gc-platform-chip {
    border-radius: 50% !important;
  }

  /* —— Weekday headers + day cells: optical center —— */
  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__weekdays,
  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__body {
    justify-items: center !important;
    align-items: center !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-grid__head {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day--compact {
    justify-content: center !important;
    align-items: center !important;
  }

  .gc-app--mobile-ui .gc-grid--month-compact .gc-day__num--has::after {
    top: 0.14rem !important;
    right: auto !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    border-radius: 50% !important;
  }

  /* —— Month footer: two pills, left + right —— */
  .gc-app--mobile-ui .gc-body--mobile-month > .gc-month-footer,
  .gc-app--mobile-month-fit .gc-body--mobile-month > .gc-month-footer {
    display: flex !important;
    align-items: stretch !important;
    justify-content: space-between !important;
    gap: 0.42rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: calc(100% - 0.28rem) !important;
    max-width: 28rem !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
  }

  .gc-app--mobile-ui .gc-month-footer__link {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    width: calc(50% - 0.21rem) !important;
    padding-inline: 1.15rem !important;
    text-align: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* —— Upcoming: full-width grid, soft-round poster buttons —— */
  .gc-app--mobile-month-fit .gc-upcoming--fit {
    border-radius: var(--v10-radius-lg) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: calc(100% - 1rem) !important;
    max-width: 28rem !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming__head {
    text-align: center !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming__head h2 {
    display: inline-block !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming__track {
    width: 100% !important;
    justify-items: stretch !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile {
    border-radius: 16px !important;
    margin: 0 auto !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile > .gc-cover,
  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile > .gc-cover--poster-upcoming {
    border-radius: 16px !important;
  }

  .gc-app--mobile-month-fit .gc-upcoming--fit .gc-upcoming-card--mobile .gc-upcoming-card__date {
    border-radius: 0 0 16px 16px !important;
  }

  /* —— Day shelf posters —— */
  .gc-app--mobile-ui.gc-app--mobile-day .gc-mobile-day-card__poster {
    border-radius: 16px !important;
  }

  /* —— Single safe-area source on footer / scroll views (no app-level pad on month) —— */
  .gc-app--mobile-month-fit.gc-app--mobile-ui:not(.gc-app--mobile-week-fit):not(.gc-app--mobile-day-fit):not(.gc-app--mobile-agenda-fit):not(.gc-app--mobile-myweek-fit):not(.gc-app--mobile-year-fit) {
    padding-bottom: 0 !important;
  }

  .gc-app--mobile-week-fit,
  .gc-app--mobile-day-fit,
  .gc-app--mobile-agenda-fit,
  .gc-app--mobile-myweek-fit,
  .gc-app--mobile-year-fit {
    padding-bottom: var(--mobile-bar-clearance, env(safe-area-inset-bottom, 0px)) !important;
  }

  .gc-app--mobile-month-fit .gc-body--mobile-month > .gc-month-footer {
    margin-bottom: 0 !important;
    padding-bottom: max(0.5rem, env(safe-area-inset-bottom, 0px)) !important;
  }

  .gc-app--mobile-ui:not(.gc-app--mobile-month-fit) .gc-body--mobile-month > .gc-month-footer {
    margin-bottom: 0.35rem !important;
  }
}

/* =================================================================
   WISHLIST STORE ICONS — use the real platform PNG brand logos
   (replaces the old hand-drawn SVGs).
   ================================================================= */
.gc-game-sheet__store-icon--logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
  border-radius: 7px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  overflow: hidden !important;
}
.gc-game-sheet__store-icon--logo .gc-platform-mark-wrap {
  width: 18px !important;
  height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.gc-game-sheet__store-icon--logo img.gc-platform-mark,
.gc-game-sheet__store-icon--logo .gc-platform-mark--img,
.gc-game-sheet__store-icon--logo svg.gc-platform-mark {
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  object-fit: contain !important;
  filter: none !important;
}
/* Nintendo (Switch) mark is wide — let it use a bit more width */
.gc-game-sheet__store-row--nintendo .gc-game-sheet__store-icon--logo img.gc-platform-mark,
.gc-game-sheet__store-row--nintendo .gc-game-sheet__store-icon--logo .gc-platform-mark--img {
  width: 22px !important;
  max-width: 22px !important;
}

html[data-theme="light"] .gc-game-sheet__store-icon--logo {
  background: rgba(0, 0, 0, 0.05) !important;
}
