/* Browser-local retention controls share the site's theme tokens. */
.gdd-follow { grid-area: follow; min-width: 0; }
.gdd-follow-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.gdd-follow button, .gdd-rss, .gdd-clear-recent { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 9px 14px; border-radius: 9px; border: 1px solid var(--border-strong); background: var(--bg-card); color: var(--text); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; text-decoration: none; }
.gdd-follow button[hidden], #gdd-your-games[hidden] { display: none; }
.gdd-retention-ready .gdd-follow-button[hidden], .gdd-push-supported .gdd-push-button[hidden] { display: inline-flex; }
.gdd-follow-button[aria-pressed="true"], .gdd-push-button[aria-pressed="true"] { color: var(--brand-light); background: var(--brand-soft); }
.gdd-follow button:hover, .gdd-rss:hover, .gdd-clear-recent:hover { background: var(--bg-card-hover); border-color: var(--brand-light); }
.gdd-follow button:focus-visible, .gdd-rss:focus-visible, .gdd-clear-recent:focus-visible, .gdd-game-rail a:focus-visible { outline: 2px solid var(--brand-light); outline-offset: 3px; }
.gdd-follow [aria-disabled="true"] { cursor: wait; opacity: .65; }
.gdd-follow-status { margin: 7px 0 0; color: var(--text-2); font-size: 12px; line-height: 1.5; }
.gdd-follow-status:empty { display: none; }
.up-game-intro { grid-template-areas: "cover" "title" "follow" "latest" "freshness" "trend" "stats"; }
.gdd-today-item { list-style: none; }
.up-today, .gdd-your-games { padding: 18px; border: 1px solid var(--border-strong); border-radius: 14px; background: var(--bg-elev); min-width: 0; }
.gdd-your-games { margin: 26px 0; }
.gdd-row-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.gdd-row-heading h2 { margin: 0; font-size: 18px; letter-spacing: -.3px; }
.gdd-row-heading > a { display: inline-flex; align-items: center; min-height: 44px; color: var(--brand-light); font-size: 12px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.gdd-game-rail { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(132px, 1fr); gap: 12px; list-style: none; padding: 0 0 5px; margin: 0; overflow-x: auto; scroll-snap-type: x mandatory; }
.gdd-game-rail li { min-width: 0; scroll-snap-align: start; }
.gdd-game-rail a { color: var(--text); text-decoration: none; display: block; height: 100%; border-radius: 8px; }
.gdd-game-rail a:hover .gdd-small-game-name { color: var(--brand-light); }
.gdd-game-rail img, .gdd-game-placeholder { display: block; width: 100%; height: auto; aspect-ratio: 184/86; object-fit: cover; border-radius: 8px; background: var(--bg-card-hover); }
.gdd-game-placeholder { display: grid; place-items: center; font-size: 26px; color: var(--brand-light); }
.gdd-small-game-name { display: block; margin-top: 8px; font-size: 13px; font-weight: 750; line-height: 1.3; }
.gdd-small-patch-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--text-2); font-size: 12px; line-height: 1.45; margin-top: 5px; }
.gdd-row-note { margin: 10px 0 0; color: var(--text-3); font-size: 11px; line-height: 1.5; }
.gdd-new-badge { display: inline-block; border-radius: 5px; padding: 4px 6px; margin-top: 7px; background: var(--brand-soft); color: var(--brand-light); font-size: 10px; font-weight: 700; }
.gdd-your-games .gdd-game-rail { grid-auto-columns: 172px; }
.gdd-clear-recent { font-size: 11px; padding: 7px 10px; }
@media (min-width: 900px) {
  .up-game-intro { grid-template-areas: "cover title" "cover follow" "cover trend" "cover stats" "latest latest" "freshness freshness"; }
}
@media (max-width: 600px) {
  .up-today { padding: 14px; }
  .gdd-game-rail { grid-auto-columns: 140px; }
  .gdd-row-heading h2 { font-size: 16px; }
  .gdd-follow-actions { gap: 6px; }
  .gdd-follow button, .gdd-rss { padding-inline: 10px; font-size: 12px; }
}
