/* Games */
.game-grid { display: grid; gap: 16px 14px; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
.game-card { cursor: pointer; min-width: 0; }
.game-shot { position: relative; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: var(--panel-3); box-shadow: 0 6px 16px rgba(0,0,0,.22); transition: transform .15s; }
.game-card:hover .game-shot { transform: translateY(-3px); }
.game-shot img { width: 100%; height: 100%; object-fit: cover; display: block; }
.shelf-badge.game-playing { background: var(--accent); } .shelf-badge.game-want { background: #a855f7; }
.shelf-badge.game-done { background: var(--win); } .shelf-badge.game-dropped { background: var(--muted); }
.mc-badge { position: absolute; right: 6px; top: 6px; font-size: 11px; font-weight: 800; padding: 1px 6px; border-radius: 6px; color: #fff; background: #3a9a3a; }
.game-hero { aspect-ratio: 16 / 9; border-radius: var(--radius); overflow: hidden; background: var(--panel-3); }
.game-hero img { width: 100%; height: 100%; object-fit: cover; display: block; }
.game-name { margin: 12px 0 4px; font-size: 22px; line-height: 1.25; }
.game-mine { display: grid; gap: 8px; margin-top: 10px; max-width: 420px; }
.game-mine select, .game-mine textarea { padding: 8px 12px; font: inherit; resize: vertical; }
.game-shots { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; scroll-snap-type: x mandatory; }
.game-shots a { flex: none; width: 240px; max-width: 70vw; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; scroll-snap-align: start; background: var(--panel-3); }
.game-shots img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sg-shot { width: 52px; height: 30px; flex: none; border-radius: 4px; overflow: hidden; background: var(--panel-3); }
.sg-shot img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rawg-credit { margin: 18px 0 4px; text-align: center; }
@media (max-width: 520px) { .game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 10px; } }
