:root{font-family:Space Grotesk,Segoe UI,system-ui,-apple-system,sans-serif;color:#0c0c0d;background:radial-gradient(circle at 10% 20%,#eef2ff 0,transparent 35%),radial-gradient(circle at 80% 0%,#fdf4ff 0,transparent 30%),radial-gradient(circle at 60% 70%,#ecfeff 0,transparent 28%),#f8fafc;min-height:100vh}*{box-sizing:border-box}body{margin:0}.page{max-width:1200px;margin:0 auto;padding:24px 20px 48px}.hero{background:#0f172a;color:#e2e8f0;border-radius:16px;padding:24px;box-shadow:0 16px 40px #0f172a59}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:12px;opacity:.7;margin:0 0 4px}.hero h1{margin:0;font-size:32px}.subhead{margin:8px 0 16px;color:#cbd5e1}.controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.controls label{display:inline-flex;align-items:center;gap:8px;font-weight:600}.controls input{width:80px;padding:6px 8px;border-radius:8px;border:1px solid #94a3b8;background:#0b1224;color:#e2e8f0}.controls button{background:linear-gradient(120deg,#22d3ee,#6366f1);color:#0b1224;border:none;border-radius:10px;padding:8px 14px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #6366f173}.controls button:disabled{opacity:.6;cursor:wait}.error{background:#fee2e2;color:#7f1d1d;padding:10px;border-radius:10px;margin-top:8px}.grid{display:grid;gap:16px;margin-top:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.card{background:#fff;border-radius:14px;box-shadow:0 10px 30px #0f172a1f;overflow:hidden;display:flex;flex-direction:column}.card img{width:100%;height:200px;object-fit:cover;background:#e2e8f0}.placeholder{height:200px;display:grid;place-items:center;color:#94a3b8;background:#e2e8f0}.meta{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px}.meta-row{display:flex;justify-content:space-between;gap:12px;font-size:14px}.label{color:#475569;font-weight:600}.link{margin-top:6px;color:#4338ca;font-weight:700;text-decoration:none}.link:hover{text-decoration:underline}.empty{grid-column:1 / -1;text-align:center;color:#475569;padding:24px;background:#e2e8f0;border-radius:12px}
