audio.play().catch(e=>{});// Silently fail if no audio
audio.play().catch(e=>{});// Silently fail if no audio
}catch(e){
// Silently fail if audio not available
}
@ -496,26 +496,18 @@ May this birthday bring joy in each moment you’ve got. </em></p>
@@ -496,26 +496,18 @@ May this birthday bring joy in each moment you’ve got. </em></p>
@ -534,19 +526,7 @@ May this birthday bring joy in each moment you’ve got. </em></p>
@@ -534,19 +526,7 @@ May this birthday bring joy in each moment you’ve got. </em></p>
<divclass="spire-nodes">
${(()=>{
constnodePositions={
'n1':{x:500,y:720},
'n2':{x:360,y:650},
'n3':{x:630,y:650},
'n4':{x:500,y:540},
'n5':{x:360,y:400},
'n6':{x:630,y:400},
'n7':{x:500,y:300},
'n8':{x:500,y:210},
'n9':{x:500,y:120},
'n10':{x:500,y:40}
};
// Use positions directly from map data
returnm.nodes.map(n=>{
constisNext=nextIds.includes(n.id);
@ -554,8 +534,8 @@ May this birthday bring joy in each moment you’ve got. </em></p>
@@ -554,8 +534,8 @@ May this birthday bring joy in each moment you’ve got. </em></p>