* { box-sizing: border-box; }
html, body { margin: 0; background: #0b0b10; color: #f3ead2; font: 16px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-text-size-adjust: 100%; }
body { padding: calc(16px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left)); }
header { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
header img { border-radius: 10px; }
h1 { margin: 0; font-size: 22px; color: #e8c46a; }
#status { color: #b9ae92; }
#status.error { color: #ff8a7a; }
#games { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(220px, 42vw), 1fr)); gap: 14px; }
#games a { display: flex; flex-direction: column; height: 100%; border-radius: 14px; overflow: hidden; background: #1a1a24; color: inherit; text-decoration: none; border: 1px solid #2c2c3a; -webkit-tap-highlight-color: transparent; }
#games a:active { transform: scale(0.98); }
#games .art { aspect-ratio: 290 / 218; display: flex; align-items: center; justify-content: center; font-size: 22px; font-weight: 700; color: #e8c46a; }
#games .art img { width: 100%; height: 100%; object-fit: cover; display: block; }
#games .info { padding: 10px 12px; }
#games .title { font-weight: 600; }
#games .meta { font-size: 12px; color: #8f8770; }
