class CustomStep extends HTMLElement { constructor() { super(); this.number = this.getAttribute('number') || '1'; this.icon = this.getAttribute('icon') || 'check'; this.title = this.getAttribute('title') || 'Step'; this.description = this.getAttribute('description') || 'Description'; this.delay = this.getAttribute('delay') || '0'; } connectedCallback() { this.attachShadow({ mode: 'open' }); this.shadowRoot.innerHTML = `

${this.title}

${this.description}

`; setTimeout(() => { if (typeof feather !== 'undefined') { feather.replace(); } }, 100); } } customElements.define('custom-step', CustomStep);