document.write es propio del DOM del HTML, no deberías utilizarlo dentro de un SVG. Aún en el DOM del HTML y por supuesto en el SVG se recomienda el uso de instrucciones más específicas, por ejemplo esto si debería funcionar:
<svg width="200" height="100" style="border:solid">
@import url("https://fonts.googleapis.com/css2?family=Acme")
var nombre = prompt('Escribe tu nombre');
var estilos = "font-size:30;font-family:Acme;fill:#ff00ff;stroke:#000;stroke-width:1;"
var txt = document.getElementById("txt")
txt.textContent = nombre;
txt.setAttribute("style", estilos);
</svg>
Otra cosa que estas haciendo mal es con los textos y las comillas, no puedes poner saltos de línea de esa manera a no ser que uses Template Strings (
`texto` ):
var nombre = prompt(`Escribe tu nombre`);
var estilos = `font-size:30;
font-family:Acme;
fill:#ff00ff;
stroke:#000;
stroke-width:1;`
var txt = document.getElementById("txt");
txt.textContent = nombre;
txt.setAttribute("style", estilos);
Tampoco puedes poner otras comillas dentro de comillas porque causa ambigüedad (esto está mal):
var texto = "Hola soy "nuevo" aqui";
O escapas las comillas internas:
var texto = "Hola soy \"nuevo\" aqui";
O te ayudas de las comillas simples:
var texto = "Hola soy 'nuevo' aqui";
var texto = 'Hola soy "nuevo" aqui';