:root{--bg:#14121a;--fg:#ece8f2;--mute:#9a93a8;--card:#201c2b;--line:#352f45;--acc:#ffb347}
@media (prefers-color-scheme:light){:root{--bg:#f6f3fa;--fg:#1d1926;--mute:#625a73;--card:#fff;--line:#d9d2e6;--acc:#a14a00}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 system-ui,sans-serif}
header,main,footer{max-width:60rem;margin:0 auto;padding:1rem 16px}
h1{margin:1rem 0 .25rem;font-size:2rem}
header p,footer{color:var(--mute)}
a{color:var(--acc)}
.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:12px}
.grid li{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px 14px}
.grid h2{margin:0;font-size:1.1rem}
.year{color:var(--mute);font-size:.85rem}
.blurb{margin:.4rem 0 0}
.btns{display:flex;gap:8px;margin-top:.6rem;flex-wrap:wrap}
.btns a{border:1px solid var(--acc);border-radius:6px;padding:2px 10px;text-decoration:none}
.btns a.play{background:var(--acc);color:var(--bg)}
.controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:.6rem;color:var(--mute)}
.controls input,.controls select,.controls button{background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font:inherit}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:1rem}
.chips button,.tags button{background:none;color:var(--mute);border:1px solid var(--line);border-radius:999px;padding:1px 10px;font:inherit;font-size:.8rem;cursor:pointer}
.chips button[aria-pressed=true]{background:var(--acc);color:var(--bg);border-color:var(--acc)}
.tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:.5rem}
.grid h2{display:flex;justify-content:space-between;gap:8px}
.star{background:none;border:0;color:var(--acc);font-size:1.3rem;line-height:1;cursor:pointer;padding:0}
.pic{margin:-12px -14px 10px;aspect-ratio:4/3;overflow:hidden;border-radius:8px 8px 0 0;background:#000}
.pic img{width:100%;height:100%;object-fit:cover;display:block;image-rendering:auto}
.pic.noimg{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;color:var(--mute);background:var(--line)}
