:root{
  --bg:#06101d;
  --panel:rgba(11,24,40,.84);
  --panel-2:rgba(16,34,55,.72);
  --text:#f5f8fc;
  --muted:#9fb0c4;
  --line:rgba(255,255,255,.10);
  --accent:#69e8ff;
  --accent-2:#8b7cff;
  --success:#63e6be;
  --shadow:0 24px 70px rgba(0,0,0,.34);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  background:
    radial-gradient(circle at 12% 10%,rgba(105,232,255,.13),transparent 28%),
    radial-gradient(circle at 88% 8%,rgba(139,124,255,.15),transparent 30%),
    linear-gradient(145deg,#050c16 0%,#081523 52%,#07101d 100%);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
button,select{font:inherit}
button{cursor:pointer}
.bg-orb{position:fixed;width:320px;height:320px;border-radius:50%;filter:blur(80px);opacity:.15;pointer-events:none;z-index:-1}
.orb-a{background:#38d9ff;left:-120px;top:220px}
.orb-b{background:#8b5cf6;right:-130px;bottom:80px}
.topbar{
  width:min(1120px,calc(100% - 32px));
  margin:0 auto;
  padding:24px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.12em;font-size:.9rem}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--accent),#fff);color:#06101d;font-size:12px;box-shadow:0 8px 24px rgba(105,232,255,.18)}
.version{font-size:.75rem;color:var(--muted);border:1px solid var(--line);padding:6px 10px;border-radius:999px}
.container{width:min(920px,calc(100% - 32px));margin:0 auto 50px}
.hero{padding:58px 0 30px;text-align:center}
.eyebrow,.section-kicker{font-size:.72rem;letter-spacing:.16em;font-weight:800;color:var(--accent)}
.hero h1{font-size:clamp(2.2rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.055em;margin:14px 0 18px}
.hero h1 span{background:linear-gradient(90deg,var(--accent),#b6a8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:650px;margin:auto;color:var(--muted);font-size:1.05rem;line-height:1.65}
.panel,.results{margin-top:22px;border:1px solid var(--line);background:var(--panel);backdrop-filter:blur(18px);box-shadow:var(--shadow);border-radius:var(--radius);padding:24px}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.section-head.compact{margin-bottom:16px}
h2{margin:6px 0 0;font-size:1.35rem;letter-spacing:-.025em}
.filters{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.field{display:flex;flex-direction:column;gap:8px}
.field span{font-size:.8rem;color:var(--muted);font-weight:700}
select{
  width:100%;border:1px solid var(--line);background:var(--panel-2);color:var(--text);
  border-radius:14px;padding:13px 14px;outline:none;appearance:auto;
}
select:focus{border-color:rgba(105,232,255,.6);box-shadow:0 0 0 3px rgba(105,232,255,.08)}
.chips-wrap{margin:18px 0}
.chips-title{display:block;font-size:.8rem;color:var(--muted);font-weight:700;margin-bottom:9px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{
  border:1px solid var(--line);background:rgba(255,255,255,.035);color:#cbd7e5;
  border-radius:999px;padding:8px 12px;font-size:.82rem;transition:.18s ease;
}
.chip:hover,.chip.active{border-color:rgba(105,232,255,.5);background:rgba(105,232,255,.10);color:#fff}
.button{
  border:0;border-radius:14px;padding:12px 16px;font-weight:850;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease
}
.button:hover{transform:translateY(-1px)}
.button:disabled{opacity:.6;cursor:not-allowed;transform:none}
.button.primary{width:100%;background:linear-gradient(100deg,var(--accent),#a8a0ff);color:#06101d;box-shadow:0 14px 32px rgba(105,232,255,.15)}
.button.ghost{background:rgba(255,255,255,.045);border:1px solid var(--line);color:#dce7f4}
.button.small{padding:8px 11px;font-size:.78rem}
.status{min-height:20px;text-align:center;color:var(--muted);font-size:.82rem;margin:12px 0 0}
.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.card{
  min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;
  background:rgba(255,255,255,.035);transition:.2s ease;
}
.card:hover{transform:translateY(-3px);border-color:rgba(105,232,255,.28)}
.poster{aspect-ratio:16/9;background:linear-gradient(135deg,#10243b,#172e4c);display:grid;place-items:center;position:relative;overflow:hidden}
.poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.58))}
.poster-emoji{font-size:3.4rem;filter:drop-shadow(0 8px 20px rgba(0,0,0,.4))}
.badge{position:absolute;z-index:2;top:10px;left:10px;padding:5px 8px;border-radius:999px;background:rgba(0,0,0,.52);font-size:.68rem;font-weight:800}
.card-body{padding:14px}
.card h3{margin:0 0 6px;font-size:1rem}
.card-meta{font-size:.74rem;color:var(--muted);line-height:1.5}
.card p{margin:9px 0 0;font-size:.78rem;line-height:1.55;color:#c5d1df}
.score{display:inline-flex;margin-top:11px;font-size:.72rem;color:var(--success);font-weight:800}
.empty{
  border:1px dashed var(--line);border-radius:16px;padding:28px;text-align:center;color:var(--muted);
  grid-column:1/-1
}
.footer{width:min(920px,calc(100% - 32px));margin:0 auto 28px;display:flex;justify-content:space-between;gap:15px;color:#71849a;font-size:.72rem}
@media(max-width:700px){
  .hero{padding-top:35px}
  .panel,.results{padding:17px}
  .filters,.collection-grid{grid-template-columns:1fr}
  .section-head{align-items:center}
  .footer{flex-direction:column}
}
@media(min-width:701px) and (max-width:840px){.collection-grid{grid-template-columns:repeat(2,1fr)}}
