@font-face{font-family:'Exo 2';src:url('../assets/fonts/Exo2.woff2') format('woff2');font-weight:100 900;font-display:swap}:root{--bg:#05060f;--panel:#0b1224;--panel-2:#111a33;--line:rgba(103, 232, 249, 0.22);--text:#e6edf7;--dim:#94a3b8;--gold:#fbbf24;--gold-deep:#9a7b2c;--cyan:#67e8f9;--radius:14px}*{box-sizing:border-box}body,html{margin:0}body{background:var(--bg);color:var(--text);font-family:'Exo 2',system-ui,sans-serif;min-height:100vh;overflow-x:hidden}.sky{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(1200px 600px at 80% -10%,rgba(124,58,237,.28),transparent 60%),radial-gradient(900px 500px at 10% 20%,rgba(14,165,233,.18),transparent 60%),url('../assets/sprites/starfield.png') repeat,var(--bg);background-size:auto,auto,512px,auto}.top{display:flex;align-items:center;gap:20px;max-width:1280px;margin:0 auto;padding:28px 16px 12px}.logo{height:72px;width:auto;filter:drop-shadow(0 6px 18px rgba(0, 0, 0, .6))}.title{flex:1;min-width:0}.title h1{margin:0;font-size:34px;letter-spacing:.04em;color:var(--gold);text-transform:uppercase}.title p{margin:4px 0 0;color:var(--dim);font-size:16px}.filters{display:flex;flex-wrap:wrap;gap:8px;max-width:1280px;margin:0 auto;padding:8px 16px 18px}.chip{font:inherit;font-size:14px;font-weight:600;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:8px 14px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.chip:hover{border-color:var(--cyan)}a.chip{text-decoration:none;white-space:nowrap}.chip.on{background:linear-gradient(180deg,#3b2c0a,#241a05);border-color:var(--gold);color:var(--gold)}.card:focus-visible,.chip:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-width:1280px;margin:0 auto;padding:0 16px 40px}.card{display:flex;flex-direction:column;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:var(--radius);color:inherit;text-decoration:none;overflow:hidden;transition:transform .18s ease,border-color .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 10px 30px rgba(251,191,36,.12)}.shot{position:relative;aspect-ratio:16/9;background:#000}.shot img{width:100%;height:100%;object-fit:cover;display:block}.genre{position:absolute;left:10px;top:10px;background:rgba(5,6,15,.78);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:700;color:var(--cyan);padding:3px 10px}.body{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;flex:1}.body h2{margin:0;font-size:20px}.emoji{font-size:22px}.blurb{margin:0;color:var(--dim);font-size:14px;line-height:1.4;flex:1}.meta{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--dim)}.where{white-space:nowrap}.row{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.best{font-size:13px;color:var(--dim)}.best.has{color:var(--gold);font-weight:700}.play{background:linear-gradient(180deg,#f6c544,#c9921a);color:#1a1205;font-weight:800;font-size:14px;border-radius:10px;padding:7px 14px}.empty{grid-column:1/-1;color:var(--dim);text-align:center;padding:40px 0}.foot{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;color:var(--dim);font-size:13px;padding:10px 16px 30px}.foot img{height:28px;width:auto;opacity:.85}@media (max-width:600px){.top{flex-wrap:wrap;padding-top:18px;gap:12px}.logo{height:52px}.title h1{font-size:26px}.grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.card,.chip{transition:none}.card:hover{transform:none}}