:root{color-scheme:dark;--paper:#111213;--ink:#d8e6f2;--muted:#9aa3ac;--dim:#757d84;--accent:#ed6845;--line:#2b2e30}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;background:radial-gradient(ellipse at 14% 0%,#272a2c66,transparent 48%),var(--paper);-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button,a{min-height:44px}.collection{max-width:1380px;padding:32px 6% 0;margin:auto}.collection-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:25px;border-bottom:1px solid var(--line)}.wordmark{font-size:13px;font-weight:650;letter-spacing:1.5px;display:flex;align-items:center;gap:12px}.brand-dot{color:var(--accent);margin-left:-11px}.brand-mark{width:27px;height:27px;border:1px solid #767d84;border-radius:50%;display:grid;place-items:center}.brand-mark i{width:6px;height:6px;border-radius:50%;background:var(--accent)}.edition,.eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--muted);font-weight:450}.intro{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;padding:63px 0 57px}.intro .eyebrow{margin:0 0 21px;color:#b5c1cb}.intro h1{font-size:clamp(48px,6.8vw,88px);line-height:1.03;letter-spacing:-4px;font-weight:450;margin:0}.intro h1 span{color:#929ca4}.intro-copy{font-size:14px;line-height:1.8;color:var(--muted);margin:0 5px 6px 0;max-width:240px}.collection-bar{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0 15px;font-size:10px;letter-spacing:1.4px}.game-count{color:var(--dim);margin-left:8px}#preview-toggle{border:0;background:transparent;color:var(--muted);font-size:11px;display:flex;align-items:center;gap:8px;padding:0 0 0 12px;white-space:nowrap}.toggle-symbol{font-size:14px}.game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px}.game-choice{display:block;min-width:0;background:#161819;border:1px solid #2a2d30;transition:border-color .25s,background .25s;overflow:hidden}.game-choice:hover,.game-choice:focus-visible{border-color:#686e74;background:#191b1c}.preview{aspect-ratio:2/1;position:relative;background:radial-gradient(ellipse at 50% 20%,#414548,#1a1c1d 90%);overflow:hidden;border-bottom:1px solid #33373a}.preview canvas{display:block;width:100%;height:100%}.scene-label,.scene-note{position:absolute;z-index:1;font-size:9px;letter-spacing:1.5px;color:#b8c4cfb3;pointer-events:none}.scene-label{top:18px;left:20px}.scene-note{right:19px;bottom:15px;font-size:8px;color:#c0ccd88c}.card-copy{padding:23px 25px 21px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-heading h2{font-size:31px;letter-spacing:-1px;font-weight:450;margin:0;line-height:1.1}.card-arrow{font-size:26px;color:var(--accent);transition:transform .25s}.game-choice:hover .card-arrow{transform:translate(3px,-3px)}.card-copy p{font-size:13px;color:var(--muted);line-height:1.6;margin:12px 0 24px}.card-meta{border-top:1px solid #2a2d30;padding-top:14px;display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:1.2px;color:#9099a1}.offline-panel{margin-top:57px;border-block:1px solid var(--line);padding:40px 0;display:flex;align-items:center;gap:25px}.offline-symbol{border:1px solid #414549;width:53px;height:53px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;color:var(--muted);font-size:25px}.offline-copy{flex:1}.offline-copy h2{font-size:24px;line-height:1.2;letter-spacing:-.5px;font-weight:450;margin:12px 0}.offline-copy h2 br{display:none}.offline-copy p{font-size:12px;color:var(--muted);line-height:1.5;margin:0;max-width:460px}.download-button{border:1px solid #666c72;background:transparent;color:var(--ink);min-height:50px;padding:12px 23px;font-size:12px;border-radius:2px;white-space:nowrap}.download-button:hover{background:#282b2d}.collection-bottom{display:flex;justify-content:space-between;gap:18px;padding:24px 0 35px;font-size:9px;letter-spacing:1.2px;color:#858e96}
@media(min-width:1450px){.collection{padding-inline:70px}}
@media(max-width:700px){.collection{padding:20px 6% 0;padding-top:max(20px,env(safe-area-inset-top))}.collection-top{padding-bottom:15px}.wordmark{font-size:11px;letter-spacing:.8px;gap:9px}.brand-dot{margin-left:-8px}.brand-mark{width:23px;height:23px}.edition{font-size:8px;max-width:83px;text-align:right;line-height:1.5;letter-spacing:1px}.intro{padding:35px 0 32px;display:block}.intro .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:18px}.intro h1{font-size:clamp(45px,11.5vw,70px);letter-spacing:-2.5px}.intro-copy{font-size:12px;line-height:1.65;margin:20px 0 0;max-width:100%}.intro-copy br{display:none}.collection-bar{font-size:8px;letter-spacing:.8px;padding-bottom:9px}.game-count{margin-left:4px}#preview-toggle{font-size:10px;gap:6px}.game-list{grid-template-columns:1fr;gap:22px}.card-copy{padding:20px}.card-heading h2{font-size:28px}.card-copy p{margin:10px 0 18px;font-size:12px}.card-meta{font-size:8px;letter-spacing:1px}.scene-label{top:14px;left:15px;font-size:8px}.scene-note{font-size:7px;right:15px;bottom:12px}.offline-panel{margin-top:35px;gap:16px;padding:28px 0;flex-wrap:wrap;align-items:flex-start}.offline-symbol{width:38px;height:38px;font-size:21px}.offline-copy{flex-basis:calc(100% - 60px)}.offline-copy .eyebrow{font-size:8px;letter-spacing:1px}.offline-copy h2{font-size:22px;margin:9px 0 12px}.offline-copy h2 br{display:block}.download-button{width:100%;margin-top:7px}.collection-bottom{font-size:8px;line-height:1.7;padding-bottom:max(28px,env(safe-area-inset-bottom))}.collection-bottom span:last-child{text-align:right}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.category-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;flex-wrap:wrap}.category-filters{display:flex;gap:8px;flex-wrap:wrap}.category-filters button{border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--muted);padding:9px 14px;font-size:14px;min-height:44px}.category-filters button span{margin-left:8px;color:var(--dim);font-size:12px}.category-filters button:hover{border-color:#757c83;color:var(--ink)}.category-filters button[aria-pressed=true]{background:#2b2d30;border-color:#757c83;color:var(--ink)}.category-filters button[aria-pressed=true] span{color:#ef9575}#category-count{font-size:12px;color:var(--muted);white-space:nowrap}.game-choice[hidden]{display:none}
@media(max-width:700px){.category-bar{gap:10px;margin-bottom:18px}.category-filters{gap:6px}.category-filters button{padding:8px 11px}.category-filters button span{margin-left:6px}#category-count{width:100%}}

.site-links{display:flex;gap:24px;flex-wrap:wrap;padding:20px 0}.site-links a{color:#b9c3ca;font-size:14px;text-decoration:none}.site-links a:hover{color:#ed875e}.collection-bottom{flex-wrap:wrap}

/* A little pixel atmosphere, within the existing introduction's footprint. */
.intro{position:relative;isolation:isolate;overflow:hidden}
.intro-scene{position:absolute;z-index:-1;inset:0 -4% 0 16%;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 32%);opacity:.78}
.intro-scene img{display:block;width:100%;height:100%;object-fit:cover;object-position:70% 50%;image-rendering:pixelated;animation:arcade-lamp 7s steps(7,end) infinite;animation-play-state:paused}
.intro-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--paper),transparent 24%,transparent 80%,var(--paper))}
.intro h1,.intro .eyebrow,.intro-copy{position:relative;text-shadow:0 2px 18px #0b0d0f}
.intro-copy{color:#c2cbd2}
body[data-previews="playing"] .intro-scene[data-visible="true"]:not([data-suspended="true"]) img{animation-play-state:running}
@keyframes arcade-lamp{0%,100%{filter:brightness(.9)}45%{filter:brightness(1.04)}65%{filter:brightness(.95)}}
@media(max-width:700px){.intro-scene{inset:0 -7% 0 2%;opacity:.5;mask-image:linear-gradient(90deg,transparent,#000 50%)}.intro-scene img{object-position:70% 50%}.intro-copy{max-width:270px}}
@media(prefers-reduced-motion:reduce){.intro-scene img{animation:none!important;filter:none}}
