@charset "UTF-8";
:root{color-scheme:dark;--bg:#111315;--panel:#1a1d20;--line:#32363a;--text:#f3f5ed;--muted:#adb2b5;--accent:#d5fa51;font-family:Inter,"Helvetica Neue",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;color:var(--text);font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit}
.page{max-width:1600px;margin:0 auto;padding:0 48px}
.skip-link{position:absolute;left:24px;top:-100px;background:var(--accent);color:var(--bg);padding:12px 20px;z-index:10}
.skip-link:focus{top:16px}
.masthead{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:13px;font-size:1.125rem;font-weight:800;letter-spacing:.045em;line-height:1.2}
.brand-mark{height:43px;width:43px;display:grid;place-content:center;position:relative;background:var(--accent);color:var(--bg);font-size:1.65rem;font-weight:900;letter-spacing:-.11em;border-radius:3px}
.brand-mark span{position:absolute;right:6px;bottom:2px;font-size:1.125rem}
.brand-sub{display:block;color:var(--muted);font-size:.75rem;letter-spacing:.19em;font-weight:500;margin-top:3px}
.masthead-note,.eyebrow,.category,.card-number,.collection-count,.domain,.capture-date,footer>span{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
.masthead-note{font-size:.75rem;letter-spacing:.14em;color:var(--muted)}
.collection-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:45px 0 31px}
.eyebrow{margin:0 0 8px;font-size:.75rem;color:var(--accent);letter-spacing:.13em}
h1{font-size:clamp(2.6rem,4.7vw,4.25rem);letter-spacing:-.065em;line-height:1.05;margin:0;font-weight:750}
h1>span{color:var(--accent)}
.collection-count{font-size:.875rem;color:var(--muted);margin:0 0 5px;white-space:nowrap}
.collection-count strong{font-weight:500;color:var(--text)}
.collection-count>span{padding:0 13px;color:#72787e}
.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}
.game-card{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.preview{position:relative;aspect-ratio:16/10;overflow:hidden;background:#080b12;border-bottom:1px solid var(--line);display:flex;align-items:center}
.preview img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .3s ease}
.card-number{position:absolute;left:12px;top:12px;padding:3px 6px;border:1px solid #ffffff24;border-radius:3px;font-size:.75rem;line-height:1.3;background:#111315d9;color:#d7dbe0}
.unavailable{justify-content:center;text-align:center;background:#171a1d;padding:40px 20px 20px}
.unavailable-label{display:block;font-family:"SFMono-Regular",Consolas,monospace;font-size:.75rem;letter-spacing:.12em;color:#d8b87a;margin-bottom:8px}
.unavailable strong{display:block;font-size:1.375rem;letter-spacing:-.025em}
.unavailable p{font-size:.875rem;color:var(--muted);margin:6px 0 0}
.card-body{padding:19px 19px 15px;display:flex;flex:1;flex-direction:column}
.title-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}
h2{font-size:1.25rem;line-height:1.3;letter-spacing:-.025em;margin:0;font-weight:700}
.category{color:var(--muted);font-size:.75rem;letter-spacing:.03em}
.description{color:var(--muted);font-size:1rem;line-height:1.5;margin:9px 0 21px;flex:1}
.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--line)}
.domain{color:#bbc0c4;font-size:.75rem;line-height:1.4;overflow-wrap:anywhere}
.launch{color:var(--accent);display:grid;place-items:center;min-width:30px;height:30px;border:1px solid #4c5730;border-radius:50%;font-size:1.25rem;line-height:1;transition:background .18s ease,color .18s ease}
.game-card:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.game-card:focus-visible .launch{background:var(--accent);color:var(--bg)}
@media(hover:hover){.game-card:hover{border-color:#a7bd54;transform:translateY(-4px);box-shadow:0 12px 28px #0003}.game-card:hover .launch{background:var(--accent);color:var(--bg)}.game-card:hover .preview img{transform:scale(1.025)}}
footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:42px;padding:24px 0 30px;border-top:1px solid var(--line);color:var(--muted);font-size:.875rem}
footer>span{font-size:.75rem;letter-spacing:.05em}footer p{margin:0}.footer-divider{color:var(--accent);padding:0 8px}.capture-date{font-size:.75rem}
@media(max-width:1250px){.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.page{padding:0 32px}}
@media(max-width:950px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-heading{margin-top:34px}.page{padding:0 24px}footer{flex-wrap:wrap}.capture-date{margin-left:auto}}
@media(max-width:580px){.page{padding:0 18px}.masthead{min-height:85px}.masthead-note{font-size:.75rem;max-width:120px;text-align:right;line-height:1.6}.collection-heading{display:block;margin:30px 0 24px}.collection-count{margin-top:18px}.eyebrow{font-size:.75rem;letter-spacing:.06em}.game-grid{grid-template-columns:minmax(0,1fr);gap:22px}.preview{aspect-ratio:16/10}.card-body{padding:19px 20px 16px}.description{margin-bottom:18px}h2{font-size:1.375rem}.domain{font-size:.8125rem}footer{align-items:flex-start;flex-direction:column;gap:10px;margin-top:32px;padding:22px 0}.capture-date{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.game-card,.preview img,.launch{transition:none}.game-card:hover{transform:none}.game-card:hover .preview img{transform:none}}
