diff --git a/index.html b/index.html
index acf7d30..98ba698 100644
--- a/index.html
+++ b/index.html
@@ -162,7 +162,7 @@ const SUNE=window.SUNE=new Proxy({get list(){return sunes},get id(){return su.ge
if(!sunes.length){const def=SUNE.create({name:'Default'});SUNE.setActive(def.id)}
const state={messages:[],busy:false,controller:null,currentThreadId:null,abortRequested:false,attachments:[],stream:{rid:null,bubble:null,meta:null,text:'',done:false}}
const getModelShort=m=>{const mm=m||SUNE.model||'';return mm.includes('/')?mm.split('/').pop():mm}
-const renderSuneHTML=()=>{const c=[SUNE.html,SUNE.extension_html].map(x=>(x||'').trim()).join('\n'),m=el.suneHtml;m.innerHTML='';m.classList.toggle('hidden',!c);if(!c)return;m.insertAdjacentHTML('afterbegin',c);m.querySelectorAll('script').forEach(s=>{const n=document.createElement('script');[...s.attributes].forEach(a=>n.setAttribute(a.name,a.value));n.text=s.text;s.replaceWith(n)})}
+const renderSuneHTML=()=>{const d=document.createElement('div'),m=el.suneHtml,render=c=>{m.innerHTML='';m.classList.toggle('hidden',!c.trim());if(!c.trim())return;m.insertAdjacentHTML('afterbegin',c);m.querySelectorAll('script').forEach(s=>{const n=document.createElement('script');[...s.attributes].forEach(a=>n.setAttribute(a.name,a.value));n.text=s.text;s.replaceWith(n)})};d.innerHTML=[SUNE.html,SUNE.extension_html].map(x=>(x||'').trim()).join('\n');const tags=[...d.querySelectorAll('sune[src]')];(tags.length? (render(''), Promise.all(tags.map(t=>fetch(t.src).then(r=>r.ok&&r.json()).then(data=>{const s=Array.isArray(data)?data[0]:data;t.outerHTML=s?`${s.html||''}\n${s.extension_html||''}`:''}).catch(()=>t.remove()))).then(()=>render(d.innerHTML))) : render(d.innerHTML))}
const reflectActiveSune=()=>{const a=SUNE.active;el.suneBtnTop.title=`Settings — ${a.name}`;el.suneBtnTop.innerHTML=a.avatar?``:'✺';icons();renderSuneHTML()}
const suneRow=a=>`