class AlgorithmCard extends HTMLElement { connectedCallback() { const title = this.getAttribute('title') || 'Algorithm'; const icon = this.getAttribute('icon') || 'cpu'; const color = this.getAttribute('color') || 'bg-indigo-500'; const href = this.getAttribute('href') || '#'; const content = this.innerHTML.trim(); this.attachShadow({ mode: 'open' }); this.shadowRoot.innerHTML = `

${title}

${content}

`; } } customElements.define('algorithm-card', AlgorithmCard);