:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #0a0a0a;--surface: #141414;--border: rgba(255, 255, 255, .08);--text: #fafafa;--text-muted: rgba(255, 255, 255, .55);--accent: #6366f1;--accent-glow: rgba(99, 102, 241, .15);--green: #22c55e;--radius: .75rem}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:var(--text)}.app{max-width:72rem;margin:0 auto;padding:2rem 1.5rem 4rem}.hero{text-align:center;padding:3rem 0 2rem}.hero-badge{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);border:1px solid rgba(99,102,241,.3);background:var(--accent-glow);padding:.3rem .75rem;border-radius:2rem;margin-bottom:1rem}.hero h1{font-size:clamp(1.8rem,5vw,2.8rem);font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,#fafafa 30%,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.75rem}.hero-sub{color:var(--text-muted);max-width:32rem;margin:0 auto;font-size:1rem}.filters{display:flex;flex-direction:column;gap:1.25rem;margin:2rem 0 1.5rem;padding:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.filter-group label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.5rem}.pill-row{display:flex;flex-wrap:wrap;gap:.4rem}.pill{font-family:inherit;font-size:.8rem;padding:.35rem .85rem;border-radius:2rem;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s ease;white-space:nowrap}.pill:hover{border-color:#fff3;color:var(--text)}.pill-active{background:var(--accent);border-color:var(--accent);color:#fff}.results-count{font-size:.85rem;color:var(--text-muted);margin-bottom:1.25rem}.results-count strong{color:var(--text)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1rem}.idea-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.75rem}.idea-card:hover{border-color:#ffffff26;transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.idea-card.expanded{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 8px 30px #6366f11a}.card-header{display:flex;align-items:center;gap:.75rem}.card-icon{font-size:1.5rem;width:2.5rem;height:2.5rem;display:grid;place-items:center;background:#ffffff0a;border-radius:.5rem;flex-shrink:0}.card-header h3{font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.card-cat{font-size:.72rem;color:var(--accent);font-weight:500}.card-desc{font-size:.88rem;color:var(--text-muted);line-height:1.55}.card-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.meta-item{display:flex;flex-direction:column;gap:.15rem}.meta-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.meta-value{font-size:.85rem;font-weight:600}.meta-value.earning{color:var(--green)}.meta-value.difficulty{font-weight:700}.card-pros{padding-top:.75rem;border-top:1px solid var(--border);animation:fadeIn .2s ease}.card-pros h4{font-size:.8rem;font-weight:600;color:var(--accent);margin-bottom:.4rem}.card-pros ul{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem}.card-pros li{font-size:.78rem;background:#6366f11a;border:1px solid rgba(99,102,241,.2);color:#fffc;padding:.2rem .6rem;border-radius:1rem}.card-hint{font-size:.68rem;color:#ffffff40;text-align:center}.empty{text-align:center;padding:4rem 2rem;color:var(--text-muted)}.footer{text-align:center;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:.8rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.app{padding:1rem}.grid{grid-template-columns:1fr}.card-meta{grid-template-columns:1fr 1fr}}
