.ecosystem-view.svelte-1ny0ztv{padding:3rem 1.5rem}.ecosystem-header.svelte-1ny0ztv{text-align:center;margin-bottom:4rem}.page-title.svelte-1ny0ztv{color:var(--text);font-size:2.5rem}.page-desc.svelte-1ny0ztv{color:var(--text-muted);font-size:1.125rem}.constellation-grid.svelte-1ny0ztv{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem;display:grid}.eco-node.svelte-1ny0ztv{appearance:none;background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;transition:all .4s cubic-bezier(.2,.8,.2,1);display:flex}.eco-node.svelte-1ny0ztv:hover{border-color:var(--text-muted)}.node-icon.svelte-1ny0ztv{justify-content:center;align-items:center;width:60px;height:60px;display:flex}.node-icon.svelte-1ny0ztv img:where(.svelte-1ny0ztv){mix-blend-mode:multiply;max-width:100%;max-height:100%}.node-name.svelte-1ny0ztv{color:var(--text);font-family:DM Serif Display,serif;font-size:1.25rem;transition:color .4s}.eco-node.dimmed.svelte-1ny0ztv{opacity:.2;filter:grayscale();transform:scale(.95)}.eco-node.selected.svelte-1ny0ztv{border-color:var(--text);z-index:10;transform:scale(1.05);box-shadow:0 8px 24px #0000001a}.eco-node.companion.svelte-1ny0ztv{background:#4caf500d;border-color:#4caf50}.eco-node.companion.svelte-1ny0ztv .node-name:where(.svelte-1ny0ztv){color:#2e7d32}.eco-node.avoid.svelte-1ny0ztv{background:#f443360d;border-color:#f44336}.eco-node.avoid.svelte-1ny0ztv .node-name:where(.svelte-1ny0ztv){color:#c62828}
